diff options
Diffstat (limited to 'usr/src/cmd/dlmgmtd')
| -rw-r--r-- | usr/src/cmd/dlmgmtd/dlmgmt_door.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/usr/src/cmd/dlmgmtd/dlmgmt_door.c b/usr/src/cmd/dlmgmtd/dlmgmt_door.c index 2374047078..aa32d7cee5 100644 --- a/usr/src/cmd/dlmgmtd/dlmgmt_door.c +++ b/usr/src/cmd/dlmgmtd/dlmgmt_door.c @@ -1036,8 +1036,11 @@ dlmgmt_handler(void *cookie, char *argp, size_t argsz, door_desc_t *dp, } eset = ucred_getprivset(cred, PRIV_EFFECTIVE); - if (eset == NULL || !priv_ismember(eset, PRIV_SYS_DL_CONFIG)) + if ((eset == NULL) || + (!priv_ismember(eset, PRIV_SYS_DL_CONFIG) && + !priv_ismember(eset, PRIV_SYS_NET_CONFIG))) { err = EACCES; + } ucred_free(cred); if (err != 0) goto fail; |
