summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1998-11-13 02:07:07 +0000
committerJeremy Allison <jra@samba.org>1998-11-13 02:07:07 +0000
commit2164685b9f959814af2067aa0dcac2d1b2ac0bc5 (patch)
treef8ebfac1cd4515f5de95d97e3b553f483669fd9e
parentcb265dbb8b73a177d9e7fd52e53f1eba487b94d4 (diff)
downloadsamba-2164685b9f959814af2067aa0dcac2d1b2ac0bc5.tar.gz
samba-2164685b9f959814af2067aa0dcac2d1b2ac0bc5.tar.bz2
samba-2164685b9f959814af2067aa0dcac2d1b2ac0bc5.zip
include/smb.h: Re-added zero pointer protection to ZERO_STRUCTP.
lib/util_sock.c: Added strerror() calls to getpeername failures (which seem to be giving IRIX trouble at the moment). rpc_parse/parse_sec.c: Changed use of ZERO_STRUCTPN to ZERO_STRUCTP which again does zero pointer protection. smbd/quotas.c: Fixed typo. Jeremy. (This used to be commit b62f008974c96e0302d6c146cf49bc2045bef005)
-rw-r--r--source3/include/smb.h4
-rw-r--r--source3/lib/util_sock.c4
-rw-r--r--source3/rpc_parse/parse_sec.c12
-rw-r--r--source3/smbd/quotas.c2
4 files changed, 10 insertions, 12 deletions
diff --git a/source3/include/smb.h b/source3/include/smb.h
index 9339cdda6f..bb055214ec 100644
--- a/source3/include/smb.h
+++ b/source3/include/smb.h
@@ -1655,9 +1655,7 @@ extern int unix_ERR_code;
#define ZERO_STRUCT(x) memset((char *)&(x), 0, sizeof(x))
/* zero a structure given a pointer to the structure */
-#define ZERO_STRUCTP(x) { memset((char *)(x), 0, sizeof(*(x))); }
-
-#define ZERO_STRUCTPN(x) { if (x != NULL) ZERO_STRUCTP(x); }
+#define ZERO_STRUCTP(x) { if ((x) != NULL) memset((char *)(x), 0, sizeof(*(x))); }
/* zero an array - note that sizeof(array) must work - ie. it must not be a
pointer */
diff --git a/source3/lib/util_sock.c b/source3/lib/util_sock.c
index 47c94f21fc..3a52732a2a 100644
--- a/source3/lib/util_sock.c
+++ b/source3/lib/util_sock.c
@@ -795,7 +795,7 @@ char *client_name(int fd)
}
if (getpeername(fd, &sa, &length) < 0) {
- DEBUG(0,("getpeername failed\n"));
+ DEBUG(0,("getpeername failed. Error was %s\n", strerror(errno) ));
return name_buf;
}
@@ -840,7 +840,7 @@ char *client_addr(int fd)
}
if (getpeername(fd, &sa, &length) < 0) {
- DEBUG(0,("getpeername failed\n"));
+ DEBUG(0,("getpeername failed. Error was %s\n", strerror(errno) ));
return addr_buf;
}
diff --git a/source3/rpc_parse/parse_sec.c b/source3/rpc_parse/parse_sec.c
index 0b0c08fe13..c802f9c2d1 100644
--- a/source3/rpc_parse/parse_sec.c
+++ b/source3/rpc_parse/parse_sec.c
@@ -149,7 +149,7 @@ void sec_io_acl(char *desc, SEC_ACL *t, prs_struct *ps, int depth)
{
/* reading */
t->ace = malloc(sizeof(t->ace[0]) * t->num_aces);
- ZERO_STRUCTPN(t->ace);
+ ZERO_STRUCTP(t->ace);
}
if (t->ace == NULL && t->num_aces != 0)
@@ -316,7 +316,7 @@ static void sec_io_desc(char *desc, SEC_DESC *t, prs_struct *ps, int depth)
{
/* reading */
t->dacl = malloc(sizeof(*t->dacl));
- ZERO_STRUCTPN(t->dacl);
+ ZERO_STRUCTP(t->dacl);
}
if (t->dacl == NULL)
@@ -348,7 +348,7 @@ static void sec_io_desc(char *desc, SEC_DESC *t, prs_struct *ps, int depth)
{
/* reading */
t->sacl = malloc(sizeof(*t->sacl));
- ZERO_STRUCTPN(t->sacl);
+ ZERO_STRUCTP(t->sacl);
}
if (t->sacl == NULL)
@@ -383,7 +383,7 @@ static void sec_io_desc(char *desc, SEC_DESC *t, prs_struct *ps, int depth)
{
/* reading */
t->owner_sid = malloc(sizeof(*t->owner_sid));
- ZERO_STRUCTPN(t->owner_sid);
+ ZERO_STRUCTP(t->owner_sid);
}
if (t->owner_sid == NULL)
@@ -412,7 +412,7 @@ static void sec_io_desc(char *desc, SEC_DESC *t, prs_struct *ps, int depth)
{
/* reading */
t->grp_sid = malloc(sizeof(*t->grp_sid));
- ZERO_STRUCTPN(t->grp_sid);
+ ZERO_STRUCTP(t->grp_sid);
}
if (t->grp_sid == NULL)
@@ -485,7 +485,7 @@ void sec_io_desc_buf(char *desc, SEC_DESC_BUF *sec, prs_struct *ps, int depth)
{
/* reading */
sec->sec = malloc(sizeof(*sec->sec));
- ZERO_STRUCTPN(sec->sec);
+ ZERO_STRUCTP(sec->sec);
if (sec->sec == NULL)
{
diff --git a/source3/smbd/quotas.c b/source3/smbd/quotas.c
index 6df668e279..5cd5a895c6 100644
--- a/source3/smbd/quotas.c
+++ b/source3/smbd/quotas.c
@@ -373,7 +373,7 @@ BOOL disk_quotas(char *path, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_U
#include <ufs/quota.h>
/****************************************************************************
-try to get the disk space from disk quotas - OFS1 version
+try to get the disk space from disk quotas - OSF1 version
****************************************************************************/
BOOL disk_quotas(char *path, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_UINT *dsize)