sampled.plist   [plain text]


<?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>
	<!-- Labels are used to uniquely identify jobs when talking to launchd -->
	<key>Label</key>
	<string>com.example.sampled</string>
	<!-- This array of strings maps one-to-one with your main()'s argv -->
	<key>ProgramArguments</key>
	<array>
		<!-- This assumes sampled is in launchd's PATH -->
		<!-- "launchctl getenv PATH" to check the PATH -->
		<string>sampled</string>
	</array>
	<key>MachServices</key>
	<dict>
		<!-- This key maps to what you pass to bootstrap_look_up() -->
		<!-- Always set the value to true. -->
		<key>com.apple.sampled.something</key>
		<true/>
	</dict>
	<key>Sockets</key>
	<dict>
		<!-- This key is completely up to you. -->
		<!-- Use it to differentiate protocols if your code supports more than one. -->
		<key>SampleListeners</key>
		<dict>
			<!-- This dictionary revolves around getaddrinfo(3) -->
			<!-- Please read up on that API, then look at launchd.plist(5). -->
			<!-- Please also make sure your code can deal with more than one FD being allocated. -->
			<key>SockServiceName</key>
			<string>12345</string>
		</dict>
	</dict>
	<!-- This launchd that we will "check in" -->
	<!-- Checking in with launchd is how we get our file descriptors. -->
	<key>ServiceIPC</key>
	<true/>
</dict>
</plist>