summaryrefslogtreecommitdiff
path: root/cifs.idmap.c
diff options
context:
space:
mode:
authorAlexander Bokovoy <ab@samba.org>2022-02-16 14:18:16 +0200
committerPavel Shilovsky <pshilovsky@samba.org>2022-04-29 15:07:49 -0700
commitdc6035345515acb39bf5f9bc2e5104ad0e10cc2c (patch)
tree59b214772327f755eb31eb92ad83c2e0b69db674 /cifs.idmap.c
parentc4c94ada3fecc28b53b84d51157bc37fb00236da (diff)
downloadcifs-utils-dc6035345515acb39bf5f9bc2e5104ad0e10cc2c.tar.gz
cifs-utils-dc6035345515acb39bf5f9bc2e5104ad0e10cc2c.tar.bz2
cifs-utils-dc6035345515acb39bf5f9bc2e5104ad0e10cc2c.zip
fix warnings for -Waddress-of-packed-member
When structure members are packed, GCC will issue a warning that taking an address of the packed structure member might cause an unaligned access. In all cases where this happen we simply can use a local variable instead and then assign the result in a proper way. Signed-off-by: Alexander Bokovoy <ab@samba.org>
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);