[BACK]Return to mux.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/mux.c between version 1.25 and 1.26

version 1.25, 2011/04/17 22:42:41 version 1.26, 2011/05/05 05:12:08
Line 1077 
Line 1077 
             strlen(options.control_path) + 1;              strlen(options.control_path) + 1;
   
         if (strlcpy(addr.sun_path, options.control_path,          if (strlcpy(addr.sun_path, options.control_path,
             sizeof(addr.sun_path)) >= sizeof(addr.sun_path))              sizeof(addr.sun_path)) >= sizeof(addr.sun_path)) {
                 fatal("ControlPath too long");                  error("ControlPath \"%s\" too long for Unix domain socket",
                       options.control_path);
                   goto disable_mux_master;
           }
   
         if ((muxserver_sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)          if ((muxserver_sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
                 fatal("%s socket(): %s", __func__, strerror(errno));                  fatal("%s socket(): %s", __func__, strerror(errno));
   
         old_umask = umask(0177);          old_umask = umask(0177);
         if (bind(muxserver_sock, (struct sockaddr *)&addr, addr.sun_len) == -1) {          if (bind(muxserver_sock, (struct sockaddr *)&addr, addr.sun_len) == -1) {
                 muxserver_sock = -1;  
                 if (errno == EINVAL || errno == EADDRINUSE) {                  if (errno == EINVAL || errno == EADDRINUSE) {
                         error("ControlSocket %s already exists, "                          error("ControlSocket %s already exists, "
                             "disabling multiplexing", options.control_path);                              "disabling multiplexing", options.control_path);
  disable_mux_master:   disable_mux_master:
                         close(muxserver_sock);                          if (muxserver_sock != -1) {
                         muxserver_sock = -1;                                  close(muxserver_sock);
                                   muxserver_sock = -1;
                           }
                         xfree(options.control_path);                          xfree(options.control_path);
                         options.control_path = NULL;                          options.control_path = NULL;
                         options.control_master = SSHCTL_MASTER_NO;                          options.control_master = SSHCTL_MASTER_NO;

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.26