summaryrefslogtreecommitdiffstats
path: root/src/sss_client/nss_services.c
diff options
context:
space:
mode:
authorMichal Zidek <mzidek@redhat.com>2013-09-10 23:09:04 +0200
committerJakub Hrozek <jhrozek@redhat.com>2013-12-10 12:04:50 +0100
commit8bf65dbab8703697c85b033beb5c189fce17b036 (patch)
treeeb99c28b6e004fc6c05ede4a7cdc30569cce7dbf /src/sss_client/nss_services.c
parent65f4003b93157b32eb0dcd6955d37dd009dc960e (diff)
downloadsssd-8bf65dbab8703697c85b033beb5c189fce17b036.tar.gz
sssd-8bf65dbab8703697c85b033beb5c189fce17b036.tar.xz
sssd-8bf65dbab8703697c85b033beb5c189fce17b036.zip
Properly align buffer when storing pointers.
Properly align buffer address to sizeof(char *) when storing pointers to strings. resolves: https://fedorahosted.org/sssd/ticket/1359
Diffstat (limited to 'src/sss_client/nss_services.c')
-rw-r--r--src/sss_client/nss_services.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/sss_client/nss_services.c b/src/sss_client/nss_services.c
index b40e1fa94..e89e0d2f1 100644
--- a/src/sss_client/nss_services.c
+++ b/src/sss_client/nss_services.c
@@ -127,11 +127,8 @@ sss_nss_getsvc_readrep(struct sss_nss_svc_rep *sr,
NULL);
if (ret != EOK) return ret;
- /* Make sure sr->buffer[i+pad] is 32-bit aligned */
- pad = 0;
- while((i + pad) % 4) {
- pad++;
- }
+ /* Make sure sr->buffer[i+pad] is aligned to sizeof(char *) */
+ pad = PADDING_SIZE(i, char *);
/* Copy in the aliases */
sr->result->s_aliases = (char **) &(sr->buffer[i+pad]);