Samba-2.2.8pre2 compiler warnings
Nicholas Brealey
nick at brealey.org
Sat Mar 1 14:47:48 GMT 2003
Hello
I just compiled Samba-2.2.8pre2 on 4 different systems:
1) Solaris 7 + cc: WorkShop Compilers 5.0 98/12/15 C 5.0
2) Solaris 9 + cc: WorkShop Compilers 5.0 98/12/15 C 5.0
3) Solaris 9 + cc: Forte Developer 7 C 5.4 2002/03/09
4) IRIX 6.5 + MIPSpro Compilers: Version 7.30
It compiled OK on all systems. I only ran it on 2) since the
other systems are 'production' systems. It seems to run OK.
There were a number of compiler warnings though.
Two of the warnings looks like they could be serious:
CLITAR
======
"client/clitar.c", line 688: warning: argument #4 is incompatible with prototype:
prototype: pointer to uint : "include/proto.h", line 303
argument : pointer to ullong
A 64 bit integer being used where a 32 bit integer is expected?
smbtar make not work on bigendian machines?
smbtar may not work for files over 2GB on little endian machines?
IRIX TDBUTIL
============
cc-1164 cc: WARNING File = tdb/tdbutil.c, Line = 46
Argument of type "SIG_ATOMIC_T *" is incompatible with parameter of type
"sig_atomic_t *".
tdb_set_lock_alarm(&gotalarm);
A fuller list of warnings is:
On 1) I got the following
"rpc_parse/parse_spoolss.c", line 1209: warning: assignment type mismatch:
pointer to uchar "=" pointer to char
"rpc_parse/parse_spoolss.c", line 6666: warning: assignment type mismatch:
pointer to uchar "=" pointer to char
"passdb/secrets.c", line 291: warning: argument #2 is incompatible with prototype:
prototype: pointer to char : "include/proto.h", line 5018
argument : pointer to const char
"lib/util.c", line 62: warning: initializer does not fit or is out of range: -1
"tdb/tdbutil.c", line 46: warning: argument #1 is incompatible with prototype:
prototype: pointer to int : "include/../tdb/tdb.h", line 130
argument : pointer to volatile int
"smbd/quotas.c", line 404: warning: argument #2 is incompatible with prototype:
prototype: pointer to int : "/usr/include/rpc/xdr.h", line 340
argument : pointer to uint
"smbd/quotas.c", line 408: warning: argument #2 is incompatible with prototype:
prototype: pointer to int : "/usr/include/rpc/xdr.h", line 340
argument : pointer to uint
"smbd/quotas.c", line 412: warning: argument #2 is incompatible with prototype:
prototype: pointer to int : "/usr/include/rpc/xdr.h", line 340
argument : pointer to uint
"client/clitar.c", line 688: warning: argument #4 is incompatible with prototype:
prototype: pointer to uint : "include/proto.h", line 303
argument : pointer to ullong
Compiling tdb/tdbutil.c with -KPIC
"tdb/tdbutil.c", line 46: warning: argument #1 is incompatible with prototype:
prototype: pointer to int : "include/../tdb/tdb.h", line 130
argument : pointer to volatile int
Compiling nsswitch/winbind_nss.c with -KPIC
"nsswitch/winbind_nss.c", line 600: warning: argument #2 is incompatible with
prototype:
prototype: pointer to int : "nsswitch/winbind_nss.c", line 529
argument : pointer to uint
(plus about 20 similar messages in nsswitch/winbind_nss.c).
On 2) I get the same warnings as 1).
On 3) I get the same as 1) and 2) with the following additions/changes:
Compiling passdb/pass_check.c
"passdb/pass_check.c", line 669: warning: implicit function declaration: crypt
Compiling client/clitar.c
"client/clitar.c", line 688: warning: argument #4 is incompatible with prototype:
prototype: pointer to unsigned int : "include/proto.h", line 303
argument : pointer to unsigned long long
Compiling smbwrapper/smbw.c with -KPIC
"smbwrapper/smbw.c", line 1413: warning: implicit function declaration: _fork
Compiling smbwrapper/smbw_dir.c with -KPIC
"smbwrapper/smbw_dir.c", line 570: warning: implicit function declaration: _getcwd
Compiling smbwrapper/wrapped.c with -KPIC
"smbwrapper/wrapped.c", line 39: warning: implicit function declaration: smbw_path
"smbwrapper/wrapped.c", line 40: warning: implicit function declaration: smbw_open
(plus lots of similar messages).
On 4) I there are lots of warnings but these are the most interesting ones:
Compiling smbd/password.c
cc-1164 cc: WARNING File = smbd/password.c, Line = 664
Argument of type "const char *" is incompatible with parameter of type "char \
*"
.
setnetgrent(group);
^
Compiling smbd/reply.c
cc-1552 cc: WARNING File = smbd/reply.c, Line = 2575
The variable "data" is set but never used.
char *data;
^
cc-1552 cc: WARNING File = rpc_server/srv_spoolss_nt.c, Line = 335
The variable "i" is set but never used.
int i;
Compiling rpc_parse/parse_spoolss.c
cc-1515 cc: WARNING File = rpc_parse/parse_spoolss.c, Line = 1209
A value of type "char *" cannot be assigned to an entity of type
"unsigned char *".
r_u->data = prs_alloc_mem(ps, r_u->size);
^
cc-1515 cc: WARNING File = rpc_parse/parse_spoolss.c, Line = 6666
A value of type "char *" cannot be assigned to an entity of type
"unsigned char *".
r_u->data = prs_alloc_mem(ps, r_u->size);
^
Compiling passdb/passdb.c
cc-1552 cc: WARNING File = passdb/passdb.c, Line = 879
The variable "pwd" is set but never used.
struct passwd *pwd = NULL;
^
Compiling passdb/secrets.c
cc-1164 cc: WARNING File = passdb/secrets.c, Line = 291
Argument of type "const char *" is incompatible with parameter of type "char \
*"
.
ret = tdb_lock_bystring(tdb, name, timeout);
^
Compiling lib/kanji.c
cc-1188 cc: WARNING File = lib/kanji.c, Line = 117
The indicated type qualifier is meaningless on cast type.
if (is_shift_jis (*s1)) {
(repeated lots times).
cc-1552 cc: WARNING File = lib/util.c, Line = 1376
The variable "n" is set but never used.
int n;
^
cc-1164 cc: WARNING File = tdb/tdbutil.c, Line = 46
Argument of type "SIG_ATOMIC_T *" is incompatible with parameter of type
"sig_atomic_t *".
tdb_set_lock_alarm(&gotalarm);
Compiling client/clitar.c
cc-1164 cc: WARNING File = client/clitar.c, Line = 688
Argument of type "unsigned long long *" is incompatible with parameter of typ\
e
"size_t *".
if (!cli_getattrE(cli, fnum, &finfo.mode, &finfo.size, NULL, &finfo.a\
time, &finfo.mtime)) {
^
Compiling nsswitch/winbindd_user.c
cc-1552 cc: WARNING File = nsswitch/winbindd_user.c, Line = 331
The variable "status" is set but never used.
NTSTATUS status;
^
cc-1185 cc: WARNING File = nsswitch/winbindd_cache.c, Line = 653
An enumerated type is mixed with another type.
*type = centry_uint32(centry);
^
(repeated severla times).
Compiling nsswitch/winbindd_pam.c
cc-1552 cc: WARNING File = nsswitch/winbindd_pam.c, Line = 33
The variable "passlen" is set but never used.
int passlen;
^
More information about the samba-technical
mailing list