1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE plist PUBLIC
"-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
5 <!-- Labels are used to uniquely identify jobs when talking to launchd -->
7 <string>com.example.sampled
</string>
8 <!-- This array of strings maps one-to-one with your main()'s argv -->
9 <key>ProgramArguments
</key>
11 <!-- This assumes sampled is in launchd's PATH -->
12 <!-- "launchctl getenv PATH" to check the PATH -->
13 <string>sampled
</string>
15 <key>MachServices
</key>
17 <!-- This key maps to what you pass to bootstrap_look_up() -->
18 <!-- Always set the value to true. -->
19 <key>com.apple.sampled.something
</key>
24 <!-- This key is completely up to you. -->
25 <!-- Use it to differentiate protocols if your code supports more than one. -->
26 <key>SampleListeners
</key>
28 <!-- This dictionary revolves around getaddrinfo(3) -->
29 <!-- Please read up on that API, then look at launchd.plist(5). -->
30 <!-- Please also make sure your code can deal with more than one FD being allocated. -->
31 <key>SockServiceName
</key>
32 <string>12345</string>
35 <!-- This launchd that we will "check in" -->
36 <!-- Checking in with launchd is how we get our file descriptors. -->