Projects
Browse Source     Search     Timeline     Wiki

Changeset 23386

Show
Ignore:
Timestamp:
09/13/07 18:25:49 (15 months ago)
Author:
zarzycki@…
Message:

<rdar://problem/5480306> Not all sockets are created equal: We need to unlink Unix domain sockets before closing them

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/launchd/src/launchd_core_logic.c

    r23385 r23386  
    33713371 
    33723372        for (i = 0; i < sg->fd_cnt; i++) { 
     3373#if 0 
     3374                struct sockaddr_storage ss; 
     3375                struct sockaddr_un *sun = (struct sockaddr_un *)&ss; 
     3376                socklen_t ss_len = sizeof(ss); 
     3377 
     3378                /* 5480306 */ 
     3379                if (job_assumes(j, getsockname(sg->fds[i], (struct sockaddr *)&ss, &ss_len) != -1) 
     3380                                && job_assumes(j, ss_len > 0) && (ss.ss_family == AF_UNIX)) { 
     3381                        job_assumes(j, unlink(sun->sun_path) != -1); 
     3382                        /* We might conditionally need to delete a directory here */ 
     3383                } 
     3384#endif 
    33733385                job_assumes(j, runtime_close(sg->fds[i]) != -1); 
    33743386        }