Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12:Update
pciutils
pciutils-ocloexec.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pciutils-ocloexec.patch of Package pciutils
diff -aur pciutils-3.1.9.orig/lib/dump.c pciutils-3.1.9/lib/dump.c --- pciutils-3.1.9.orig/lib/dump.c 2011-11-14 06:08:39.000000000 -0500 +++ pciutils-3.1.9/lib/dump.c 2012-01-28 20:53:40.446518788 -0500 @@ -64,7 +64,7 @@ if (!name) a->error("dump: File name not given."); - if (!(f = fopen(name, "r"))) + if (!(f = fopen(name, "re"))) a->error("dump: Cannot open %s: %s", name, strerror(errno)); while (fgets(buf, sizeof(buf)-1, f)) { diff -aur pciutils-3.1.9.orig/lib/names-cache.c pciutils-3.1.9/lib/names-cache.c --- pciutils-3.1.9.orig/lib/names-cache.c 2011-01-07 16:04:28.000000000 -0500 +++ pciutils-3.1.9/lib/names-cache.c 2012-01-28 20:56:42.181246792 -0500 @@ -62,7 +62,7 @@ return 0; } - f = fopen(name, "rb"); + f = fopen(name, "rbe"); if (!f) { a->debug("Cache file does not exist\n"); @@ -135,7 +135,7 @@ tmpname = pci_malloc(a, strlen(name) + strlen(hostname) + 64); sprintf(tmpname, "%s.tmp-%s-%d", name, hostname, this_pid); - f = fopen(tmpname, "wb"); + f = fopen(tmpname, "wbe"); if (!f) { a->warning("Cannot write to %s: %s", name, strerror(errno)); diff -aur pciutils-3.1.9.orig/lib/names-parse.c pciutils-3.1.9/lib/names-parse.c --- pciutils-3.1.9.orig/lib/names-parse.c 2011-01-07 16:04:28.000000000 -0500 +++ pciutils-3.1.9/lib/names-parse.c 2012-01-28 20:56:11.462630829 -0500 @@ -52,7 +52,7 @@ typedef FILE * pci_file; #define pci_gets(f, l, s) fgets(l, s, f) #define pci_eof(f) feof(f) -#define pci_open(a) fopen(a->id_file_name, "r") +#define pci_open(a) fopen(a->id_file_name, "re") #define pci_close(f) fclose(f) #define PCI_ERROR(f, err) if (!err && ferror(f)) err = "I/O error"; #endif diff -aur pciutils-3.1.9.orig/lib/proc.c pciutils-3.1.9/lib/proc.c --- pciutils-3.1.9.orig/lib/proc.c 2011-01-07 16:04:28.000000000 -0500 +++ pciutils-3.1.9/lib/proc.c 2012-01-28 20:55:32.827113838 -0500 @@ -62,7 +62,7 @@ if (snprintf(buf, sizeof(buf), "%s/devices", pci_get_param(a, "proc.path")) == sizeof(buf)) a->error("File name too long"); - f = fopen(buf, "r"); + f = fopen(buf, "re"); if (!f) a->error("Cannot open %s", buf); while (fgets(buf, sizeof(buf)-1, f)) @@ -129,7 +129,7 @@ if (e < 0 || e >= (int) sizeof(buf)) a->error("File name too long"); a->fd_rw = a->writeable || rw; - a->fd = open(buf, a->fd_rw ? O_RDWR : O_RDONLY); + a->fd = open(buf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC); if (a->fd < 0) { e = snprintf(buf, sizeof(buf), "%s/%04x:%02x/%02x.%d", @@ -137,7 +137,7 @@ d->domain, d->bus, d->dev, d->func); if (e < 0 || e >= (int) sizeof(buf)) a->error("File name too long"); - a->fd = open(buf, a->fd_rw ? O_RDWR : O_RDONLY); + a->fd = open(buf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC); } if (a->fd < 0) a->warning("Cannot open %s", buf); diff -aur pciutils-3.2.0.orig//lib/sysfs.c pciutils-3.2.0/lib/sysfs.c --- pciutils-3.2.0.orig//lib/sysfs.c 2013-04-01 15:23:18.000000000 +0200 +++ pciutils-3.2.0/lib/sysfs.c 2013-07-30 23:30:16.013365441 +0200 @@ -95,7 +95,7 @@ char namebuf[OBJNAMELEN]; sysfs_obj_name(d, object, namebuf); - fd = open(namebuf, O_RDONLY); + fd = open(namebuf, O_RDONLY|O_CLOEXEC); if (fd < 0) { if (mandatory) @@ -130,7 +130,7 @@ int i; sysfs_obj_name(d, "resource", namebuf); - file = fopen(namebuf, "r"); + file = fopen(namebuf, "re"); if (!file) a->error("Cannot open %s: %s", namebuf, strerror(errno)); for (i = 0; i < 7; i++) @@ -235,7 +235,7 @@ n = snprintf(namebuf, OBJNAMELEN, "%s/%s/%s", dirname, entry->d_name, "address"); if (n < 0 || n >= OBJNAMELEN) a->error("File name too long"); - file = fopen(namebuf, "r"); + file = fopen(namebuf, "re"); /* * Old versions of Linux had a fakephp which didn't have an 'address' * file. There's no useful information to be gleaned from these @@ -303,7 +303,7 @@ if (a->fd_vpd < 0) { sysfs_obj_name(d, "vpd", namebuf); - a->fd_vpd = open(namebuf, O_RDONLY); + a->fd_vpd = open(namebuf, O_RDONLY|O_CLOEXEC); /* No warning on error; vpd may be absent or accessible only to root */ } return a->fd_vpd; @@ -313,7 +313,7 @@ { sysfs_obj_name(d, "config", namebuf); a->fd_rw = a->writeable || intent == SETUP_WRITE_CONFIG; - a->fd = open(namebuf, a->fd_rw ? O_RDWR : O_RDONLY); + a->fd = open(namebuf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC); if (a->fd < 0) a->warning("Cannot open %s", namebuf); a->fd_pos = 0;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor