#ifndef lint
static const char rcsid[] =
- "@(#) $Header: /tcpdump/master/tcpdump/smbutil.c,v 1.18 2002-01-17 04:38:29 guy Exp $";
+ "@(#) $Header: /tcpdump/master/tcpdump/smbutil.c,v 1.21 2002-04-26 05:12:40 guy Exp $";
#endif
#include <sys/param.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#ifdef TIME_WITH_SYS_TIME
#include <time.h>
+#endif
#include "interface.h"
#include "extract.h"
/* convert a UCS2 string into iso-8859-1 string */
static const char *
-unistr(const char *s, int *len)
+unistr(const u_char *s, int *len)
{
static char buf[1000];
int l=0;
/* maybe it isn't unicode - a cheap trick */
if (!use_unicode || (s[0] && s[1])) {
- *len = strlen(s) + 1;
- return s;
+ *len = strlen((const char *)s) + 1;
+ return (const char *)s;
}
*len = 0;
case '{':
{
char bitfmt[128];
- char *p = strchr(++fmt, '}');
- int l = PTR_DIFF(p, fmt);
+ char *p;
+ int l;
+
+ p = strchr(++fmt, '}');
+ l = PTR_DIFF(p, fmt);
strncpy(bitfmt, fmt, l);
bitfmt[l] = 0;
fmt = p + 1;
int l = atoi(fmt + 1);
buf += l;
fmt++;
- while (isdigit(*fmt))
+ while (isdigit((unsigned char)*fmt))
fmt++;
break;
}
printf("%-*.*s", l, l, buf);
buf += l;
fmt++;
- while (isdigit(*fmt))
+ while (isdigit((unsigned char)*fmt))
fmt++;
break;
}
while (l--)
printf("%02x", *buf++);
fmt++;
- while (isdigit(*fmt))
+ while (isdigit((unsigned char)*fmt))
fmt++;
break;
}
break;
}
fmt++;
- while (isdigit(*fmt))
+ while (isdigit((unsigned char)*fmt))
fmt++;
break;
}
}
printf("%s", t ? asctime(localtime(&t)) : "NULL\n");
fmt++;
- while (isdigit(*fmt))
+ while (isdigit((unsigned char)*fmt))
fmt++;
break;
}