diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-12-07 14:32:34 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-12-07 14:32:34 +0100 |
commit | 4d22dbb0f5a0cd4d3202a01a8cc18b632b5c9b01 (patch) | |
tree | 7bacd43c02f1d998d17bd5d613a593e054bd20da /sys/src/libdraw/init.c | |
parent | e8b871ef5af74187a17b068e8fc2c1b44384a782 (diff) |
libdraw: open internal file-descriptors with OCEXEC flag
Diffstat (limited to 'sys/src/libdraw/init.c')
-rw-r--r-- | sys/src/libdraw/init.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/src/libdraw/init.c b/sys/src/libdraw/init.c index f6f2551db..b02ced89b 100644 --- a/sys/src/libdraw/init.c +++ b/sys/src/libdraw/init.c @@ -49,7 +49,7 @@ geninitdraw(char *devdir, void(*error)(Display*, char*), char *fontname, char *l return -1; } if(fontname == nil){ - fd = open("/env/font", OREAD); + fd = open("/env/font", OREAD|OCEXEC); if(fd >= 0){ n = read(fd, buf, sizeof(buf)); if(n>0 && n<sizeof buf-1){ @@ -82,11 +82,11 @@ geninitdraw(char *devdir, void(*error)(Display*, char*), char *fontname, char *l */ if(label != nil){ snprint(buf, sizeof buf, "%s/label", display->windir); - fd = open(buf, OREAD); + fd = open(buf, OREAD|OCEXEC); if(fd >= 0){ read(fd, display->oldlabel, (sizeof display->oldlabel)-1); close(fd); - fd = create(buf, OWRITE, 0666); + fd = create(buf, OWRITE|OCEXEC, 0666); if(fd >= 0){ write(fd, label, strlen(label)); close(fd); @@ -125,7 +125,7 @@ gengetwindow(Display *d, char *winname, Image **winp, Screen **scrp, int ref) obuf[0] = 0; retry: - fd = open(winname, OREAD); + fd = open(winname, OREAD|OCEXEC); if(fd<0 || (n=read(fd, buf, sizeof buf-1))<=0){ if(fd >= 0) close(fd); strcpy(buf, "noborder"); @@ -345,7 +345,7 @@ _closedisplay(Display *disp, int isshutdown) display = nil; if(disp->oldlabel[0]){ snprint(buf, sizeof buf, "%s/label", disp->windir); - fd = open(buf, OWRITE); + fd = open(buf, OWRITE|OCEXEC); if(fd >= 0){ write(fd, disp->oldlabel, strlen(disp->oldlabel)); close(fd); |