summaryrefslogtreecommitdiff
path: root/cifs.idmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'cifs.idmap.c')
-rw-r--r--cifs.idmap.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/cifs.idmap.c b/cifs.idmap.c
index cbc01c5..d557edb 100644
--- a/cifs.idmap.c
+++ b/cifs.idmap.c
@@ -172,12 +172,14 @@ cifs_idmap(const key_serial_t key, const char *key_descr)
sidstr = strget(key_descr, "oi:");
if (sidstr) {
- rc = str_to_uint(sidstr, (unsigned int *)&cuxid.id.uid);
+ unsigned int _uid = 0;
+ rc = str_to_uint(sidstr, (unsigned int *)&_uid);
if (rc) {
syslog(LOG_ERR, "Unable to convert %s to uid: %s",
sidstr, strerror(rc));
goto cifs_idmap_ret;
}
+ cuxid.id.uid = _uid;
cuxid.type = CIFS_UXID_TYPE_UID;
syslog(LOG_DEBUG, "SID: %s, uid: %u", sidstr, cuxid.id.uid);
@@ -198,12 +200,14 @@ cifs_idmap(const key_serial_t key, const char *key_descr)
sidstr = strget(key_descr, "gi:");
if (sidstr) {
- rc = str_to_uint(sidstr, (unsigned int *)&cuxid.id.gid);
+ unsigned int _gid = 0;
+ rc = str_to_uint(sidstr, (unsigned int *)&_gid);
if (rc) {
syslog(LOG_ERR, "Unable to convert %s to gid: %s",
sidstr, strerror(rc));
goto cifs_idmap_ret;
}
+ cuxid.id.gid = _gid;
cuxid.type = CIFS_UXID_TYPE_GID;
syslog(LOG_DEBUG, "SID: %s, gid: %u", sidstr, cuxid.id.gid);