=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/server.c,v retrieving revision 1.169 retrieving revision 1.170 diff -c -r1.169 -r1.170 *** src/usr.bin/tmux/server.c 2017/04/21 20:26:34 1.169 --- src/usr.bin/tmux/server.c 2017/04/22 06:13:30 1.170 *************** *** 1,4 **** ! /* $OpenBSD: server.c,v 1.169 2017/04/21 20:26:34 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: server.c,v 1.170 2017/04/22 06:13:30 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott *************** *** 119,130 **** return (-1); mask = umask(S_IXUSR|S_IXGRP|S_IRWXO); ! if (bind(fd, (struct sockaddr *) &sa, sizeof(sa)) == -1) return (-1); umask(mask); ! if (listen(fd, 128) == -1) return (-1); setblocking(fd, 0); return (fd); --- 119,134 ---- return (-1); mask = umask(S_IXUSR|S_IXGRP|S_IRWXO); ! if (bind(fd, (struct sockaddr *) &sa, sizeof(sa)) == -1) { ! close(fd); return (-1); + } umask(mask); ! if (listen(fd, 128) == -1) { ! close(fd); return (-1); + } setblocking(fd, 0); return (fd);