[launchd-changes] [22852] trunk/launchd/src/launchctl.c

source_changes at macosforge.org source_changes at macosforge.org
Wed Sep 13 10:08:23 PDT 2006


Revision: 22852
Author:   zarzycki at apple.com
Date:     2006-09-13 10:08:21 -0700 (Wed, 13 Sep 2006)

Log Message:
-----------
<rdar://problem/4694271> Launchd should advertise (via bonjour) services with dynamic socket port assignments

Modified Paths:
--------------
    trunk/launchd/src/launchctl.c

Modified: trunk/launchd/src/launchctl.c
===================================================================
--- trunk/launchd/src/launchctl.c	2006-09-12 22:46:16 UTC (rev 22851)
+++ trunk/launchd/src/launchctl.c	2006-09-13 17:08:21 UTC (rev 22852)
@@ -863,6 +863,13 @@
 					fprintf(stderr, "bind(): %s\n", strerror(errno));
 					return;
 				}
+				/* The kernel may have dynamically assigned some part of the
+				 * address. (The port being a common example.)
+				 */
+				if (getsockname(sfd, res->ai_addr, &res->ai_addrlen) == -1) {
+					fprintf(stderr, "getsockname(): %s\n", strerror(errno));
+					return;
+				}
 
 				if (mgroup) {
 					do_mgroup_join(sfd, res->ai_family, res->ai_socktype, res->ai_protocol, mgroup);

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20060913/df77cd53/attachment.html


More information about the launchd-changes mailing list