Skip to content

Instantly share code, notes, and snippets.

View stropdale's full-sized avatar

Richard Stockdale stropdale

View GitHub Profile
@stropdale
stropdale / ReverseDnsLookup.swift
Created January 23, 2020 11:07
Swift Reverse DNS Lookup
import Foundation
func reverseDNS(ip: String) -> String {
var results: UnsafeMutablePointer<addrinfo>? = nil
defer {
if let results = results {
freeaddrinfo(results)
@stropdale
stropdale / dnsLookup.java
Created July 29, 2019 15:50
DNS IP Address Lookup from Host name in Java
// Needs to be run on async otherwise you will get a crash.
// Make sure you have the internet permission added to the app manifest if this is going in an Anrdoid app...
<uses-permission android:name="android.permission.INTERNET" />
public class DnsLookup extends AsyncTask<ArrayList<String>, Integer, ArrayList<HostIpDetails>> {
private static String TAG = "DnsLookup";
public interface DnsLookUpCompletionListener {
@stropdale
stropdale / dnsLookup.swift
Created July 29, 2019 15:28
DNS IP Address Lookup from Host name in Swift
import UIKit
// You many want to run this in the background
func getIPs(dnsName: String) -> String? {
let host = CFHostCreateWithName(nil, dnsName as CFString).takeRetainedValue()
CFHostStartInfoResolution(host, .addresses, nil)
var success: DarwinBoolean = false
if let addresses = CFHostGetAddressing(host, &success)?.takeUnretainedValue() as NSArray? {
for case let theAddress as NSData in addresses {
var hostname = [CChar](repeating: 0, count: Int(NI_MAXHOST))