bitkeeper revision 1.1159.17.24 (411bf61edgcR_nOyvkAutrxUxR2tRg)

Add close-on-exec to open fd's on /dev/mem and /dev/xen/evtchn in xend.
This commit is contained in:
kaf24@scramble.cl.cam.ac.uk committed 2004-08-12 22:58:38 +00:00
1 parent 2e15ab4a09
commit f953ebc4f2
1 file changed
+15
+15
View File
@@ -57,6 +57,19 @@
#endif
/* Set the close-on-exec flag on a file descriptor. Doesn't currently bother
* to check for errors. */
static void set_cloexec(int fd)
{
int flags = fcntl(fd, F_GETFD, 0);
if ( flags < 0 )
return;
flags |= FD_CLOEXEC;
fcntl(fd, F_SETFD, flags);
}
/*
* *********************** NOTIFIER ***********************
*/
@@ -197,6 +210,7 @@ static PyObject *xu_notifier_new(PyObject *self, PyObject *args)
PyObject_Del((PyObject *)xun);
return PyErr_SetFromErrno(PyExc_IOError);
}
set_cloexec(xun->evtchn_fd);
return (PyObject *)xun;
}
@@ -896,6 +910,7 @@ static int __xu_port_connect(xu_port_object *xup)
PyErr_SetString(port_error, "Could not open '/dev/mem'");
return -1;
}
set_cloexec(xup->mem_fd);
/* Set the General-Purpose Subject whose page frame will be mapped. */
(void)ioctl(xup->mem_fd, _IO('M', 1), (unsigned long)xup->remote_dom);
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.