Skip to content

Instantly share code, notes, and snippets.

@rxw1
Last active August 29, 2015 14:17
Show Gist options
  • Save rxw1/76115cb3e9a1c8e22c0e to your computer and use it in GitHub Desktop.
Save rxw1/76115cb3e9a1c8e22c0e to your computer and use it in GitHub Desktop.
OS X Yosemite 10.10.x mDNSResponder vs. discoveryd Makefile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.apple.mDNSResponder</string>
<key>OnDemand</key>
<false/>
<key>InitGroups</key>
<false/>
<key>UserName</key>
<string>_mdnsresponder</string>
<key>GroupName</key>
<string>_mdnsresponder</string>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/mDNSResponder</string>
</array>
<key>MachServices</key>
<dict>
<key>com.apple.mDNSResponder</key>
<true/>
<key>com.apple.mDNSResponder.dnsproxy</key>
<true/>
</dict>
<key>Sockets</key>
<dict>
<key>Listeners</key>
<dict>
<key>SockFamily</key>
<string>Unix</string>
<key>SockPathName</key>
<string>/var/run/mDNSResponder</string>
<key>SockPathMode</key>
<integer>438</integer>
</dict>
</dict>
<key>EnableTransactions</key>
<true/>
<key>BeginTransactionAtShutdown</key>
<true/>
<key>POSIXSpawnType</key>
<string>Interactive</string>
</dict>
</plist>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.apple.mDNSResponderHelper</string>
<key>OnDemand</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/mDNSResponderHelper</string>
</array>
<key>MachServices</key>
<dict>
<key>com.apple.mDNSResponderHelper</key>
<true/>
</dict>
<key>EnableTransactions</key>
<true/>
<key>BeginTransactionAtShutdown</key>
<true/>
<key>POSIXSpawnType</key>
<string>Interactive</string>
</dict>
</plist>
LAUNCH_DAEMONS = /System/Library/LaunchDaemons
MDNSRESPONDER = com.apple.mDNSResponder.plist
MDNSRESPONDER_HELPER = com.apple.mDNSResponderHelper.plist
DISCOVERYD = com.apple.discoveryd.plist
DISCOVERYD_HELPER = com.apple.discoveryd_helper.plist
install: copy-files unload-discoveryd load-mDNSResponder
uninstall: unload-mDNSResponder load-discoveryd remove-files
clear-caches: clear-mdns-cache clear-udns-cache
reload-discoveryd: unload-discoveryd load-discoveryd
reload-mDNSResponder: unload-mDNSResponder load-mDNSResponder
copy-files:
cp ./mDNSResponder /usr/sbin
cp ./mDNSResponderHelper /usr/sbin
cp ./$(MDNSRESPONDER) $(LAUNCH_DAEMONS)
cp ./$(MDNSRESPONDER_HELPER) $(LAUNCH_DAEMONS)
remove-files:
rm -rf /usr/sbin/mDNSResponder
rm -rf /usr/sbin/mDNSResponderHelper
rm -rf $(LAUNCH_DAEMONS)/$(MDNSRESPONDER)
rm -rf $(LAUNCH_DAEMONS)/$(MDNSRESPONDER_HELPER)
load-discoveryd:
launchctl load -w $(LAUNCH_DAEMONS)/$(DISCOVERYD)
launchctl load -w $(LAUNCH_DAEMONS)/$(DISCOVERYD_HELPER)
unload-discoveryd:
launchctl unload -w $(LAUNCH_DAEMONS)/$(DISCOVERYD)
launchctl unload -w $(LAUNCH_DAEMONS)/$(DISCOVERYD_HELPER)
load-mDNSResponder:
launchctl load -w $(LAUNCH_DAEMONS)/$(MDNSRESPONDER)
launchctl load -w $(LAUNCH_DAEMONS)/$(MDNSRESPONDER_HELPER)
unload-mDNSResponder:
launchctl unload -w $(LAUNCH_DAEMONS)/$(MDNSRESPONDER)
launchctl unload -w $(LAUNCH_DAEMONS)/$(MDNSRESPONDER_HELPER)
clear-mdns-cache:
discoveryutil mdnsflushcache
clear-udns-cache:
discoveryutil udnsflushcaches
#plist-fix:
# sudo sed -i .orig '/ProgramArguments/,/<\/array>/ { s/\(<string>-launchd<\/string>\)/\1\ <string>-AlwaysAppendSearchDomains<\/string>/ }' /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment