From f63e8070488e079c899cde90e8452796f3af4e5f Mon Sep 17 00:00:00 2001 From: Luke Leighton Date: Thu, 24 Jun 1999 19:02:37 +0000 Subject: safe string version of nmb_namestr. (This used to be commit 250621b3cec5fc463d348432d1d0ff5fb59e7a29) --- source3/libsmb/nmblib.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'source3/libsmb/nmblib.c') diff --git a/source3/libsmb/nmblib.c b/source3/libsmb/nmblib.c index 14dc5ecee2..54b1779f44 100644 --- a/source3/libsmb/nmblib.c +++ b/source3/libsmb/nmblib.c @@ -287,6 +287,7 @@ static int put_nmb_name(char *buf,int offset,struct nmb_name *name) return(ret); } + /******************************************************************* useful for debugging messages ******************************************************************/ @@ -296,15 +297,23 @@ char *nmb_namestr(struct nmb_name *n) static fstring ret[4]; char *p = ret[i]; - if (!n->scope[0]) - slprintf(p,sizeof(fstring)-1, "%s<%02x>",n->name,n->name_type); - else - slprintf(p,sizeof(fstring)-1, "%s<%02x>.%s",n->name,n->name_type,n->scope); + nmb_safe_namestr(n, p, sizeof(fstring)); i = (i+1)%4; return(p); } +/******************************************************************* + useful for debugging messages + ******************************************************************/ +void nmb_safe_namestr(struct nmb_name *n, char *str, size_t len) +{ + if (!n->scope[0]) + slprintf(str, len-1, "%s<%02x>",n->name,n->name_type); + else + slprintf(str, len-1, "%s<%02x>.%s",n->name,n->name_type,n->scope); +} + /******************************************************************* allocate and parse some resource records ******************************************************************/ -- cgit