plugins: Add O_CLOEXEC to open()
authorDaniel Wagner <daniel.wagner@bmw-carit.de>
Sun, 23 Oct 2011 12:16:24 +0000 (14:16 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Tue, 25 Oct 2011 11:34:30 +0000 (13:34 +0200)
Make sure all file descriptor are closed.

plugins/tist.c
plugins/vpn.c

index b8c89cf..9b0d3f7 100644 (file)
@@ -370,7 +370,7 @@ static int install_ldisc(GIOChannel *channel, gboolean install)
 
        DBG("opening %s custom baud %lu", uart_dev_name, baud_rate);
        
-       uart_fd = open(uart_dev_name, O_RDWR);
+       uart_fd = open(uart_dev_name, O_RDWR | O_CLOEXEC);
        if (uart_fd < 0)
                return -EIO;
 
@@ -522,7 +522,7 @@ static int tist_init(void)
                return err;
        }
 
-       fd = open(TIST_SYSFS_INSTALL, O_RDONLY);
+       fd = open(TIST_SYSFS_INSTALL, O_RDONLY | O_CLOEXEC);
        if (fd < 0) {
                connman_error("Failed to open TI ST sysfs install file");
                return -EIO;
index efeb959..b9b97c1 100644 (file)
@@ -74,7 +74,7 @@ static int kill_tun(char *tun_name)
        ifr.ifr_flags = IFF_TUN | IFF_NO_PI;
        sprintf(ifr.ifr_name, "%s", tun_name);
 
-       fd = open("/dev/net/tun", O_RDWR);
+       fd = open("/dev/net/tun", O_RDWR | O_CLOEXEC);
        if (fd < 0) {
                err = -errno;
                connman_error("Failed to open /dev/net/tun to device %s: %s",
@@ -228,7 +228,7 @@ static int vpn_connect(struct connman_provider *provider)
        name = connman_provider_get_driver_name(provider);
        vpn_driver_data = g_hash_table_lookup(driver_hash, name);
 
-       fd = open("/dev/net/tun", O_RDWR);
+       fd = open("/dev/net/tun", O_RDWR | O_CLOEXEC);
        if (fd < 0) {
                i = -errno;
                connman_error("Failed to open /dev/net/tun: %s",