ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/rxvtd.C
(Generate patch)

Comparing rxvt-unicode/src/rxvtd.C (file contents):
Revision 1.29 by root, Mon Feb 20 22:42:00 2006 UTC vs.
Revision 1.30 by root, Wed Aug 9 22:01:07 2006 UTC

69}; 69};
70 70
71unix_listener::unix_listener (const char *sockname) 71unix_listener::unix_listener (const char *sockname)
72: accept_ev (this, &unix_listener::accept_cb) 72: accept_ev (this, &unix_listener::accept_cb)
73{ 73{
74 sockaddr_un sa;
75
76 if (strlen(sockname) >= sizeof(sa.sun_path))
77 rxvt_fatal ("socket name too long, aborting.\n");
78
74 if ((fd = socket (AF_UNIX, SOCK_STREAM, 0)) < 0) 79 if ((fd = socket (AF_UNIX, SOCK_STREAM, 0)) < 0)
75 { 80 {
76 perror ("unable to create listening socket"); 81 perror ("unable to create listening socket");
77 exit (EXIT_FAILURE); 82 exit (EXIT_FAILURE);
78 } 83 }
79 84
80 fcntl (fd, F_SETFD, FD_CLOEXEC); 85 fcntl (fd, F_SETFD, FD_CLOEXEC);
81
82 sockaddr_un sa;
83 86
84 sa.sun_family = AF_UNIX; 87 sa.sun_family = AF_UNIX;
85 strcpy (sa.sun_path, sockname); 88 strcpy (sa.sun_path, sockname);
86 89
87 unlink (rxvt_connection::unix_sockname ()); 90 unlink (rxvt_connection::unix_sockname ());

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines