mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-24 06:07:29 +01:00
close network sockets on fork
fixes problem with external apps (ie. video-server) inheriting them.
This commit is contained in:
parent
1053529e4f
commit
024e556cb2
2 changed files with 10 additions and 1 deletions
|
|
@ -160,6 +160,8 @@ IPMIDIPort::open_sockets (int base_port, const string& ifname)
|
|||
return false;
|
||||
}
|
||||
|
||||
fcntl(sockin, F_SETFD, fcntl(sockin, F_GETFD) | FD_CLOEXEC);
|
||||
|
||||
struct sockaddr_in addrin;
|
||||
::memset(&addrin, 0, sizeof(addrin));
|
||||
addrin.sin_family = AF_INET;
|
||||
|
|
@ -206,6 +208,8 @@ IPMIDIPort::open_sockets (int base_port, const string& ifname)
|
|||
::perror("socket(out)");
|
||||
return false;
|
||||
}
|
||||
|
||||
fcntl(sockout, F_SETFD, fcntl(sockout, F_GETFD) | FD_CLOEXEC);
|
||||
|
||||
// Will Hall, Oct 2007
|
||||
if (!ifname.empty()) {
|
||||
|
|
|
|||
|
|
@ -166,6 +166,9 @@ OSC::start ()
|
|||
_port++;
|
||||
continue;
|
||||
}
|
||||
|
||||
int fd = lo_server_get_socket_fd (_osc_server);
|
||||
fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
|
||||
|
||||
#ifdef ARDOUR_OSC_UNIX_SERVER
|
||||
|
||||
|
|
@ -174,7 +177,7 @@ OSC::start ()
|
|||
// attempt to create unix socket server too
|
||||
|
||||
snprintf(tmpstr, sizeof(tmpstr), "/tmp/sooperlooper_XXXXXX");
|
||||
int fd = mkstemp(tmpstr);
|
||||
fd = mkstemp(tmpstr);
|
||||
|
||||
if (fd >= 0 ) {
|
||||
unlink (tmpstr);
|
||||
|
|
@ -185,6 +188,8 @@ OSC::start ()
|
|||
if (_osc_unix_server) {
|
||||
_osc_unix_socket_path = tmpstr;
|
||||
}
|
||||
fd = lo_server_get_socket_fd (_osc_unix_server)
|
||||
fcntl(fdx, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue