diff options
Diffstat (limited to 'kernel/sysctl_binary.c')
| -rw-r--r-- | kernel/sysctl_binary.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/kernel/sysctl_binary.c b/kernel/sysctl_binary.c index 8f5d16e0707..8cd50d8f9bd 100644 --- a/kernel/sysctl_binary.c +++ b/kernel/sysctl_binary.c | |||
| @@ -1331,7 +1331,7 @@ static ssize_t binary_sysctl(const int *name, int nlen, | |||
| 1331 | ssize_t result; | 1331 | ssize_t result; |
| 1332 | char *pathname; | 1332 | char *pathname; |
| 1333 | int flags; | 1333 | int flags; |
| 1334 | int acc_mode, fmode; | 1334 | int acc_mode; |
| 1335 | 1335 | ||
| 1336 | pathname = sysctl_getname(name, nlen, &table); | 1336 | pathname = sysctl_getname(name, nlen, &table); |
| 1337 | result = PTR_ERR(pathname); | 1337 | result = PTR_ERR(pathname); |
| @@ -1342,15 +1342,12 @@ static ssize_t binary_sysctl(const int *name, int nlen, | |||
| 1342 | if (oldval && oldlen && newval && newlen) { | 1342 | if (oldval && oldlen && newval && newlen) { |
| 1343 | flags = O_RDWR; | 1343 | flags = O_RDWR; |
| 1344 | acc_mode = MAY_READ | MAY_WRITE; | 1344 | acc_mode = MAY_READ | MAY_WRITE; |
| 1345 | fmode = FMODE_READ | FMODE_WRITE; | ||
| 1346 | } else if (newval && newlen) { | 1345 | } else if (newval && newlen) { |
| 1347 | flags = O_WRONLY; | 1346 | flags = O_WRONLY; |
| 1348 | acc_mode = MAY_WRITE; | 1347 | acc_mode = MAY_WRITE; |
| 1349 | fmode = FMODE_WRITE; | ||
| 1350 | } else if (oldval && oldlen) { | 1348 | } else if (oldval && oldlen) { |
| 1351 | flags = O_RDONLY; | 1349 | flags = O_RDONLY; |
| 1352 | acc_mode = MAY_READ; | 1350 | acc_mode = MAY_READ; |
| 1353 | fmode = FMODE_READ; | ||
| 1354 | } else { | 1351 | } else { |
| 1355 | result = 0; | 1352 | result = 0; |
| 1356 | goto out_putname; | 1353 | goto out_putname; |
| @@ -1361,7 +1358,7 @@ static ssize_t binary_sysctl(const int *name, int nlen, | |||
| 1361 | if (result) | 1358 | if (result) |
| 1362 | goto out_putname; | 1359 | goto out_putname; |
| 1363 | 1360 | ||
| 1364 | result = may_open(&nd.path, acc_mode, fmode); | 1361 | result = may_open(&nd.path, acc_mode, flags); |
| 1365 | if (result) | 1362 | if (result) |
| 1366 | goto out_putpath; | 1363 | goto out_putpath; |
| 1367 | 1364 | ||
