mail/cclient
Mark Crispin's C-client mail access routines
| Flavor | Version | Run | OSVersion | Arch | License | Restricted | Status | |
|---|---|---|---|---|---|---|---|---|
| 2007f_1,1 | 623 | 4.0 | i386 | Apache-2.0 | 0 | fail |
License Permissions:
Events
| Machine | Type | Time | Message |
|---|---|---|---|
| m4032 | info | 2025-12-16 20:07:41.070836 | Test Started |
| m4032 | fail | 2025-12-16 20:10:34.897293 | make build returned non-zero: 1 |
| m4032 | fail | 2025-12-16 20:10:35.02589 | Test complete. |
Log
[1m===> Building for cclient-2007f_1,1[0m
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Building in full compliance with RFC 3501 security
+ requirements:
++ TLS/SSL encryption is supported
++ Unencrypted plaintext passwords are prohibited
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Applying an process to sources...
tools/an "ln -s" src/c-client c-client
tools/an "ln -s" src/ansilib c-client
tools/an "ln -s" src/charset c-client
tools/an "ln -s" src/osdep/unix c-client
tools/an "ln -s" src/mtest mtest
tools/an "ln -s" src/ipopd ipopd
tools/an "ln -s" src/imapd imapd
tools/an "ln -s" src/mailutil mailutil
tools/an "ln -s" src/mlock mlock
tools/an "ln -s" src/dmail dmail
tools/an "ln -s" src/tmail tmail
ln -s tools/an .
touch ip6
make build EXTRACFLAGS='-O2 -pipe -fstack-protector-strong -fno-strict-aliasing ' EXTRALDFLAGS='' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='' PASSWDTYPE=std SSLTYPE=unix.nopwd IP=6 EXTRASPECIALS='' BUILDTYPE=bsf IP=6 PASSWDTYPE=pam SPECIALS="SSLINCLUDE=/usr/include SSLLIB=/usr/lib SSLCERTS=/usr/local/certs SSLKEYS=/usr/local/certs GSSINCLUDE=/usr/include GSSLIB=/usr/lib PAMLDFLAGS=-lpam"
`ip6' is up to date.
Building c-client for bsf...
echo `cat SPECIALS` > c-client/SPECIALS
cd c-client;make bsf EXTRACFLAGS='-O2 -pipe -fstack-protector-strong -fno-strict-aliasing ' EXTRALDFLAGS='' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='' PASSWDTYPE=pam SSLTYPE=unix.nopwd IP=6 SSLINCLUDE=/usr/include SSLLIB=/usr/lib SSLCERTS=/usr/local/certs SSLKEYS=/usr/local/certs GSSINCLUDE=/usr/include GSSLIB=/usr/lib PAMLDFLAGS=-lpam
make build EXTRACFLAGS='-O2 -pipe -fstack-protector-strong -fno-strict-aliasing ' EXTRALDFLAGS='' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='' PASSWDTYPE=pam SSLTYPE=unix.nopwd IP=6 `cat SPECIALS` OS=bsf CHECKPW=pam SIGTYPE=psx CRXTYPE=nfs SPOOLDIR=/var ACTIVEFILE=/usr/local/news/lib/active RSHPATH=/usr/bin/rsh LOCKPGM=/usr/local/libexec/mlock BASECFLAGS="-g -O2 -pipe -fno-omit-frame-pointer" BASELDFLAGS="-lpam"
sh -c 'rm -rf auths.c crexcl.c ip_unix.c linkage.[ch] siglocal.c osdep*.[ch] *.o ARCHIVE *FLAGS *TYPE c-client.a || true'
sh -c 'rm -rf *.so libc-client4.so.9'
Once-only environment setup...
echo cc > CCTYPE
echo -g -O2 -pipe -fno-omit-frame-pointer '-O2 -pipe -fstack-protector-strong -fno-strict-aliasing ' -DCHUNKSIZE=65536 > CFLAGS
echo -DCREATEPROTO=unixproto -DEMPTYPROTO=unixproto -DMD5ENABLE=\"/etc/cram-md5.pwd\" -DMAILSPOOL=\"/var/mail\" -DANONYMOUSHOME=\"/var/mail/anonymous\" -DACTIVEFILE=\"/usr/local/news/lib/active\" -DNEWSSPOOL=\"/var/news\" -DRSHPATH=\"/usr/bin/rsh\" -DLOCKPGM=\"/usr/local/libexec/mlock\" -DLOCKPGM1=\"/usr/libexec/mlock\" -DLOCKPGM2=\"/usr/sbin/mlock\" -DLOCKPGM3=\"/etc/mlock\" > OSCFLAGS
echo -lpam > LDFLAGS
echo "ar rc c-client.a osdep.o mail.o misc.o newsrc.o smanager.o utf8.o utf8aux.o siglocal.o dummy.o pseudo.o netmsg.o flstring.o fdstring.o rfc822.o nntp.o smtp.o imap4r1.o pop3.o unix.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o mix.o;ranlib c-client.a" > ARCHIVE
echo bsf > OSTYPE
./drivers mbox imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile dummy
./mkauths ext md5 pla log
echo " mail_versioncheck (CCLIENTVERSION);" >> linkage.c
ln -s os_bsf.h osdep.h
ln -s os_bsf.c osdepbas.c
ln -s log_std.c osdeplog.c
ln -s sig_psx.c siglocal.c
ln -s crx_nfs.c crexcl.c
ln -s ip6_unix.c ip_unix.c
sh -c '(test bsf = sc5 -o bsf = sco -o ! -f /usr/include/sys/statvfs.h) && echo -DNOFSTATVFS >> OSCFLAGS || fgrep statvfs64 /usr/include/sys/statvfs.h > /dev/null || echo -DNOFSTATVFS64 >> OSCFLAGS'
PAM password authentication
echo -lpam >> LDFLAGS
ln -s ckp_pam.c osdepckp.c
Building with SSL
ln -s ssl_unix.c osdepssl.c
echo -I/usr/include -I/usr/include/openssl -DSSL_CERT_DIRECTORY=\"/usr/local/certs\" -DSSL_KEY_DIRECTORY=\"/usr/local/certs\" >> OSCFLAGS
echo " ssl_onceonlyinit ();" >> linkage.c
echo -L/usr/lib -lssl -lcrypto -lcrypt >> LDFLAGS
Building with SSL and plaintext passwords disabled unless SSL/TLS
echo " mail_parameters (NIL,SET_DISABLEPLAINTEXT,(void *) 2);" >> linkage.c
cat osdepbas.c osdepckp.c osdeplog.c osdepssl.c > osdep.c
cc `cat CFLAGS` `cat OSCFLAGS` -c osdep.c
In file included from osdep.c:48:
./nl_unix.c:49:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
49 | if (!*dst) *dst = (char *) fs_get ((*dstl = i) + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from osdep.c:49:
In file included from ./env_unix.c:256:
./pmatch.c:41:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
41 | if (!pat[1]) return (delim && strchr (s,delim)) ? NIL : T;
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./auth_ext.c:62:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
62 | if (challenge = (*challenger) (stream,&clen)) {
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_ext.c:62:17: note: place parentheses around the assignment to silence this warning
62 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ( )
./auth_ext.c:62:17: note: use '==' to turn this assignment into an equality comparison
62 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ==
./auth_ext.c:66:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
66 | if (challenge = (*challenger) (stream,&clen))
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_ext.c:66:21: note: place parentheses around the assignment to silence this warning
66 | if (challenge = (*challenger) (stream,&clen))
| ^
| ( )
./auth_ext.c:66:21: note: use '==' to turn this assignment into an equality comparison
66 | if (challenge = (*challenger) (stream,&clen))
| ^
| ==
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:105:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
105 | if (challenge = (*challenger) (stream,&clen)) {
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:105:17: note: place parentheses around the assignment to silence this warning
105 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ( )
./auth_md5.c:105:17: note: use '==' to turn this assignment into an equality comparison
105 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ==
./auth_md5.c:120:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
120 | if (challenge = (*challenger) (stream,&clen))
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:120:16: note: place parentheses around the assignment to silence this warning
120 | if (challenge = (*challenger) (stream,&clen))
| ^
| ( )
./auth_md5.c:120:16: note: use '==' to turn this assignment into an equality comparison
120 | if (challenge = (*challenger) (stream,&clen))
| ^
| ==
./auth_md5.c:155:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
155 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:155:12: note: place parentheses around the assignment to silence this warning
155 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
| ^
| ( )
./auth_md5.c:155:12: note: use '==' to turn this assignment into an equality comparison
155 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
| ^
| ==
./auth_md5.c:157:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
157 | if (hash = strrchr (user,' ')) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~
./auth_md5.c:157:14: note: place parentheses around the assignment to silence this warning
157 | if (hash = strrchr (user,' ')) {
| ^
| ( )
./auth_md5.c:157:14: note: use '==' to turn this assignment into an equality comparison
157 | if (hash = strrchr (user,' ')) {
| ^
| ==
./auth_md5.c:160:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
160 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_md5.c:160:20: note: place parentheses around the assignment to silence this warning
160 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ( )
./auth_md5.c:160:20: note: use '==' to turn this assignment into an equality comparison
160 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ==
./auth_md5.c:162:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
162 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:162:13: note: place parentheses around the assignment to silence this warning
162 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ^
| ( )
./auth_md5.c:162:13: note: use '==' to turn this assignment into an equality comparison
162 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ^
| ==
./auth_md5.c:195:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
195 | read (fd,buf = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:197:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
197 | for (s = user; *s && ((*s < 'A') || (*s > 'Z')); s++);
| ^ ~~~~
./auth_md5.c:199:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
199 | lusr = *s ? lcase (cpystr (user)) : NIL;
| ^~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:200:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
200 | for (s = strtok_r ((char *) buf,"\015\012",&r),lret = NIL; s;
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:201:5: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
201 | s = ret ? NIL : strtok_r (NIL,"\015\012",&r))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:203:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
203 | if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) {
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:203:35: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
203 | if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) {
| ^ ~~~~~~~~~~~~~~~
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
205 | if (!strcmp (s,user)) ret = cpystr (t);
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:205:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
205 | if (!strcmp (s,user)) ret = cpystr (t);
| ^
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
206 | else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
206 | else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
| ^~~~
/usr/include/string.h:85:39: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:209:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
209 | if (!ret && lret) ret = cpystr (lret);
| ^~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_md5.c:238:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
238 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_md5.c:238:16: note: place parentheses around the assignment to silence this warning
238 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ( )
./auth_md5.c:238:16: note: use '==' to turn this assignment into an equality comparison
238 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ==
./auth_md5.c:240:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
240 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:240:9: note: place parentheses around the assignment to silence this warning
240 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ^
| ( )
./auth_md5.c:240:9: note: use '==' to turn this assignment into an equality comparison
240 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
| ^
| ==
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:3:
./auth_pla.c:66:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
66 | if (challenge = (*challenger) (stream,&clen)) {
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:66:17: note: place parentheses around the assignment to silence this warning
66 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ( )
./auth_pla.c:66:17: note: use '==' to turn this assignment into an equality comparison
66 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ==
./auth_pla.c:94:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
94 | if (challenge = (*challenger) (stream,&clen))
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:94:16: note: place parentheses around the assignment to silence this warning
94 | if (challenge = (*challenger) (stream,&clen))
| ^
| ( )
./auth_pla.c:94:16: note: use '==' to turn this assignment into an equality comparison
94 | if (challenge = (*challenger) (stream,&clen))
| ^
| ==
./auth_pla.c:123:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
123 | if (aid = (*responder) ("",0,&len)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:123:11: note: place parentheses around the assignment to silence this warning
123 | if (aid = (*responder) ("",0,&len)) {
| ^
| ( )
./auth_pla.c:123:11: note: use '==' to turn this assignment into an equality comparison
123 | if (aid = (*responder) ("",0,&len)) {
| ^
| ==
In file included from osdep.c:49:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_log.c:66:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
66 | if (challenge = (*challenger) (stream,&clen)) {
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:66:17: note: place parentheses around the assignment to silence this warning
66 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ( )
./auth_log.c:66:17: note: use '==' to turn this assignment into an equality comparison
66 | if (challenge = (*challenger) (stream,&clen)) {
| ^
| ==
./auth_log.c:81:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
81 | if (challenge = (*challenger) (stream,&clen))
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:81:16: note: place parentheses around the assignment to silence this warning
81 | if (challenge = (*challenger) (stream,&clen))
| ^
| ( )
./auth_log.c:81:16: note: use '==' to turn this assignment into an equality comparison
81 | if (challenge = (*challenger) (stream,&clen))
| ^
| ==
./auth_log.c:107:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
107 | if (user = (*responder) (PWD_USER,sizeof (PWD_USER),NIL)) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:107:12: note: place parentheses around the assignment to silence this warning
107 | if (user = (*responder) (PWD_USER,sizeof (PWD_USER),NIL)) {
| ^
| ( )
./auth_log.c:107:12: note: use '==' to turn this assignment into an equality comparison
107 | if (user = (*responder) (PWD_USER,sizeof (PWD_USER),NIL)) {
| ^
| ==
./auth_log.c:108:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
108 | if (pass = (*responder) (PWD_PWD,sizeof (PWD_PWD),NIL)) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:108:14: note: place parentheses around the assignment to silence this warning
108 | if (pass = (*responder) (PWD_PWD,sizeof (PWD_PWD),NIL)) {
| ^
| ( )
./auth_log.c:108:14: note: use '==' to turn this assignment into an equality comparison
108 | if (pass = (*responder) (PWD_PWD,sizeof (PWD_PWD),NIL)) {
| ^
| ==
./auth_log.c:110:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
110 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_log.c:110:20: note: place parentheses around the assignment to silence this warning
110 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ( )
./auth_log.c:110:20: note: use '==' to turn this assignment into an equality comparison
110 | if (authuser = strchr (user,'*')) *authuser++ = '\0';
| ^
| ==
In file included from osdep.c:49:
./env_unix.c:514:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
514 | if (julian = t->tm_yday -julian)
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~
./env_unix.c:514:14: note: place parentheses around the assignment to silence this warning
514 | if (julian = t->tm_yday -julian)
| ^
| ( )
./env_unix.c:514:14: note: use '==' to turn this assignment into an equality comparison
514 | if (julian = t->tm_yday -julian)
| ^
| ==
./env_unix.c:641:33: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
641 | struct passwd *pw = getpwnam (user);
| ^~~~
/usr/include/pwd.h:149:37: note: passing argument to parameter here
149 | struct passwd *getpwnam(const char *);
| ^
In file included from osdep.c:49:
./env_unix.c:645:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
645 | pw = getpwnam (s = lcase (cpystr (user)));
| ^~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
In file included from osdep.c:49:
./env_unix.c:645:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
645 | pw = getpwnam (s = lcase (cpystr (user)));
| ^~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
In file included from osdep.c:49:
./env_unix.c:645:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
645 | pw = getpwnam (s = lcase (cpystr (user)));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/pwd.h:149:37: note: passing argument to parameter here
149 | struct passwd *getpwnam(const char *);
| ^
In file included from osdep.c:49:
./env_unix.c:669:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
669 | if (s = auth_md5_pwd (user)) {
| ~~^~~~~~~~~~~~~~~~~~~~~
./env_unix.c:669:11: note: place parentheses around the assignment to silence this warning
669 | if (s = auth_md5_pwd (user)) {
| ^
| ( )
./env_unix.c:669:11: note: use '==' to turn this assignment into an equality comparison
669 | if (s = auth_md5_pwd (user)) {
| ^
| ==
./env_unix.c:671:16: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
671 | ret = pwuser (user); /* validated, get passwd entry for user */
| ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
638 | static struct passwd *pwuser (unsigned char *user)
| ^
./env_unix.c:676:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
676 | else if (pw = pwuser (user)) {/* can get user? */
| ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
638 | static struct passwd *pwuser (unsigned char *user)
| ^
./env_unix.c:676:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
676 | else if (pw = pwuser (user)) {/* can get user? */
| ~~~^~~~~~~~~~~~~~~
./env_unix.c:676:15: note: place parentheses around the assignment to silence this warning
676 | else if (pw = pwuser (user)) {/* can get user? */
| ^
| ( )
./env_unix.c:676:15: note: use '==' to turn this assignment into an equality comparison
676 | else if (pw = pwuser (user)) {/* can get user? */
| ^
| ==
./env_unix.c:679:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
679 | (*pwd == ' ') && pwd[1] && (ret = pwuser (s)))
| ^
./env_unix.c:638:46: note: passing argument to parameter 'user' here
638 | static struct passwd *pwuser (unsigned char *user)
| ^
./env_unix.c:710:58: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
710 | else if (valpwd (authuser,pwd,argc,argv)) pw = pwuser (user);
| ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
638 | static struct passwd *pwuser (unsigned char *user)
| ^
./env_unix.c:728:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
728 | return pw_login (pwuser (user),authuser,user,NIL,argc,argv);
| ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
638 | static struct passwd *pwuser (unsigned char *user)
| ^
./env_unix.c:767:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
767 | if (user && auser && *auser && compare_cstring (auser,user)) {
| ^~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:767:59: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
767 | if (user && auser && *auser && compare_cstring (auser,user)) {
| ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:770:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
770 | if (!compare_cstring (auser,*t++))
| ^~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:770:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
770 | if (!compare_cstring (auser,*t++))
| ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1057:47: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1057 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ?
| ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1057:54: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1057 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ?
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1067:63: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1067 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) {
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1067:67: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1067 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1087:55: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1087 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) {
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1087:59: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1087 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1101:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1101 | if (!compare_cstring (name,"INBOX")) name = "INBOX";
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1101:29: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1101 | if (!compare_cstring (name,"INBOX")) name = "INBOX";
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1115:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1115 | if (!compare_cstring (name+1,"NBOX")) {
| ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1115:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1115 | if (!compare_cstring (name+1,"NBOX")) {
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1251:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1251 | if (s = strrchr (base->lock,'/')) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1251:11: note: place parentheses around the assignment to silence this warning
1251 | if (s = strrchr (base->lock,'/')) {
| ^
| ( )
./env_unix.c:1251:11: note: use '==' to turn this assignment into an equality comparison
1251 | if (s = strrchr (base->lock,'/')) {
| ^
| ==
./env_unix.c:1565:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1565 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1565:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1565 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) {
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1579:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1579 | if (!compare_cstring (s,"set new-mailbox-format") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1579:28: warning: passing 'char[23]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1579 | if (!compare_cstring (s,"set new-mailbox-format") ||
| ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1580:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1580 | !compare_cstring (s,"set new-folder-format")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1580:28: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1580 | !compare_cstring (s,"set new-folder-format")) {
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1581:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1581 | if (!compare_cstring (k,"same-as-inbox")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1581:30: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1581 | if (!compare_cstring (k,"same-as-inbox")) {
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1582:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1582 | if (d = mail_valid (NIL,"INBOX",NIL)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1582:14: note: place parentheses around the assignment to silence this warning
1582 | if (d = mail_valid (NIL,"INBOX",NIL)) {
| ^
| ( )
./env_unix.c:1582:14: note: use '==' to turn this assignment into an equality comparison
1582 | if (d = mail_valid (NIL,"INBOX",NIL)) {
| ^
| ==
./env_unix.c:1583:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1583 | if (!compare_cstring (d->name,"mbox"))
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1583:33: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1583 | if (!compare_cstring (d->name,"mbox"))
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1586:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1586 | else if (!compare_cstring (d->name,"dummy")) d = NIL;
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1586:38: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1586 | else if (!compare_cstring (d->name,"dummy")) d = NIL;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1590:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1590 | else if (!compare_cstring (k,"system-standard"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1590:35: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1590 | else if (!compare_cstring (k,"system-standard"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1593:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1593 | if (!compare_cstring (k,"mbox")) k = "unix";
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1593:32: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1593 | if (!compare_cstring (k,"mbox")) k = "unix";
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1595:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1595 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1595:14: note: place parentheses around the assignment to silence this warning
1595 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
| ^
| ( )
./env_unix.c:1595:14: note: use '==' to turn this assignment into an equality comparison
1595 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
| ^
| ==
./env_unix.c:1604:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1604 | if (!compare_cstring (s,"set empty-mailbox-format") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1604:28: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1604 | if (!compare_cstring (s,"set empty-mailbox-format") ||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1605:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1605 | !compare_cstring (s,"set empty-folder-format")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1605:28: warning: passing 'char[24]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1605 | !compare_cstring (s,"set empty-folder-format")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1606:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1606 | if (!compare_cstring (k,"invalid")) appendProto = NIL;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1606:30: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1606 | if (!compare_cstring (k,"invalid")) appendProto = NIL;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1607:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1607 | else if (!compare_cstring (k,"same-as-inbox"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1607:35: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1607 | else if (!compare_cstring (k,"same-as-inbox"))
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1609:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1609 | compare_cstring (d->name,"dummy")) ?
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1609:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1609 | compare_cstring (d->name,"dummy")) ?
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1611:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1611 | else if (!compare_cstring (k,"system-standard"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1611:35: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1611 | else if (!compare_cstring (k,"system-standard"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1615:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1615 | d && compare_cstring (d->name,k); d = d->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1615:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1615 | d && compare_cstring (d->name,k); d = d->next);
| ^
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1626:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1626 | if (!compare_cstring (s,"set local-host")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1626:26: warning: passing 'char[15]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1626 | if (!compare_cstring (s,"set local-host")) {
| ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1630:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1630 | else if (!compare_cstring (s,"set news-active-file")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1630:31: warning: passing 'char[21]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1630 | else if (!compare_cstring (s,"set news-active-file")) {
| ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1634:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1634 | else if (!compare_cstring (s,"set news-spool-directory")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1634:31: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1634 | else if (!compare_cstring (s,"set news-spool-directory")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1638:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1638 | else if (!compare_cstring (s,"set mh-path"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1638:31: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1638 | else if (!compare_cstring (s,"set mh-path"))
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1640:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1640 | else if (!compare_cstring (s,"set mh-allow-inbox"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1640:31: warning: passing 'char[19]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1640 | else if (!compare_cstring (s,"set mh-allow-inbox"))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1642:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1642 | else if (!compare_cstring (s,"set news-state-file")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1642:31: warning: passing 'char[20]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1642 | else if (!compare_cstring (s,"set news-state-file")) {
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1646:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1646 | else if (!compare_cstring (s,"set ftp-export-directory")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1646:31: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1646 | else if (!compare_cstring (s,"set ftp-export-directory")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1650:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1650 | else if (!compare_cstring (s,"set public-home-directory")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1650:31: warning: passing 'char[26]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1650 | else if (!compare_cstring (s,"set public-home-directory")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1654:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1654 | else if (!compare_cstring (s,"set shared-home-directory")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1654:31: warning: passing 'char[26]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1654 | else if (!compare_cstring (s,"set shared-home-directory")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1658:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1658 | else if (!compare_cstring (s,"set system-inbox")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1658:31: warning: passing 'char[17]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1658 | else if (!compare_cstring (s,"set system-inbox")) {
| ^~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1662:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1662 | else if (!compare_cstring (s,"set mail-subdirectory")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1662:31: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1662 | else if (!compare_cstring (s,"set mail-subdirectory")) {
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1666:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1666 | else if (!compare_cstring (s,"set from-widget"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1666:31: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1666 | else if (!compare_cstring (s,"set from-widget"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1668:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1668 | compare_cstring (k,"header-only") ?
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1668:26: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1668 | compare_cstring (k,"header-only") ?
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1671:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1671 | else if (!compare_cstring (s,"set rsh-command"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1671:31: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1671 | else if (!compare_cstring (s,"set rsh-command"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1673:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1673 | else if (!compare_cstring (s,"set rsh-path"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1673:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1673 | else if (!compare_cstring (s,"set rsh-path"))
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1675:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1675 | else if (!compare_cstring (s,"set ssh-command"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1675:31: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1675 | else if (!compare_cstring (s,"set ssh-command"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1677:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1677 | else if (!compare_cstring (s,"set ssh-path"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1677:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1677 | else if (!compare_cstring (s,"set ssh-path"))
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1679:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1679 | else if (!compare_cstring (s,"set tcp-open-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1679:31: warning: passing 'char[21]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1679 | else if (!compare_cstring (s,"set tcp-open-timeout"))
| ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1681:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1681 | else if (!compare_cstring (s,"set tcp-read-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1681:31: warning: passing 'char[21]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1681 | else if (!compare_cstring (s,"set tcp-read-timeout"))
| ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1683:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1683 | else if (!compare_cstring (s,"set tcp-write-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1683:31: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1683 | else if (!compare_cstring (s,"set tcp-write-timeout"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1685:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1685 | else if (!compare_cstring (s,"set rsh-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1685:31: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1685 | else if (!compare_cstring (s,"set rsh-timeout"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1687:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1687 | else if (!compare_cstring (s,"set ssh-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1687:31: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1687 | else if (!compare_cstring (s,"set ssh-timeout"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1689:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1689 | else if (!compare_cstring (s,"set maximum-login-trials"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1689:31: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1689 | else if (!compare_cstring (s,"set maximum-login-trials"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1691:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1691 | else if (!compare_cstring (s,"set lookahead"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1691:31: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1691 | else if (!compare_cstring (s,"set lookahead"))
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1693:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1693 | else if (!compare_cstring (s,"set prefetch"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1693:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1693 | else if (!compare_cstring (s,"set prefetch"))
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1695:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1695 | else if (!compare_cstring (s,"set close-on-error"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1695:31: warning: passing 'char[19]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1695 | else if (!compare_cstring (s,"set close-on-error"))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1697:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1697 | else if (!compare_cstring (s,"set imap-port"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1697:31: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1697 | else if (!compare_cstring (s,"set imap-port"))
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1699:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1699 | else if (!compare_cstring (s,"set pop3-port"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1699:31: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1699 | else if (!compare_cstring (s,"set pop3-port"))
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1701:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1701 | else if (!compare_cstring (s,"set uid-lookahead"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1701:31: warning: passing 'char[18]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1701 | else if (!compare_cstring (s,"set uid-lookahead"))
| ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1703:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1703 | else if (!compare_cstring (s,"set try-ssl-first"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1703:31: warning: passing 'char[18]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1703 | else if (!compare_cstring (s,"set try-ssl-first"))
| ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1706:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1706 | else if (!compare_cstring (s,"set mailbox-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1706:31: warning: passing 'char[23]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1706 | else if (!compare_cstring (s,"set mailbox-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1708:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1708 | else if (!compare_cstring (s,"set directory-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1708:31: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1708 | else if (!compare_cstring (s,"set directory-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1710:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1710 | else if (!compare_cstring (s,"set lock-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1710:31: warning: passing 'char[20]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1710 | else if (!compare_cstring (s,"set lock-protection"))
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1712:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1712 | else if (!compare_cstring (s,"set ftp-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1712:31: warning: passing 'char[19]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1712 | else if (!compare_cstring (s,"set ftp-protection"))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1714:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1714 | else if (!compare_cstring (s,"set public-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1714:31: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1714 | else if (!compare_cstring (s,"set public-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1716:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1716 | else if (!compare_cstring (s,"set shared-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1716:31: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1716 | else if (!compare_cstring (s,"set shared-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1718:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1718 | else if (!compare_cstring (s,"set ftp-directory-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1718:31: warning: passing 'char[29]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1718 | else if (!compare_cstring (s,"set ftp-directory-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1720:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1720 | else if (!compare_cstring (s,"set public-directory-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1720:31: warning: passing 'char[32]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1720 | else if (!compare_cstring (s,"set public-directory-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1722:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1722 | else if (!compare_cstring (s,"set shared-directory-protection"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1722:31: warning: passing 'char[32]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1722 | else if (!compare_cstring (s,"set shared-directory-protection"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1724:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1724 | else if (!compare_cstring (s,"set dot-lock-file-timeout"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1724:31: warning: passing 'char[26]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1724 | else if (!compare_cstring (s,"set dot-lock-file-timeout"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1726:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1726 | else if (!compare_cstring (s,"set disable-fcntl-locking"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1726:31: warning: passing 'char[26]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1726 | else if (!compare_cstring (s,"set disable-fcntl-locking"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1728:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1728 | else if (!compare_cstring (s,"set disable-lock-warning"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1728:31: warning: passing 'char[25]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1728 | else if (!compare_cstring (s,"set disable-lock-warning"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1730:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1730 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1730:31: warning: passing 'char[35]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1730 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1732:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1732 | else if (!compare_cstring (s,"set hide-dot-files"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1732:31: warning: passing 'char[19]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1732 | else if (!compare_cstring (s,"set hide-dot-files"))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1734:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1734 | else if (!compare_cstring (s,"set list-maximum-level"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1734:31: warning: passing 'char[23]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1734 | else if (!compare_cstring (s,"set list-maximum-level"))
| ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1736:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1736 | else if (!compare_cstring (s,"set trust-dns"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1736:31: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1736 | else if (!compare_cstring (s,"set trust-dns"))
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1738:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1738 | else if (!compare_cstring (s,"set sasl-uses-ptr-name"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1738:31: warning: passing 'char[23]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1738 | else if (!compare_cstring (s,"set sasl-uses-ptr-name"))
| ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1740:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1740 | else if (!compare_cstring (s,"set network-filesystem-stat-bug"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1740:31: warning: passing 'char[32]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1740 | else if (!compare_cstring (s,"set network-filesystem-stat-bug"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1742:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1742 | else if (!compare_cstring (s,"set nntp-range"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1742:31: warning: passing 'char[15]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1742 | else if (!compare_cstring (s,"set nntp-range"))
| ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1746:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1746 | if (!compare_cstring (s,"set black-box-directory") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1746:28: warning: passing 'char[24]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1746 | if (!compare_cstring (s,"set black-box-directory") &&
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1748:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1748 | else if (!compare_cstring(s,"set black-box-default-home-directory")&&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1748:32: warning: passing 'char[37]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1748 | else if (!compare_cstring(s,"set black-box-default-home-directory")&&
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1751:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1751 | else if (!compare_cstring (s,"set anonymous-home-directory") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1751:33: warning: passing 'char[29]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1751 | else if (!compare_cstring (s,"set anonymous-home-directory") &&
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1758:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1758 | else if (!compare_cstring (s,"set CA-certificate-path"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1758:33: warning: passing 'char[24]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1758 | else if (!compare_cstring (s,"set CA-certificate-path"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1760:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1760 | else if (!compare_cstring (s,"set disable-plaintext"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1760:33: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1760 | else if (!compare_cstring (s,"set disable-plaintext"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1762:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1762 | else if (!compare_cstring (s,"set allowed-login-attempts"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1762:33: warning: passing 'char[27]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1762 | else if (!compare_cstring (s,"set allowed-login-attempts"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1764:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1764 | else if (!compare_cstring (s,"set chroot-server"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1764:33: warning: passing 'char[18]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1764 | else if (!compare_cstring (s,"set chroot-server"))
| ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1766:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1766 | else if (!compare_cstring (s,"set restrict-mailbox-access"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1766:33: warning: passing 'char[28]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1766 | else if (!compare_cstring (s,"set restrict-mailbox-access"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1768:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1768 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1768:32: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1768 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1769:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1769 | else if (!compare_cstring (k,"otherusers"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1769:37: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1769 | else if (!compare_cstring (k,"otherusers"))
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1771:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1771 | else if (!compare_cstring (k,"all")) restrictBox = -1;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1771:37: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1771 | else if (!compare_cstring (k,"all")) restrictBox = -1;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1773:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1773 | else if (!compare_cstring (s,"set advertise-the-world"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1773:33: warning: passing 'char[24]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1773 | else if (!compare_cstring (s,"set advertise-the-world"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1775:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1775 | else if (!compare_cstring (s,"set limited-advertise"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1775:33: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1775 | else if (!compare_cstring (s,"set limited-advertise"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1778:7: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1778 | (s,"set disable-automatic-shared-namespaces"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1778:9: warning: passing 'char[40]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1778 | (s,"set disable-automatic-shared-namespaces"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1780:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1780 | else if (!compare_cstring (s,"set allow-user-config"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1780:33: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1780 | else if (!compare_cstring (s,"set allow-user-config"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1782:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1782 | else if (!compare_cstring (s,"set allow-reverse-dns"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1782:33: warning: passing 'char[22]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1782 | else if (!compare_cstring (s,"set allow-reverse-dns"))
| ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1784:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1784 | else if (!compare_cstring (s,"set k5-cp-uses-service-name"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1784:33: warning: passing 'char[28]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1784 | else if (!compare_cstring (s,"set k5-cp-uses-service-name"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1788:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1788 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:49:
./env_unix.c:1788:33: warning: passing 'char[30]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1788 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
In file included from osdep.c:52:
In file included from ./tcp_unix.c:29:
./ip_unix.c:136:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
136 | (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,hints,&ai))) {
| ^~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
In file included from osdep.c:52:
In file included from ./tcp_unix.c:29:
./ip_unix.c:136:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
136 | (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,hints,&ai))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/netdb.h:251:30: note: passing argument to parameter here
251 | int getaddrinfo(const char *, const char *,
| ^
In file included from osdep.c:52:
In file included from ./tcp_unix.c:29:
./ip_unix.c:253:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
253 | (!getaddrinfo (lcase (strcpy (lcname,name)),NIL,hints,&ai))) {
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
In file included from osdep.c:52:
In file included from ./tcp_unix.c:29:
./ip_unix.c:253:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
253 | (!getaddrinfo (lcase (strcpy (lcname,name)),NIL,hints,&ai))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/netdb.h:251:30: note: passing argument to parameter here
251 | int getaddrinfo(const char *, const char *,
| ^
In file included from osdep.c:52:
./tcp_unix.c:175:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
175 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:175:13: note: place parentheses around the assignment to silence this warning
175 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
| ^
| ( )
./tcp_unix.c:175:13: note: use '==' to turn this assignment into an equality comparison
175 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
| ^
| ==
./tcp_unix.c:215:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
215 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
| ~~~~~~~~~~~~~^~~~~
./tcp_unix.c:215:22: note: place parentheses around the assignment to silence this warning
215 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
| ^
| ( )
./tcp_unix.c:215:22: note: use '==' to turn this assignment into an equality comparison
215 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
| ^
| ==
./tcp_unix.c:364:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
364 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:364:13: note: place parentheses around the assignment to silence this warning
364 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
| ^
| ( )
./tcp_unix.c:364:13: note: use '==' to turn this assignment into an equality comparison
364 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
| ^
| ==
./tcp_unix.c:464:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
464 | char *ret = tcp_getline_work (stream,&n,&contd);
| ^~~~~~
./tcp_unix.c:59:17: note: passing argument to parameter 'contd' here
59 | long *contd);
| ^
./tcp_unix.c:472:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
472 | ret = tcp_getline_work (stream,&n,&contd);
| ^~~~~~
./tcp_unix.c:59:17: note: passing argument to parameter 'contd' here
59 | long *contd);
| ^
./tcp_unix.c:540:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
540 | if (n = min (size,stream->ictr)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:540:9: note: place parentheses around the assignment to silence this warning
540 | if (n = min (size,stream->ictr)) {
| ^
| ( )
./tcp_unix.c:540:9: note: use '==' to turn this assignment into an equality comparison
540 | if (n = min (size,stream->ictr)) {
| ^
| ==
./tcp_unix.c:858:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
858 | if (v = strchr (s,' ')) *v = '\0';
| ~~^~~~~~~~~~~~~~~~
./tcp_unix.c:858:8: note: place parentheses around the assignment to silence this warning
858 | if (v = strchr (s,' ')) *v = '\0';
| ^
| ( )
./tcp_unix.c:858:8: note: use '==' to turn this assignment into an equality comparison
858 | if (v = strchr (s,' ')) *v = '\0';
| ^
| ==
./tcp_unix.c:985:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
985 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:985:11: note: place parentheses around the assignment to silence this warning
985 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
| ^
| ( )
./tcp_unix.c:985:11: note: use '==' to turn this assignment into an equality comparison
985 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
| ^
| ==
osdep.c:161:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
161 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
| ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
162 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
163 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
164 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
165 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
166 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ?
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
167 | getpwnam (name) : NIL) {
| ~~~~~~~~~~~~~~~~~~~~~
osdep.c:161:10: note: place parentheses around the assignment to silence this warning
161 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
| ^
| (
162 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) &&
163 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) &&
164 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) &&
165 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) &&
166 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ?
167 | getpwnam (name) : NIL) {
|
| )
osdep.c:161:10: note: use '==' to turn this assignment into an equality comparison
161 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
| ^
| ==
osdep.c:457:12: warning: 'TLSv1_client_method' is deprecated [-Wdeprecated-declarations]
457 | TLSv1_client_method () :
| ^
/usr/include/openssl/ssl.h:1899:1: note: 'TLSv1_client_method' has been explicitly marked deprecated here
1899 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void))
| ^
/usr/include/openssl/opensslconf.h:157:34: note: expanded from macro 'DEPRECATEDIN_1_1_0'
157 | # define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
| ^
/usr/include/openssl/opensslconf.h:115:55: note: expanded from macro 'DECLARE_DEPRECATED'
115 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
| ^
osdep.c:468:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
468 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:468:9: note: place parentheses around the assignment to silence this warning
468 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
| ^
| ( )
osdep.c:468:9: note: use '==' to turn this assignment into an equality comparison
468 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
| ^
| ==
osdep.c:472:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
472 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:472:14: note: place parentheses around the assignment to silence this warning
472 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
| ^
| ( )
osdep.c:472:14: note: use '==' to turn this assignment into an equality comparison
472 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
| ^
| ==
osdep.c:481:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
481 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
482 | NIL,NIL,"")) {
| ~~~~~~~~~~~
osdep.c:481:15: note: place parentheses around the assignment to silence this warning
481 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
| ^
| (
482 | NIL,NIL,"")) {
|
| )
osdep.c:481:15: note: use '==' to turn this assignment into an equality comparison
481 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
| ^
| ==
osdep.c:507:43: warning: pointer type mismatch ('X509_NAME *' (aka 'struct X509_name_st *') and 'char *') [-Wpointer-type-mismatch]
507 | if (scq) return (*scq) (err,host,cert ? X509_get_subject_name(cert) : "???") ? NIL : "";
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
osdep.c:509:45: warning: pointer type mismatch ('X509_NAME *' (aka 'struct X509_name_st *') and 'char *') [-Wpointer-type-mismatch]
509 | sprintf (tmp,"*%.128s: %.255s",err,cert ? X509_get_subject_name(cert) : "???");
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
osdep.c:509:40: warning: format specifies type 'char *' but the argument has type 'void *' [-Wformat]
509 | sprintf (tmp,"*%.128s: %.255s",err,cert ? X509_get_subject_name(cert) : "???");
| ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:561:24: warning: incompatible pointer types passing 'X509_NAME *' (aka 'struct X509_name_st *') to parameter of type 'const char *' [-Wincompatible-pointer-types]
561 | else if (s = strstr (X509_get_subject_name(cert),"/CN=")) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/string.h:125:26: note: passing argument to parameter here
125 | char *strstr(const char *, const char *) __pure;
| ^
osdep.c:561:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
561 | else if (s = strstr (X509_get_subject_name(cert),"/CN=")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:561:14: note: place parentheses around the assignment to silence this warning
561 | else if (s = strstr (X509_get_subject_name(cert),"/CN=")) {
| ^
| ( )
osdep.c:561:14: note: use '==' to turn this assignment into an equality comparison
561 | else if (s = strstr (X509_get_subject_name(cert),"/CN=")) {
| ^
| ==
osdep.c:562:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
562 | if (t = strchr (s += 4,'/')) *t = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~
osdep.c:562:11: note: place parentheses around the assignment to silence this warning
562 | if (t = strchr (s += 4,'/')) *t = '\0';
| ^
| ( )
osdep.c:562:11: note: use '==' to turn this assignment into an equality comparison
562 | if (t = strchr (s += 4,'/')) *t = '\0';
| ^
| ==
osdep.c:564:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
564 | ret = ssl_compare_hostnames (host,s) ? NIL :
| ^~~~
osdep.c:297:51: note: passing argument to parameter 's' here
297 | static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
| ^
osdep.c:564:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
564 | ret = ssl_compare_hostnames (host,s) ? NIL :
| ^
osdep.c:297:68: note: passing argument to parameter 'pat' here
297 | static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
| ^
osdep.c:573:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
573 | (name->type = GEN_DNS) && (s = name->d.ia5->data) &&
| ^ ~~~~~~~~~~~~~~~~~
osdep.c:574:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
574 | ssl_compare_hostnames (host,s)) ret = NIL;
| ^~~~
osdep.c:297:51: note: passing argument to parameter 's' here
297 | static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
| ^
osdep.c:574:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
574 | ssl_compare_hostnames (host,s)) ret = NIL;
| ^
osdep.c:297:68: note: passing argument to parameter 'pat' here
297 | static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
| ^
osdep.c:615:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
615 | char *ret = ssl_getline_work (stream,&n,&contd);
| ^~~~~~
osdep.c:299:17: note: passing argument to parameter 'contd' here
299 | long *contd);
| ^
osdep.c:623:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
623 | ret = ssl_getline_work (stream,&n,&contd);
| ^~~~~~
osdep.c:299:17: note: passing argument to parameter 'contd' here
299 | long *contd);
| ^
osdep.c:940:12: warning: 'TLSv1_server_method' is deprecated [-Wdeprecated-declarations]
940 | TLSv1_server_method () :
| ^
/usr/include/openssl/ssl.h:1898:1: note: 'TLSv1_server_method' has been explicitly marked deprecated here
1898 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_server_method(void))
| ^
/usr/include/openssl/opensslconf.h:157:34: note: expanded from macro 'DEPRECATEDIN_1_1_0'
157 | # define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
| ^
/usr/include/openssl/opensslconf.h:115:55: note: expanded from macro 'DECLARE_DEPRECATED'
115 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
| ^
osdep.c:992:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
992 | while (i = ERR_get_error ()) /* SSL failure */
| ~~^~~~~~~~~~~~~~~~~~
osdep.c:992:12: note: place parentheses around the assignment to silence this warning
992 | while (i = ERR_get_error ()) /* SSL failure */
| ^
| ( )
osdep.c:992:12: note: use '==' to turn this assignment into an equality comparison
992 | while (i = ERR_get_error ()) /* SSL failure */
| ^
| ==
osdep.c:1011:17: warning: 'RSA_generate_key' is deprecated [-Wdeprecated-declarations]
1011 | if (!(key = RSA_generate_key (export ? keylength : 1024,RSA_F4,NIL,NIL))) {
| ^
/usr/include/openssl/rsa.h:235:1: note: 'RSA_generate_key' has been explicitly marked deprecated here
235 | DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
| ^
/usr/include/openssl/opensslconf.h:169:34: note: expanded from macro 'DEPRECATEDIN_0_9_8'
169 | # define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
| ^
/usr/include/openssl/opensslconf.h:115:55: note: expanded from macro 'DECLARE_DEPRECATED'
115 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
| ^
osdep.c:1014:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1014 | while (i = ERR_get_error ())
| ~~^~~~~~~~~~~~~~~~~~
osdep.c:1014:16: note: place parentheses around the assignment to silence this warning
1014 | while (i = ERR_get_error ())
| ^
| ( )
osdep.c:1014:16: note: use '==' to turn this assignment into an equality comparison
1014 | while (i = ERR_get_error ())
| ^
| ==
259 warnings generated.
========================================================================
Building OS-dependent module
If you get No such file error messages for files x509.h, ssl.h,
pem.h, buffer.h, bio.h, and crypto.h, that means that OpenSSL
is not installed on your system. Either install OpenSSL first
or build with command: make bsf SSLTYPE=none
========================================================================
cc -c `cat CFLAGS` mail.c
mail.c:212:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
212 | if (stream->cache[i] = stream->cache[msgno])
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:212:28: note: place parentheses around the assignment to silence this warning
212 | if (stream->cache[i] = stream->cache[msgno])
| ^
| ( )
mail.c:212:28: note: use '==' to turn this assignment into an equality comparison
212 | if (stream->cache[i] = stream->cache[msgno])
| ^
| ==
mail.c:378:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
378 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:378:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
378 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:383:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
383 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:383:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
383 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:385:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
385 | if (ret = (void *) d) d->flags &= ~DR_DISABLE;
| ~~~~^~~~~~~~~~~~
mail.c:385:13: note: place parentheses around the assignment to silence this warning
385 | if (ret = (void *) d) d->flags &= ~DR_DISABLE;
| ^
| ( )
mail.c:385:13: note: use '==' to turn this assignment into an equality comparison
385 | if (ret = (void *) d) d->flags &= ~DR_DISABLE;
| ^
| ==
mail.c:388:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
388 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:388:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
388 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:390:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
390 | if (ret = (void *) d) d->flags |= DR_DISABLE;
| ~~~~^~~~~~~~~~~~
mail.c:390:13: note: place parentheses around the assignment to silence this warning
390 | if (ret = (void *) d) d->flags |= DR_DISABLE;
| ^
| ( )
mail.c:390:13: note: use '==' to turn this assignment into an equality comparison
390 | if (ret = (void *) d) d->flags |= DR_DISABLE;
| ^
| ==
mail.c:394:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
394 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:394:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
394 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:395:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
395 | if (ret = (void *) a) a->flags &= ~AU_DISABLE;
| ~~~~^~~~~~~~~~~~
mail.c:395:13: note: place parentheses around the assignment to silence this warning
395 | if (ret = (void *) a) a->flags &= ~AU_DISABLE;
| ^
| ( )
mail.c:395:13: note: use '==' to turn this assignment into an equality comparison
395 | if (ret = (void *) a) a->flags &= ~AU_DISABLE;
| ^
| ==
mail.c:399:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
399 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:399:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
399 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:400:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
400 | if (ret = (void *) a) a->flags |= AU_DISABLE;
| ~~~~^~~~~~~~~~~~
mail.c:400:13: note: place parentheses around the assignment to silence this warning
400 | if (ret = (void *) a) a->flags |= AU_DISABLE;
| ^
| ( )
mail.c:400:13: note: use '==' to turn this assignment into an equality comparison
400 | if (ret = (void *) a) a->flags |= AU_DISABLE;
| ^
| ==
mail.c:404:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
404 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:404:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
404 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:405:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
405 | if (ret = (void *) a) a->flags &= ~AU_HIDE;
| ~~~~^~~~~~~~~~~~
mail.c:405:13: note: place parentheses around the assignment to silence this warning
405 | if (ret = (void *) a) a->flags &= ~AU_HIDE;
| ^
| ( )
mail.c:405:13: note: use '==' to turn this assignment into an equality comparison
405 | if (ret = (void *) a) a->flags &= ~AU_HIDE;
| ^
| ==
mail.c:409:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
409 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:409:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
409 | a && compare_cstring (a->name,(char *) value); a = a->next);
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:410:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
410 | if (ret = (void *) a) a->flags |= AU_HIDE;
| ~~~~^~~~~~~~~~~~
mail.c:410:13: note: place parentheses around the assignment to silence this warning
410 | if (ret = (void *) a) a->flags |= AU_HIDE;
| ^
| ( )
mail.c:410:13: note: use '==' to turn this assignment into an equality comparison
410 | if (ret = (void *) a) a->flags |= AU_HIDE;
| ^
| ==
mail.c:644:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
644 | if (r = smtp_parameters (function,value)) ret = r;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:644:11: note: place parentheses around the assignment to silence this warning
644 | if (r = smtp_parameters (function,value)) ret = r;
| ^
| ( )
mail.c:644:11: note: use '==' to turn this assignment into an equality comparison
644 | if (r = smtp_parameters (function,value)) ret = r;
| ^
| ==
mail.c:645:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
645 | if (r = env_parameters (function,value)) ret = r;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:645:11: note: place parentheses around the assignment to silence this warning
645 | if (r = env_parameters (function,value)) ret = r;
| ^
| ( )
mail.c:645:11: note: use '==' to turn this assignment into an equality comparison
645 | if (r = env_parameters (function,value)) ret = r;
| ^
| ==
mail.c:646:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
646 | if (r = tcp_parameters (function,value)) ret = r;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:646:11: note: place parentheses around the assignment to silence this warning
646 | if (r = tcp_parameters (function,value)) ret = r;
| ^
| ( )
mail.c:646:11: note: use '==' to turn this assignment into an equality comparison
646 | if (r = tcp_parameters (function,value)) ret = r;
| ^
| ==
mail.c:648:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
648 | if (r = (*stream->dtb->parameters) (function,value)) ret = r;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:648:13: note: place parentheses around the assignment to silence this warning
648 | if (r = (*stream->dtb->parameters) (function,value)) ret = r;
| ^
| ( )
mail.c:648:13: note: use '==' to turn this assignment into an equality comparison
648 | if (r = (*stream->dtb->parameters) (function,value)) ret = r;
| ^
| ==
mail.c:652:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
652 | if (r = (d->parameters) (function,value)) ret = r;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:652:13: note: place parentheses around the assignment to silence this warning
652 | if (r = (d->parameters) (function,value)) ret = r;
| ^
| ( )
mail.c:652:13: note: use '==' to turn this assignment into an equality comparison
652 | if (r = (d->parameters) (function,value)) ret = r;
| ^
| ==
mail.c:766:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
766 | if (t = strpbrk (s = t,"/:=")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~
mail.c:766:13: note: place parentheses around the assignment to silence this warning
766 | if (t = strpbrk (s = t,"/:=")) {
| ^
| ( )
mail.c:766:13: note: use '==' to turn this assignment into an equality comparison
766 | if (t = strpbrk (s = t,"/:=")) {
| ^
| ==
mail.c:784:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
784 | if (t = strpbrk (v = t,"/:")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:784:10: note: place parentheses around the assignment to silence this warning
784 | if (t = strpbrk (v = t,"/:")) {
| ^
| ( )
mail.c:784:10: note: use '==' to turn this assignment into an equality comparison
784 | if (t = strpbrk (v = t,"/:")) {
| ^
| ==
mail.c:791:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
791 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:791:26: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
791 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service)
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:792:11: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
792 | lcase (strcpy (mb->service,v));
| ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
mail.c:793:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
793 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:793:31: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
793 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user)
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:795:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
795 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:795:31: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
795 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) &&
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:801:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
801 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:801:26: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
801 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:802:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
802 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:802:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
802 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:803:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
803 | else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:803:31: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
803 | else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:804:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
804 | else if (!compare_cstring (s,"secure")) mb->secflag = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:804:31: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
804 | else if (!compare_cstring (s,"secure")) mb->secflag = T;
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:805:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
805 | else if (!compare_cstring (s,"norsh")) mb->norsh = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:805:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
805 | else if (!compare_cstring (s,"norsh")) mb->norsh = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:806:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
806 | else if (!compare_cstring (s,"loser")) mb->loser = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:806:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
806 | else if (!compare_cstring (s,"loser")) mb->loser = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:807:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
807 | else if (!compare_cstring (s,"tls") && !mb->notlsflag)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:807:31: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
807 | else if (!compare_cstring (s,"tls") && !mb->notlsflag)
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:809:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
809 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:809:31: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
809 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag)
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:811:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
811 | else if (!compare_cstring (s,"notls") && !mb->tlsflag)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:811:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
811 | else if (!compare_cstring (s,"notls") && !mb->tlsflag)
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:813:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
813 | else if (!compare_cstring (s,"tryssl"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:813:31: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
813 | else if (!compare_cstring (s,"tryssl"))
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:815:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
815 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:815:48: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
815 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag)
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:817:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
817 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:817:48: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
817 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert"))
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:820:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
820 | else if (mailssldriver && !compare_cstring (s,"validate-cert"));
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:820:48: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
820 | else if (mailssldriver && !compare_cstring (s,"validate-cert"));
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:823:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
823 | else if (!compare_cstring (s,"imap") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:823:31: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
823 | else if (!compare_cstring (s,"imap") ||
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:824:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
824 | !compare_cstring (s,"nntp") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:824:24: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
824 | !compare_cstring (s,"nntp") ||
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:825:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
825 | !compare_cstring (s,"pop3") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:825:24: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
825 | !compare_cstring (s,"pop3") ||
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:826:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
826 | !compare_cstring (s,"smtp") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:826:24: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
826 | !compare_cstring (s,"smtp") ||
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:827:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
827 | !compare_cstring (s,"submit"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:827:24: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
827 | !compare_cstring (s,"submit"))
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:828:11: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
828 | lcase (strcpy (mb->service,s));
| ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
mail.c:829:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
829 | else if (!compare_cstring (s,"imap2") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:829:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
829 | else if (!compare_cstring (s,"imap2") ||
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:830:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
830 | !compare_cstring (s,"imap2bis") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:830:24: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
830 | !compare_cstring (s,"imap2bis") ||
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:831:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
831 | !compare_cstring (s,"imap4") ||
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:831:24: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
831 | !compare_cstring (s,"imap4") ||
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:832:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
832 | !compare_cstring (s,"imap4rev1"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:832:24: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
832 | !compare_cstring (s,"imap4rev1"))
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:834:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
834 | else if (!compare_cstring (s,"pop"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:834:31: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
834 | else if (!compare_cstring (s,"pop"))
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:919:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
919 | while (d = d->next); /* until at the end */
| ~~^~~~~~~~~
mail.c:919:12: note: place parentheses around the assignment to silence this warning
919 | while (d = d->next); /* until at the end */
| ^
| ( )
mail.c:919:12: note: use '==' to turn this assignment into an equality comparison
919 | while (d = d->next); /* until at the end */
| ^
| ==
mail.c:952:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
952 | while (d = d->next); /* until at the end */
| ~~^~~~~~~~~
mail.c:952:12: note: place parentheses around the assignment to silence this warning
952 | while (d = d->next); /* until at the end */
| ^
| ( )
mail.c:952:12: note: use '==' to turn this assignment into an equality comparison
952 | while (d = d->next); /* until at the end */
| ^
| ==
mail.c:996:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
996 | if (s = strpbrk (mailbox,"\015\012")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:996:9: note: place parentheses around the assignment to silence this warning
996 | if (s = strpbrk (mailbox,"\015\012")) {
| ^
| ( )
mail.c:996:9: note: use '==' to turn this assignment into an equality comparison
996 | if (s = strpbrk (mailbox,"\015\012")) {
| ^
| ==
mail.c:1007:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1007 | if (!compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:1007:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1007 | if (!compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:1012:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1012 | if (s = mail_utf7_valid (mailbox)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1012:9: note: place parentheses around the assignment to silence this warning
1012 | if (s = mail_utf7_valid (mailbox)) {
| ^
| ( )
mail.c:1012:9: note: use '==' to turn this assignment into an equality comparison
1012 | if (s = mail_utf7_valid (mailbox)) {
| ^
| ==
mail.c:1092:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1092 | if (s = mail_utf7_valid (newname)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1092:9: note: place parentheses around the assignment to silence this warning
1092 | if (s = mail_utf7_valid (newname)) {
| ^
| ( )
mail.c:1092:9: note: use '==' to turn this assignment into an equality comparison
1092 | if (s = mail_utf7_valid (newname)) {
| ^
| ==
mail.c:1199:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1199 | if (stream = mail_open (stream,s+1,options)) {
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1199:18: note: place parentheses around the assignment to silence this warning
1199 | if (stream = mail_open (stream,s+1,options)) {
| ^
| ( )
mail.c:1199:18: note: use '==' to turn this assignment into an equality comparison
1199 | if (stream = mail_open (stream,s+1,options)) {
| ^
| ==
mail.c:1216:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1216 | if (stream = mail_open (stream,mb.mailbox,options)) {
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1216:18: note: place parentheses around the assignment to silence this warning
1216 | if (stream = mail_open (stream,mb.mailbox,options)) {
| ^
| ( )
mail.c:1216:18: note: use '==' to turn this assignment into an equality comparison
1216 | if (stream = mail_open (stream,mb.mailbox,options)) {
| ^
| ==
mail.c:1243:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1243 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:1243:13: note: place parentheses around the assignment to silence this warning
1243 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
| ^
| ( )
mail.c:1243:13: note: use '==' to turn this assignment into an equality comparison
1243 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
| ^
| ==
mail.c:1249:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1249 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next);
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:1249:59: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1249 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next);
| ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:1471:48: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1471 | if (stream->dtb && mail_uid_sequence (stream,sequence) &&
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mail.c:1487:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1487 | if (stream->dtb && mail_sequence (stream,sequence) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mail.c:1512:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1512 | ov.date = env->date;
| ^ ~~~~~~~~~
mail.c:1543:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1543 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1543:15: note: place parentheses around the assignment to silence this warning
1543 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1543:15: note: use '==' to turn this assignment into an equality comparison
1543 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1655:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1655 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1655:15: note: place parentheses around the assignment to silence this warning
1655 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1655:15: note: use '==' to turn this assignment into an equality comparison
1655 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1725:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1725 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1725:15: note: place parentheses around the assignment to silence this warning
1725 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1725:15: note: use '==' to turn this assignment into an equality comparison
1725 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1730:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1730 | if (!((b = mail_body (stream,msgno,section)) &&
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:1778:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1778 | if (rt.data = (unsigned char *)
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~
1779 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1778:19: note: place parentheses around the assignment to silence this warning
1778 | if (rt.data = (unsigned char *)
| ^
| (
1779 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) {
|
| )
mail.c:1778:19: note: use '==' to turn this assignment into an equality comparison
1778 | if (rt.data = (unsigned char *)
| ^
| ==
mail.c:1816:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1816 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1816:15: note: place parentheses around the assignment to silence this warning
1816 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1816:15: note: use '==' to turn this assignment into an equality comparison
1816 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1821:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1821 | if (!((b = mail_body (stream,msgno,section)) &&
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:1871:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1871 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1871:15: note: place parentheses around the assignment to silence this warning
1871 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1871:15: note: use '==' to turn this assignment into an equality comparison
1871 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1875:61: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1875 | if (!(section && *section && (b = mail_body (stream,msgno,section))))
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:1954:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1954 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1954:15: note: place parentheses around the assignment to silence this warning
1954 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:1954:15: note: use '==' to turn this assignment into an equality comparison
1954 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:1958:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1958 | if (!(b = mail_body (stream,msgno,section))) return "";
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:2012:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2012 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2012:15: note: place parentheses around the assignment to silence this warning
2012 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:2012:15: note: use '==' to turn this assignment into an equality comparison
2012 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:2018:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2018 | if (!((b = mail_body (stream,msgno,section)) &&
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:2082:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2082 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2082:15: note: place parentheses around the assignment to silence this warning
2082 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ( )
mail.c:2082:15: note: use '==' to turn this assignment into an equality comparison
2082 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
| ^
| ==
mail.c:2086:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2086 | if (!(b = mail_body (stream,msgno,section))) return NIL;
| ^~~~~~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
mail.c:2232:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2232 | if (delta = ((last - first) / 2)) {
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:2232:12: note: place parentheses around the assignment to silence this warning
2232 | if (delta = ((last - first) / 2)) {
| ^
| ( )
mail.c:2232:12: note: use '==' to turn this assignment into an equality comparison
2232 | if (delta = ((last - first) / 2)) {
| ^
| ==
mail.c:2308:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2308 | ((flags & ST_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mail.c:2309:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2309 | mail_sequence (stream,sequence)) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mail.c:2386:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2386 | if (msg = utf8_badcharset (charset)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2386:11: note: place parentheses around the assignment to silence this warning
2386 | if (msg = utf8_badcharset (charset)) {
| ^
| ( )
mail.c:2386:11: note: use '==' to turn this assignment into an equality comparison
2386 | if (msg = utf8_badcharset (charset)) {
| ^
| ==
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2598 | else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2598 | else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/string.h:105:26: note: passing argument to parameter here
105 | int strncmp(const char *, const char *, size_t) __pure;
| ^
mail.c:2612:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2612 | else if (d = mail_valid (stream,mailbox,NIL))
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2612:14: note: place parentheses around the assignment to silence this warning
2612 | else if (d = mail_valid (stream,mailbox,NIL))
| ^
| ( )
mail.c:2612:14: note: use '==' to turn this assignment into an equality comparison
2612 | else if (d = mail_valid (stream,mailbox,NIL))
| ^
| ==
mail.c:2650:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2650 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2650:13: note: place parentheses around the assignment to silence this warning
2650 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
| ^
| ( )
mail.c:2650:13: note: use '==' to turn this assignment into an equality comparison
2650 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
| ^
| ==
mail.c:2720:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2720 | if (!(i = strtoul (section,(char **) §ion,10)) ||
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2725:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2725 | if (pt = b->nested.part) while (--i && (pt = pt->next));
| ~~~^~~~~~~~~~~~~~~~
mail.c:2725:11: note: place parentheses around the assignment to silence this warning
2725 | if (pt = b->nested.part) while (--i && (pt = pt->next));
| ^
| ( )
mail.c:2725:11: note: use '==' to turn this assignment into an equality comparison
2725 | if (pt = b->nested.part) while (--i && (pt = pt->next));
| ^
| ==
mail.c:2852:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2852 | if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mail.c:2852:76: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2852 | if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
| ^
/usr/include/string.h:87:56: note: passing argument to parameter here
87 | char *strcpy(char * __restrict, const char * __restrict);
| ^
mail.c:2852:64: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2852 | if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
| ^~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
mail.c:2858:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2858 | if (!(m = strtoul (s,(char **) &s,10))) return NIL;
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2862:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2862 | if (isdigit (*++s) && (d = strtoul (s,(char **) &s,10)) &&
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2864:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2864 | y = strtoul (s,(char **) &s,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2874:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2874 | if ((m = strtoul (s+1,(char **) &s,10)) && (*s++ == '-') &&
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2875:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2875 | (d = strtoul (s,(char **) &s,10)) && !*s) break;
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2880:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2880 | if (strlen (s) < (size_t) 5) return NIL;
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mail.c:2908:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2908 | y = strtoul (s,(char **) &s,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2932:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2932 | d = strtoul (s+1,(char **) &s,10);
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2934:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2934 | m = strtoul (++s,(char **) &s,10);
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:2935:32: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2935 | y = (*s == ':') ? strtoul (++s,(char **) &s,10) : 0;
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:3085:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3085 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */
| ~~^~~~~~~~~~~~~~
mail.c:3085:11: note: place parentheses around the assignment to silence this warning
3085 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */
| ^
| ( )
mail.c:3085:11: note: use '==' to turn this assignment into an equality comparison
3085 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */
| ^
| ==
mail.c:3265:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3265 | else if (!(i = strtoul (sequence,(char **) &sequence,10))) {
| ^~~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:3276:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3276 | else if (!(j = strtoul (sequence,(char **) &sequence,10))) {
| ^~~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:3306:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3306 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
| ~~^~~~~~~~~~~~~~~~~~~~~~~
mail.c:3306:13: note: place parentheses around the assignment to silence this warning
3306 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
| ^
| ( )
mail.c:3306:13: note: use '==' to turn this assignment into an equality comparison
3306 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
| ^
| ==
mail.c:3339:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3339 | while (lines = lines->next);
| ~~~~~~^~~~~~~~~~~~~
mail.c:3339:16: note: place parentheses around the assignment to silence this warning
3339 | while (lines = lines->next);
| ^
| ( )
mail.c:3339:16: note: use '==' to turn this assignment into an equality comparison
3339 | while (lines = lines->next);
| ^
| ==
mail.c:3371:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3371 | if (i = t - tmp) /* see if found in header */
| ~~^~~~~~~~~
mail.c:3371:11: note: place parentheses around the assignment to silence this warning
3371 | if (i = t - tmp) /* see if found in header */
| ^
| ( )
mail.c:3371:11: note: use '==' to turn this assignment into an equality comparison
3371 | if (i = t - tmp) /* see if found in header */
| ^
| ==
mail.c:3373:53: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3373 | if ((hdrs->text.size == i) && !compare_csizedtext (tmp,&hdrs->text))
| ^~~
./misc.h:110:40: note: passing argument to parameter 's1' here
110 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
| ^
mail.c:3515:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3515 | BODY *body = mail_body (stream,msgno,section);
| ^~~~~~~
mail.c:2710:72: note: passing argument to parameter 'section' here
2710 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section)
| ^
mail.c:3621:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3621 | if (h.data = (unsigned char *) s) {
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
mail.c:3621:14: note: place parentheses around the assignment to silence this warning
3621 | if (h.data = (unsigned char *) s) {
| ^
| ( )
mail.c:3621:14: note: use '==' to turn this assignment into an equality comparison
3621 | if (h.data = (unsigned char *) s) {
| ^
| ==
mail.c:3672:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3672 | if (st = st->next) s = s->next = mail_newstringlist ();
| ~~~^~~~~~~~~~
mail.c:3672:12: note: place parentheses around the assignment to silence this warning
3672 | if (st = st->next) s = s->next = mail_newstringlist ();
| ^
| ( )
mail.c:3672:12: note: use '==' to turn this assignment into an equality comparison
3672 | if (st = st->next) s = s->next = mail_newstringlist ();
| ^
| ==
mail.c:3687:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3687 | else if ((body = mail_body (stream,msgno,section)) &&
| ^~~~~~~
mail.c:2710:72: note: passing argument to parameter 'section' here
2710 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section)
| ^
mail.c:3754:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3754 | if (body = body->nested.msg->body)
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:3754:16: note: place parentheses around the assignment to silence this warning
3754 | if (body = body->nested.msg->body)
| ^
| ( )
mail.c:3754:16: note: use '==' to turn this assignment into an equality comparison
3754 | if (body = body->nested.msg->body)
| ^
| ==
mail.c:3771:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3771 | if (st.data = (unsigned char *)
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~
3772 | rfc822_base64 ((unsigned char *) s,i,&st.size)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:3771:14: note: place parentheses around the assignment to silence this warning
3771 | if (st.data = (unsigned char *)
| ^
| (
3772 | rfc822_base64 ((unsigned char *) s,i,&st.size)) {
|
| )
mail.c:3771:14: note: use '==' to turn this assignment into an equality comparison
3771 | if (st.data = (unsigned char *)
| ^
| ==
mail.c:3778:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3778 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:3778:14: note: place parentheses around the assignment to silence this warning
3778 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
| ^
| ( )
mail.c:3778:14: note: use '==' to turn this assignment into an equality comparison
3778 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
| ^
| ==
mail.c:3854:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3854 | if (!compare_csizedtext (stream->user_flags[i],&st->text)) {
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
110 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
| ^
mail.c:3859:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3859 | } while (st = st->next);
| ~~~^~~~~~~~~~
mail.c:3859:15: note: place parentheses around the assignment to silence this warning
3859 | } while (st = st->next);
| ^
| ( )
mail.c:3859:15: note: use '==' to turn this assignment into an equality comparison
3859 | } while (st = st->next);
| ^
| ==
mail.c:3888:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3888 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~
mail.c:3888:25: note: place parentheses around the assignment to silence this warning
3888 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
| ^
| ( )
mail.c:3888:25: note: use '==' to turn this assignment into an equality comparison
3888 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
| ^
| ==
mail.c:3889:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3889 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
| ~~~~~~~~~^~~~~~~~
mail.c:3889:20: note: place parentheses around the assignment to silence this warning
3889 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
| ^
| ( )
mail.c:3889:20: note: use '==' to turn this assignment into an equality comparison
3889 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
| ^
| ==
mail.c:3890:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3890 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
| ~~~~~~~~~~^~~~~~~~~
mail.c:3890:21: note: place parentheses around the assignment to silence this warning
3890 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
| ^
| ( )
mail.c:3890:21: note: use '==' to turn this assignment into an equality comparison
3890 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
| ^
| ==
mail.c:3985:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3985 | switch (*ucase (criterion)) {
| ^~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
mail.c:4076:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4076 | mail_parse_date (&elt,(char *) s->text.data) &&
| ^~~~~~~~~~~~~~~~~~~~~
mail.c:2834:56: note: passing argument to parameter 's' here
2834 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
| ^
mail.c:4125:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4125 | if (d = strtok_r (c,end,r)) n = strlen (d);
| ~~^~~~~~~~~~~~~~~~~~~~
mail.c:4125:11: note: place parentheses around the assignment to silence this warning
4125 | if (d = strtok_r (c,end,r)) n = strlen (d);
| ^
| ( )
mail.c:4125:11: note: use '==' to turn this assignment into an equality comparison
4125 | if (d = strtok_r (c,end,r)) n = strlen (d);
| ^
| ==
mail.c:4332:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4332 | if (env) t = env->date;
| ^ ~~~~~~~~~
mail.c:4336:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4336 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4336:22: note: place parentheses around the assignment to silence this warning
4336 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ( )
mail.c:4336:22: note: use '==' to turn this assignment into an equality comparison
4336 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ==
mail.c:4348:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4348 | if (!(t && mail_parse_date (&telt,t) &&
| ^
mail.c:2834:56: note: passing argument to parameter 's' here
2834 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
| ^
mail.c:4372:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4372 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4372:22: note: place parentheses around the assignment to silence this warning
4372 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ( )
mail.c:4372:22: note: use '==' to turn this assignment into an equality comparison
4372 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ==
mail.c:4380:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4380 | if (v = strchr (v,':')) {
| ~~^~~~~~~~~~~~~~~~
mail.c:4380:9: note: place parentheses around the assignment to silence this warning
4380 | if (v = strchr (v,':')) {
| ^
| ( )
mail.c:4380:9: note: use '==' to turn this assignment into an equality comparison
4380 | if (v = strchr (v,':')) {
| ^
| ==
mail.c:4387:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4387 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4387:14: note: place parentheses around the assignment to silence this warning
4387 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ( )
mail.c:4387:14: note: use '==' to turn this assignment into an equality comparison
4387 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ==
mail.c:4405:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4405 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4405:22: note: place parentheses around the assignment to silence this warning
4405 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ( )
mail.c:4405:22: note: use '==' to turn this assignment into an equality comparison
4405 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ==
mail.c:4413:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4413 | if (v = strchr (v,':')) {
| ~~^~~~~~~~~~~~~~~~
mail.c:4413:9: note: place parentheses around the assignment to silence this warning
4413 | if (v = strchr (v,':')) {
| ^
| ( )
mail.c:4413:9: note: use '==' to turn this assignment into an equality comparison
4413 | if (v = strchr (v,':')) {
| ^
| ==
mail.c:4420:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4420 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4420:14: note: place parentheses around the assignment to silence this warning
4420 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ( )
mail.c:4420:14: note: use '==' to turn this assignment into an equality comparison
4420 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ==
mail.c:4438:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4438 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4438:22: note: place parentheses around the assignment to silence this warning
4438 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ( )
mail.c:4438:22: note: use '==' to turn this assignment into an equality comparison
4438 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ==
mail.c:4446:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4446 | if (v = strchr (v,':')) {
| ~~^~~~~~~~~~~~~~~~
mail.c:4446:9: note: place parentheses around the assignment to silence this warning
4446 | if (v = strchr (v,':')) {
| ^
| ( )
mail.c:4446:9: note: use '==' to turn this assignment into an equality comparison
4446 | if (v = strchr (v,':')) {
| ^
| ==
mail.c:4453:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4453 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4453:14: note: place parentheses around the assignment to silence this warning
4453 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ( )
mail.c:4453:14: note: use '==' to turn this assignment into an equality comparison
4453 | if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
| ^
| ==
mail.c:4472:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4472 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4472:22: note: place parentheses around the assignment to silence this warning
4472 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ( )
mail.c:4472:22: note: use '==' to turn this assignment into an equality comparison
4472 | for (x = ++t; x = strpbrk (x,"\012\015"); x++)
| ^
| ==
mail.c:4506:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4506 | if (src.size = strlen (t)) { /* have non-empty subject? */
| ~~~~~~~~~^~~~~~~~~~~~
mail.c:4506:16: note: place parentheses around the assignment to silence this warning
4506 | if (src.size = strlen (t)) { /* have non-empty subject? */
| ^
| ( )
mail.c:4506:16: note: use '==' to turn this assignment into an equality comparison
4506 | if (src.size = strlen (t)) { /* have non-empty subject? */
| ^
| ==
mail.c:4648:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4648 | i = compare_cstring (s1->from,s2->from);
| ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4648:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4648 | i = compare_cstring (s1->from,s2->from);
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4651:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4651 | i = compare_cstring (s1->to,s2->to);
| ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4651:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4651 | i = compare_cstring (s1->to,s2->to);
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4654:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4654 | i = compare_cstring (s1->cc,s2->cc);
| ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4654:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4654 | i = compare_cstring (s1->cc,s2->cc);
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4657:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4657 | i = compare_cstring (s1->subject,s2->subject);
| ^~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4657:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4657 | i = compare_cstring (s1->subject,s2->subject);
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4662:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4662 | while (pgm = i ? NIL : pgm->next);
| ~~~~^~~~~~~~~~~~~~~~~~~~~
mail.c:4662:14: note: place parentheses around the assignment to silence this warning
4662 | while (pgm = i ? NIL : pgm->next);
| ^
| ( )
mail.c:4662:14: note: use '==' to turn this assignment into an equality comparison
4662 | while (pgm = i ? NIL : pgm->next);
| ^
| ==
mail.c:4756:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4756 | if (!compare_cstring (type,t->name)) {
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4756:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4756 | if (!compare_cstring (type,t->name)) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4789:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4789 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4789:11: note: place parentheses around the assignment to silence this warning
4789 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
| ^
| ( )
mail.c:4789:11: note: use '==' to turn this assignment into an equality comparison
4789 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
| ^
| ==
mail.c:4800:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4800 | if (compare_cstring (top->sc->subject,s->subject)) {
| ^~~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4800:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4800 | if (compare_cstring (top->sc->subject,s->subject)) {
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:4903:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4903 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4903:10: note: place parentheses around the assignment to silence this warning
4903 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
| ^
| ( )
mail.c:4903:10: note: use '==' to turn this assignment into an equality comparison
4903 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
| ^
| ==
mail.c:4951:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4951 | THREADLINKS); st = st->next; con = nxc) {
| ~~~^~~~~~~~~~
mail.c:4951:28: note: place parentheses around the assignment to silence this warning
4951 | THREADLINKS); st = st->next; con = nxc) {
| ^
| ( )
mail.c:4951:28: note: use '==' to turn this assignment into an equality comparison
4951 | THREADLINKS); st = st->next; con = nxc) {
| ^
| ==
mail.c:5121:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5121 | if (!s->date && ov->date && mail_parse_date (&telt,ov->date)) {
| ^~~~~~~~
mail.c:2834:56: note: passing argument to parameter 's' here
2834 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
| ^
mail.c:5183:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5183 | if (t = mail_thread_parse_msgid (s,&s)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:5183:9: note: place parentheses around the assignment to silence this warning
5183 | if (t = mail_thread_parse_msgid (s,&s)) {
| ^
| ( )
mail.c:5183:9: note: use '==' to turn this assignment into an equality comparison
5183 | if (t = mail_thread_parse_msgid (s,&s)) {
| ^
| ==
mail.c:5187:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5187 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:5187:25: note: place parentheses around the assignment to silence this warning
5187 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
| ^
| ( )
mail.c:5187:25: note: use '==' to turn this assignment into an equality comparison
5187 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
| ^
| ==
mail.c:5289:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5289 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
| ~~~~^~~~~~~~~~~~~
mail.c:5289:13: note: place parentheses around the assignment to silence this warning
5289 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
| ^
| ( )
mail.c:5289:13: note: use '==' to turn this assignment into an equality comparison
5289 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
| ^
| ==
mail.c:5371:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5371 | else if (!(i = strtoul (sequence,(char **) &sequence,10)) ||
| ^~~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:5387:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5387 | else if (!(j = strtoul (sequence,(char **) &sequence,10)) ||
| ^~~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mail.c:5440:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5440 | if (n = strchr (t,' ')) *n++ = '\0';
| ~~^~~~~~~~~~~~~~~~
mail.c:5440:13: note: place parentheses around the assignment to silence this warning
5440 | if (n = strchr (t,' ')) *n++ = '\0';
| ^
| ( )
mail.c:5440:13: note: use '==' to turn this assignment into an equality comparison
5440 | if (n = strchr (t,' ')) *n++ = '\0';
| ^
| ==
mail.c:5442:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5442 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5442:28: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5442 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5443:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5443 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5443:33: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5443 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5444:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5444 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5444:33: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5444 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5445:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5445 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5445:33: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5445 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5446:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5446 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5446:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5446 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5456:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5456 | if (!compare_cstring (t,s)) *uf |= i = 1 << j;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5456:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5456 | if (!compare_cstring (t,s)) *uf |= i = 1 << j;
| ^
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5505:24: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5505 | ((!compare_cstring (smb.host,
| ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5506:10: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5506 | trustdns ? tcp_canonical (nmb.host) : nmb.host)&&
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5511:24: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5511 | (!compare_cstring (omb.host,nmb.host) &&
| ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:5511:33: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5511 | (!compare_cstring (omb.host,nmb.host) &&
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:6081:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
6081 | if (auth->server && !compare_cstring (auth->name,mechanism))
| ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:6081:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
6081 | if (auth->server && !compare_cstring (auth->name,mechanism))
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:6114:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
6114 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism))
| ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:6114:62: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
6114 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism))
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mail.c:6201:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
6201 | if (tstream = (*dv->open) (host,service,port | flags)) {
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:6201:15: note: place parentheses around the assignment to silence this warning
6201 | if (tstream = (*dv->open) (host,service,port | flags)) {
| ^
| ( )
mail.c:6201:15: note: use '==' to turn this assignment into an equality comparison
6201 | if (tstream = (*dv->open) (host,service,port | flags)) {
| ^
| ==
mail.c:6223:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
6223 | if (tstream = (*dv->aopen) (mb,service,user)) {
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:6223:15: note: place parentheses around the assignment to silence this warning
6223 | if (tstream = (*dv->aopen) (mb,service,user)) {
| ^
| ( )
mail.c:6223:15: note: use '==' to turn this assignment into an equality comparison
6223 | if (tstream = (*dv->aopen) (mb,service,user)) {
| ^
| ==
216 warnings generated.
cc -c `cat CFLAGS` misc.c
misc.c:276:41: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
276 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
| ~~^~~~~~~~~
misc.c:276:41: note: remove extraneous parentheses around the comparison to silence this warning
276 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
| ~ ^ ~
misc.c:276:41: note: use '=' to turn this equality comparison into an assignment
276 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
| ^~
| =
misc.c:318:47: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
318 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
| ~~~~^~~~~~~~~~~~~~~~~~~
misc.c:318:47: note: place parentheses around the assignment to silence this warning
318 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
| ^
| ( )
misc.c:318:47: note: use '==' to turn this assignment into an equality comparison
318 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
| ^
| ==
misc.c:335:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
335 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
| ~~^~~~~~~~~~~~~~~~~~~~~~~
misc.c:335:19: note: place parentheses around the assignment to silence this warning
335 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
| ^
| ( )
misc.c:335:19: note: use '==' to turn this assignment into an equality comparison
335 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
| ^
| ==
misc.c:452:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
452 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
misc.c:452:39: note: place parentheses around the assignment to silence this warning
452 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
| ^
| ( )
misc.c:452:39: note: use '==' to turn this assignment into an equality comparison
452 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
| ^
| ==
misc.c:471:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
471 | for (s = (char *) s2->data,j = s2->size; *s1 && j; ++s1,++s,--j)
| ^ ~~~~~~~~~~~~~~~~~
misc.c:472:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
472 | if (i = (compare_uchar (*s1,*s))) return i;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
misc.c:472:11: note: place parentheses around the assignment to silence this warning
472 | if (i = (compare_uchar (*s1,*s))) return i;
| ^
| ( )
misc.c:472:11: note: use '==' to turn this assignment into an equality comparison
472 | if (i = (compare_uchar (*s1,*s))) return i;
| ^
| ==
6 warnings generated.
cc -c `cat CFLAGS` newsrc.c
newsrc.c:126:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
126 | if (k = elt->private.uid - 1) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
newsrc.c:126:8: note: place parentheses around the assignment to silence this warning
126 | if (k = elt->private.uid - 1) {
| ^
| ( )
newsrc.c:126:8: note: use '==' to turn this assignment into an equality comparison
126 | if (k = elt->private.uid - 1) {
| ^
| ==
newsrc.c:167:19: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
167 | if (pmatch_full (name,pattern,'.')) mm_lsub (stream,'.',name,NIL);
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
newsrc.c:167:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
167 | if (pmatch_full (name,pattern,'.')) mm_lsub (stream,'.',name,NIL);
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
newsrc.c:170:21: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
170 | if (pmatch_full (name,pattern,'.'))
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
newsrc.c:170:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
170 | if (pmatch_full (name,pattern,'.'))
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
newsrc.c:343:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
343 | if (f = fopen (newsrc,"rb")) {/* have existing newsrc file? */
| ~~^~~~~~~~~~~~~~~~~~~~~
newsrc.c:343:9: note: place parentheses around the assignment to silence this warning
343 | if (f = fopen (newsrc,"rb")) {/* have existing newsrc file? */
| ^
| ( )
newsrc.c:343:9: note: use '==' to turn this assignment into an equality comparison
343 | if (f = fopen (newsrc,"rb")) {/* have existing newsrc file? */
| ^
| ==
newsrc.c:368:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
368 | if (f = newsrc_create (stream,NIL)) bf = NIL;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
newsrc.c:368:13: note: place parentheses around the assignment to silence this warning
368 | if (f = newsrc_create (stream,NIL)) bf = NIL;
| ^
| ( )
newsrc.c:368:13: note: use '==' to turn this assignment into an equality comparison
368 | if (f = newsrc_create (stream,NIL)) bf = NIL;
| ^
| ==
newsrc.c:384:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
384 | if (f = newsrc_create (stream,T)) bf = NIL;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
newsrc.c:384:11: note: place parentheses around the assignment to silence this warning
384 | if (f = newsrc_create (stream,T)) bf = NIL;
| ^
| ( )
newsrc.c:384:11: note: use '==' to turn this assignment into an equality comparison
384 | if (f = newsrc_create (stream,T)) bf = NIL;
| ^
| ==
8 warnings generated.
cc -c `cat CFLAGS` smanager.c
smanager.c:44:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
44 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smanager.c:44:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
44 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smanager.c:46:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
46 | if (f = fopen (db,"r")) { /* make sure not already there */
| ~~^~~~~~~~~~~~~~~~
smanager.c:46:9: note: place parentheses around the assignment to silence this warning
46 | if (f = fopen (db,"r")) { /* make sure not already there */
| ^
| ( )
smanager.c:46:9: note: use '==' to turn this assignment into an equality comparison
46 | if (f = fopen (db,"r")) { /* make sure not already there */
| ^
| ==
smanager.c:48:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
48 | if (s = strchr (tmp,'\n')) *s = '\0';
| ~~^~~~~~~~~~~~~~~~~~~
smanager.c:48:13: note: place parentheses around the assignment to silence this warning
48 | if (s = strchr (tmp,'\n')) *s = '\0';
| ^
| ( )
smanager.c:48:13: note: use '==' to turn this assignment into an equality comparison
48 | if (s = strchr (tmp,'\n')) *s = '\0';
| ^
| ==
smanager.c:77:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
77 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smanager.c:77:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
77 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smanager.c:88:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
88 | if (s = strchr (tmp,'\n')) *s = '\0';
| ~~^~~~~~~~~~~~~~~~~~~
smanager.c:88:13: note: place parentheses around the assignment to silence this warning
88 | if (s = strchr (tmp,'\n')) *s = '\0';
| ^
| ( )
smanager.c:88:13: note: use '==' to turn this assignment into an equality comparison
88 | if (s = strchr (tmp,'\n')) *s = '\0';
| ^
| ==
smanager.c:119:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
119 | if (f = fopen (sbname,"r")) *sdb = (void *) f;
| ~~^~~~~~~~~~~~~~~~~~~~
smanager.c:119:11: note: place parentheses around the assignment to silence this warning
119 | if (f = fopen (sbname,"r")) *sdb = (void *) f;
| ^
| ( )
smanager.c:119:11: note: use '==' to turn this assignment into an equality comparison
119 | if (f = fopen (sbname,"r")) *sdb = (void *) f;
| ^
| ==
smanager.c:123:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
123 | if (s = strchr (sbname,'\n')) *s = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~
smanager.c:123:11: note: place parentheses around the assignment to silence this warning
123 | if (s = strchr (sbname,'\n')) *s = '\0';
| ^
| ( )
smanager.c:123:11: note: use '==' to turn this assignment into an equality comparison
123 | if (s = strchr (sbname,'\n')) *s = '\0';
| ^
| ==
9 warnings generated.
cc -c `cat CFLAGS` utf8.c
utf8.c:383:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
383 | if (!compare_cstring (script,utf8_scvalid[i].name))
| ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:383:36: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
383 | if (!compare_cstring (script,utf8_scvalid[i].name))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:400:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
400 | if (!compare_cstring (charset,utf8_csvalid[i].name))
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:400:37: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
400 | if (!compare_cstring (charset,utf8_csvalid[i].name))
| ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:586:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
586 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP");
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:586:47: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
586 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP");
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:613:26: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
613 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ?
| ^~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:613:36: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
613 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ?
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:647:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
647 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap :
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:647:50: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
647 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap :
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:662:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
662 | else if (ret = utf8_rmap_gen (cs,currmap)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:662:16: note: place parentheses around the assignment to silence this warning
662 | else if (ret = utf8_rmap_gen (cs,currmap)) {
| ^
| ( )
utf8.c:662:16: note: use '==' to turn this assignment into an equality comparison
662 | else if (ret = utf8_rmap_gen (cs,currmap)) {
| ^
| ==
utf8.c:794:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
794 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:794:9: note: place parentheses around the assignment to silence this warning
794 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
| ^
| ( )
utf8.c:794:9: note: use '==' to turn this assignment into an equality comparison
794 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
| ^
| ==
utf8.c:1189:11: warning: implicit conversion from 'int' to 'unsigned char' changes value from 65533 to 253 [-Wconstant-conversion]
1189 | c = JISTOUNICODE (c,c1,ku,ten);
| ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
./jis_0208.c:49:26: note: expanded from macro 'JISTOUNICODE'
49 | jis0208tab[ku][ten] : UBOGON)
| ^~~~~~
./utf8.h:386:16: note: expanded from macro 'UBOGON'
386 | #define UBOGON UCS2_BOGON
| ^~~~~~~~~~
./utf8.h:351:20: note: expanded from macro 'UCS2_BOGON'
351 | #define UCS2_BOGON 0xfffd /* replacement character */
| ^~~~~~
utf8.c:1291:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1291 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP";
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:1291:29: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1291 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP";
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
utf8.c:1293:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1293 | if (cs = utf8_charset (s)) {
| ~~~^~~~~~~~~~~~~~~~~~
utf8.c:1293:12: note: place parentheses around the assignment to silence this warning
1293 | if (cs = utf8_charset (s)) {
| ^
| ( )
utf8.c:1293:12: note: use '==' to turn this assignment into an equality comparison
1293 | if (cs = utf8_charset (s)) {
| ^
| ==
utf8.c:2395:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2395 | if (m = (struct decomposemore *) *more) switch (m->type) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2395:11: note: place parentheses around the assignment to silence this warning
2395 | if (m = (struct decomposemore *) *more) switch (m->type) {
| ^
| ( )
utf8.c:2395:11: note: use '==' to turn this assignment into an equality comparison
2395 | if (m = (struct decomposemore *) *more) switch (m->type) {
| ^
| ==
utf8.c:2418:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2418 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2418:13: note: place parentheses around the assignment to silence this warning
2418 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
| ^
| ( )
utf8.c:2418:13: note: use '==' to turn this assignment into an equality comparison
2418 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
| ^
| ==
utf8.c:2448:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2448 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2448:13: note: place parentheses around the assignment to silence this warning
2448 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
| ^
| ( )
utf8.c:2448:13: note: use '==' to turn this assignment into an equality comparison
2448 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
| ^
| ==
utf8.c:2513:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2513 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
| ~~~^~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2513:12: note: place parentheses around the assignment to silence this warning
2513 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
| ^
| ( )
utf8.c:2513:12: note: use '==' to turn this assignment into an equality comparison
2513 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
| ^
| ==
utf8.c:2533:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2533 | if (mr = mn) { /* did this value recurse on us? */
| ~~~^~~~
utf8.c:2533:12: note: place parentheses around the assignment to silence this warning
2533 | if (mr = mn) { /* did this value recurse on us? */
| ^
| ( )
utf8.c:2533:12: note: use '==' to turn this assignment into an equality comparison
2533 | if (mr = mn) { /* did this value recurse on us? */
| ^
| ==
21 warnings generated.
cc -c `cat CFLAGS` utf8aux.c
utf8aux.c:47:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
47 | } while (st = st->next);
| ~~~^~~~~~~~~~
utf8aux.c:47:15: note: place parentheses around the assignment to silence this warning
47 | } while (st = st->next);
| ^
| ( )
utf8aux.c:47:15: note: use '==' to turn this assignment into an equality comparison
47 | } while (st = st->next);
| ^
| ==
utf8aux.c:136:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
136 | if (ls = strchr (cs,'*')) *ls = '\0';
| ~~~^~~~~~~~~~~~~~~~~
utf8aux.c:136:9: note: place parentheses around the assignment to silence this warning
136 | if (ls = strchr (cs,'*')) *ls = '\0';
| ^
| ( )
utf8aux.c:136:9: note: use '==' to turn this assignment into an equality comparison
136 | if (ls = strchr (cs,'*')) *ls = '\0';
| ^
| ==
utf8aux.c:241:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
241 | if (txt->data = (unsigned char *) rfc822_base64 (t,te - t,&txt->size))
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8aux.c:241:19: note: place parentheses around the assignment to silence this warning
241 | if (txt->data = (unsigned char *) rfc822_base64 (t,te - t,&txt->size))
| ^
| ( )
utf8aux.c:241:19: note: use '==' to turn this assignment into an equality comparison
241 | if (txt->data = (unsigned char *) rfc822_base64 (t,te - t,&txt->size))
| ^
| ==
utf8aux.c:415:24: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
415 | if (mail_utf7_valid (src)) return NIL;
| ^~~
./mail.h:1623:30: note: passing argument to parameter 'mailbox' here
1623 | char *mail_utf7_valid (char *mailbox);
| ^
utf8aux.c:420:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
420 | for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
| ^~~
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
utf8aux.c:420:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
420 | for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
| ^~~
./misc.h:89:36: note: passing argument to parameter 'text' here
89 | char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size);
| ^
utf8aux.c:420:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
420 | for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 warnings generated.
cc -c `cat CFLAGS` siglocal.c
cc -c `cat CFLAGS` dummy.c
dummy.c:124:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
124 | else if (!compare_cstring (name,"INBOX")) return &dummydriver;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:124:37: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
124 | else if (!compare_cstring (name,"INBOX")) return &dummydriver;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:162:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
162 | if (s = strchr (test,'/')) *++s = '\0';
| ~~^~~~~~~~~~~~~~~~~~~
dummy.c:162:13: note: place parentheses around the assignment to silence this warning
162 | if (s = strchr (test,'/')) *++s = '\0';
| ^
| ( )
dummy.c:162:13: note: use '==' to turn this assignment into an equality comparison
162 | if (s = strchr (test,'/')) *++s = '\0';
| ^
| ==
dummy.c:170:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
170 | if (s = strpbrk (test,"%*")) {
| ~~^~~~~~~~~~~~~~~~~~~~~
dummy.c:170:11: note: place parentheses around the assignment to silence this warning
170 | if (s = strpbrk (test,"%*")) {
| ^
| ( )
dummy.c:170:11: note: use '==' to turn this assignment into an equality comparison
170 | if (s = strpbrk (test,"%*")) {
| ^
| ==
dummy.c:176:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
176 | if (s = strrchr (file,'/')){/* find directory name */
| ~~^~~~~~~~~~~~~~~~~~~~
dummy.c:176:11: note: place parentheses around the assignment to silence this warning
176 | if (s = strrchr (file,'/')){/* find directory name */
| ^
| ( )
dummy.c:176:11: note: use '==' to turn this assignment into an equality comparison
176 | if (s = strrchr (file,'/')){/* find directory name */
| ^
| ==
dummy.c:185:32: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
185 | if (pmatch ("INBOX",ucase (test))) {
| ^~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
dummy.c:185:17: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
185 | if (pmatch ("INBOX",ucase (test))) {
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:224:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
224 | if (!compare_cstring (s,"INBOX") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:224:31: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
224 | if (!compare_cstring (s,"INBOX") &&
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:225:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
225 | pmatch ("INBOX",ucase (strcpy (tmp,test))))
| ^~~~~~~~~~~~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
dummy.c:225:12: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
225 | pmatch ("INBOX",ucase (strcpy (tmp,test))))
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:227:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
227 | else if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:227:31: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
227 | else if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
| ^~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:230:19: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
230 | if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,LATT_NOSELECT);
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:230:21: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
230 | if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,LATT_NOSELECT);
| ^~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:233:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
233 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ~~^~~~~~~~~~~~~~~~
dummy.c:233:12: note: place parentheses around the assignment to silence this warning
233 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ( )
dummy.c:233:12: note: use '==' to turn this assignment into an equality comparison
233 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ==
dummy.c:282:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
282 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */
| ~~~^~~~~~~~~~~~~~~
dummy.c:282:10: note: place parentheses around the assignment to silence this warning
282 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */
| ^
| ( )
dummy.c:282:10: note: use '==' to turn this assignment into an equality comparison
282 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */
| ^
| ==
dummy.c:290:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
290 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
| ^~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:290:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
290 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:290:64: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
290 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
| ^~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:290:68: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
290 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
| ^~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:294:64: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
294 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
| ~~^~~~~~~~~~~~~~
dummy.c:294:64: note: place parentheses around the assignment to silence this warning
294 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
| ^
| ( )
dummy.c:294:64: note: use '==' to turn this assignment into an equality comparison
294 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
| ^
| ==
dummy.c:304:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
304 | if ((pmatch_full (strcpy (path,tmp),pat,'/') ||
| ^~~~~~~~~~~~~~~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:304:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
304 | if ((pmatch_full (strcpy (path,tmp),pat,'/') ||
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:305:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
305 | pmatch_full (strcat (path,"/"),pat,'/') ||
| ^~~~~~~~~~~~~~~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:305:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
305 | pmatch_full (strcat (path,"/"),pat,'/') ||
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:306:15: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
306 | dmatch (path,pat,'/')) &&
| ^~~~
./env.h:30:29: note: passing argument to parameter 's' here
30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:306:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
306 | dmatch (path,pat,'/')) &&
| ^~~
./env.h:30:46: note: passing argument to parameter 'pat' here
30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:315:19: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
315 | if (!pmatch (tmp,"INBOX")) {
| ^~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:315:23: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
315 | if (!pmatch (tmp,"INBOX")) {
| ^~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:316:25: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
316 | if (pmatch_full (tmp,pat,'/')) {
| ^~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:316:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
316 | if (pmatch_full (tmp,pat,'/')) {
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:321:30: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
321 | else if (pmatch_full (path,pat,'/') &&
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:321:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
321 | else if (pmatch_full (path,pat,'/') &&
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:325:18: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
325 | if (dmatch (path,pat,'/') &&
| ^~~~
./env.h:30:29: note: passing argument to parameter 's' here
30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:325:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
325 | if (dmatch (path,pat,'/') &&
| ^~~
./env.h:30:46: note: passing argument to parameter 'pat' here
30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:331:23: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
331 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
| ^~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:331:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
331 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
dummy.c:331:56: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
331 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:331:60: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
331 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:458:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
458 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:458:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
458 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:485:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
485 | if (s = strrchr (path,'/')) { /* found superior to this name? */
| ~~^~~~~~~~~~~~~~~~~~~~
dummy.c:485:9: note: place parentheses around the assignment to silence this warning
485 | if (s = strrchr (path,'/')) { /* found superior to this name? */
| ^
| ( )
dummy.c:485:9: note: use '==' to turn this assignment into an equality comparison
485 | if (s = strrchr (path,'/')) { /* found superior to this name? */
| ^
| ==
dummy.c:568:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
568 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf))
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:568:29: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
568 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf))
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:597:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
597 | if (compare_cstring (stream->mailbox,"INBOX"))
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:597:42: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
597 | if (compare_cstring (stream->mailbox,"INBOX"))
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:704:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
704 | if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
dummy.c:705:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
705 | mail_sequence (stream,sequence)) fatal ("Impossible dummy_copy");
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
dummy.c:726:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
726 | if (!compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:726:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
726 | if (!compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
dummy.c:728:23: warning: unsequenced modification and access to 'ts' [-Wunsequenced]
728 | if (!ts && !(*(ts = default_proto (NIL))->dtb->create) (ts,"INBOX"))
| ^ ~~
dummy.c:803:28: warning: expression result unused [-Wunused-value]
803 | for (i = 0, s = tmp; *s; *s++) if ((*s == '*') || (*s == '%')) ++i;
| ^~~~
53 warnings generated.
cc -c `cat CFLAGS` pseudo.c
cc -c `cat CFLAGS` netmsg.c
netmsg.c:63:45: warning: call to undeclared function 'time'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
63 | sprintf (tmp,".%lx.%lx",(unsigned long) time (0),(unsigned long)getpid ());
| ^
netmsg.c:64:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
64 | if (f = fopen (tmp,"wb+")) unlink (tmp);
| ~~^~~~~~~~~~~~~~~~~~~
netmsg.c:64:11: note: place parentheses around the assignment to silence this warning
64 | if (f = fopen (tmp,"wb+")) unlink (tmp);
| ^
| ( )
netmsg.c:64:11: note: use '==' to turn this assignment into an equality comparison
64 | if (f = fopen (tmp,"wb+")) unlink (tmp);
| ^
| ==
netmsg.c:73:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
73 | while (s = net_getline (stream)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
netmsg.c:73:12: note: place parentheses around the assignment to silence this warning
73 | while (s = net_getline (stream)) {
| ^
| ( )
netmsg.c:73:12: note: use '==' to turn this assignment into an equality comparison
73 | while (s = net_getline (stream)) {
| ^
| ==
3 warnings generated.
cc -c `cat CFLAGS` flstring.c
cc -c `cat CFLAGS` fdstring.c
fdstring.c:94:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
94 | if (s->cursize = min (s->chunksize,SIZE (s))) {
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fdstring.c:94:18: note: place parentheses around the assignment to silence this warning
94 | if (s->cursize = min (s->chunksize,SIZE (s))) {
| ^
| ( )
fdstring.c:94:18: note: use '==' to turn this assignment into an equality comparison
94 | if (s->cursize = min (s->chunksize,SIZE (s))) {
| ^
| ==
1 warning generated.
cc -c `cat CFLAGS` rfc822.c
rfc822.c:155:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
155 | if (t = d = strchr (tmp,':')) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
rfc822.c:155:11: note: place parentheses around the assignment to silence this warning
155 | if (t = d = strchr (tmp,':')) {
| ^
| ( )
rfc822.c:155:11: note: use '==' to turn this assignment into an equality comparison
155 | if (t = d = strchr (tmp,':')) {
| ^
| ==
rfc822.c:159:14: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
159 | ucase (tmp); /* coerce to uppercase */
| ^~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:198:53: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
198 | if (!env->date && !strcmp (tmp+1,"ATE")) env->date = cpystr (d);
| ^ ~~~~~~~~~~
rfc822.c:204:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
204 | while (c = *d++) if (c != ' ') *t++ = c;
| ~~^~~~~~
rfc822.c:204:13: note: place parentheses around the assignment to silence this warning
204 | while (c = *d++) if (c != ' ') *t++ = c;
| ^
| ( )
rfc822.c:204:13: note: use '==' to turn this assignment into an equality comparison
204 | while (c = *d++) if (c != ' ') *t++ = c;
| ^
| ==
rfc822.c:218:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
218 | if (t = rfc822_parse_phrase (d)) *t = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:218:10: note: place parentheses around the assignment to silence this warning
218 | if (t = rfc822_parse_phrase (d)) *t = '\0';
| ^
| ( )
rfc822.c:218:10: note: use '==' to turn this assignment into an equality comparison
218 | if (t = rfc822_parse_phrase (d)) *t = '\0';
| ^
| ==
rfc822.c:229:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
229 | while (c = *d++) if (c != ' ') *t++ = c;
| ~~^~~~~~
rfc822.c:229:13: note: place parentheses around the assignment to silence this warning
229 | while (c = *d++) if (c != ' ') *t++ = c;
| ^
| ( )
rfc822.c:229:13: note: use '==' to turn this assignment into an equality comparison
229 | while (c = *d++) if (c != ' ') *t++ = c;
| ^
| ==
rfc822.c:381:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
381 | if (m = GETPOS (bs)) m--; /* get position in front of character */
| ~~^~~~~~~~~~~~~
rfc822.c:381:13: note: place parentheses around the assignment to silence this warning
381 | if (m = GETPOS (bs)) m--; /* get position in front of character */
| ^
| ( )
rfc822.c:381:13: note: use '==' to turn this assignment into an equality comparison
381 | if (m = GETPOS (bs)) m--; /* get position in front of character */
| ^
| ==
rfc822.c:391:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
391 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
| ~~^~~~~~~
rfc822.c:391:8: note: place parentheses around the assignment to silence this warning
391 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
| ^
| ( )
rfc822.c:391:8: note: use '==' to turn this assignment into an equality comparison
391 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
| ^
| ==
rfc822.c:446:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
446 | if (i = part->body.mime.text.size) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:446:13: note: place parentheses around the assignment to silence this warning
446 | if (i = part->body.mime.text.size) {
| ^
| ( )
rfc822.c:446:13: note: use '==' to turn this assignment into an equality comparison
446 | if (i = part->body.mime.text.size) {
| ^
| ==
rfc822.c:490:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
490 | rfc822_parse_content_header (&part->body,ucase (s1+8),s);
| ^~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:490:47: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
490 | rfc822_parse_content_header (&part->body,ucase (s1+8),s);
| ^~~~~~~~~~~~
./rfc822.h:64:52: note: passing argument to parameter 'name' here
64 | void rfc822_parse_content_header (BODY *body,char *name,char *s);
| ^
rfc822.c:547:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
547 | if (t = strchr (name,' ')) *t = '\0';
| ~~^~~~~~~~~~~~~~~~~~~
rfc822.c:547:9: note: place parentheses around the assignment to silence this warning
547 | if (t = strchr (name,' ')) *t = '\0';
| ^
| ( )
rfc822.c:547:9: note: use '==' to turn this assignment into an equality comparison
547 | if (t = strchr (name,' ')) *t = '\0';
| ^
| ==
rfc822.c:560:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
560 | body->disposition.type = ucase (cpystr (s));
| ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:560:30: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
560 | body->disposition.type = ucase (cpystr (s));
| ^ ~~~~~~~~~~~~~~~~~~
rfc822.c:574:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
574 | stl->text.data = (unsigned char *) ucase (cpystr (s));
| ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:601:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
601 | compare_cstring (s,body_types[i]); i++);
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
rfc822.c:601:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
601 | compare_cstring (s,body_types[i]); i++);
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
rfc822.c:612:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
612 | body_types[body->type] = ucase (s);
| ^
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:612:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
612 | body_types[body->type] = ucase (s);
| ^ ~~~~~~~~~
rfc822.c:624:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
624 | if (s) body->subtype = ucase (rfc822_cpy (s));
| ^~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:624:23: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
624 | if (s) body->subtype = ucase (rfc822_cpy (s));
| ^ ~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:642:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
642 | compare_cstring (s,body_encodings[i]); i++);
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
rfc822.c:642:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
642 | compare_cstring (s,body_encodings[i]); i++);
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
rfc822.c:653:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
653 | body_encodings[body->encoding] = ucase (s);
| ^
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:653:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
653 | body_encodings[body->encoding] = ucase (s);
| ^ ~~~~~~~~~
rfc822.c:686:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
686 | param->attribute = ucase (cpystr (s));
| ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
rfc822.c:686:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
686 | param->attribute = ucase (cpystr (s));
| ^ ~~~~~~~~~~~~~~~~~~
rfc822.c:737:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
737 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:737:18: note: place parentheses around the assignment to silence this warning
737 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
| ^
| ( )
rfc822.c:737:18: note: use '==' to turn this assignment into an equality comparison
737 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
| ^
| ==
rfc822.c:791:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
791 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:791:11: note: place parentheses around the assignment to silence this warning
791 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
| ^
| ( )
rfc822.c:791:11: note: use '==' to turn this assignment into an equality comparison
791 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
| ^
| ==
rfc822.c:793:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
793 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:793:16: note: place parentheses around the assignment to silence this warning
793 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
| ^
| ( )
rfc822.c:793:16: note: use '==' to turn this assignment into an equality comparison
793 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
| ^
| ==
rfc822.c:839:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
839 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:839:13: note: place parentheses around the assignment to silence this warning
839 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
| ^
| ( )
rfc822.c:839:13: note: use '==' to turn this assignment into an equality comparison
839 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
| ^
| ==
rfc822.c:898:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
898 | else if (end = rfc822_parse_phrase (s)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:898:16: note: place parentheses around the assignment to silence this warning
898 | else if (end = rfc822_parse_phrase (s)) {
| ^
| ( )
rfc822.c:898:16: note: use '==' to turn this assignment into an equality comparison
898 | else if (end = rfc822_parse_phrase (s)) {
| ^
| ==
rfc822.c:1027:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1027 | if (t = rfc822_parse_word (string,wspecials)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1027:11: note: place parentheses around the assignment to silence this warning
1027 | if (t = rfc822_parse_word (string,wspecials)) {
| ^
| ( )
rfc822.c:1027:11: note: use '==' to turn this assignment into an equality comparison
1027 | if (t = rfc822_parse_word (string,wspecials)) {
| ^
| ==
rfc822.c:1095:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1095 | else if (t = rfc822_parse_word (string,wspecials)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1095:14: note: place parentheses around the assignment to silence this warning
1095 | else if (t = rfc822_parse_word (string,wspecials)) {
| ^
| ( )
rfc822.c:1095:14: note: use '==' to turn this assignment into an equality comparison
1095 | else if (t = rfc822_parse_word (string,wspecials)) {
| ^
| ==
rfc822.c:1105:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1105 | if (string = rfc822_parse_domain (string,&t)) {
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1105:18: note: place parentheses around the assignment to silence this warning
1105 | if (string = rfc822_parse_domain (string,&t)) {
| ^
| ( )
rfc822.c:1105:18: note: use '==' to turn this assignment into an equality comparison
1105 | if (string = rfc822_parse_domain (string,&t)) {
| ^
| ==
rfc822.c:1172:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1172 | while (st = strchr (st,I2C_ESC))
| ~~~^~~~~~~~~~~~~~~~~~~~~
rfc822.c:1172:14: note: place parentheses around the assignment to silence this warning
1172 | while (st = strchr (st,I2C_ESC))
| ^
| ( )
rfc822.c:1172:14: note: use '==' to turn this assignment into an equality comparison
1172 | while (st = strchr (st,I2C_ESC))
| ^
| ==
rfc822.c:1371:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1371 | if (i = min (len,buf->end - buf->cur)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1371:11: note: place parentheses around the assignment to silence this warning
1371 | if (i = min (len,buf->end - buf->cur)) {
| ^
| ( )
rfc822.c:1371:11: note: use '==' to turn this assignment into an equality comparison
1371 | if (i = min (len,buf->end - buf->cur)) {
| ^
| ==
rfc822.c:1462:45: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1462 | rfc822_output_header_line (buf,"Date",i,env->date) &&
| ^~~~~~~~~
./rfc822.h:89:11: note: passing argument to parameter 'text' here
89 | char *text);
| ^
rfc822.c:1619:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1619 | for (; s = strpbrk (src,"\\\""); src = s + 1) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1619:14: note: place parentheses around the assignment to silence this warning
1619 | for (; s = strpbrk (src,"\\\""); src = s + 1) {
| ^
| ( )
rfc822.c:1619:14: note: use '==' to turn this assignment into an equality comparison
1619 | for (; s = strpbrk (src,"\\\""); src = s + 1) {
| ^
| ==
rfc822.c:1737:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1737 | while (part = part->next); /* until done */
| ~~~~~^~~~~~~~~~~~
rfc822.c:1737:17: note: place parentheses around the assignment to silence this warning
1737 | while (part = part->next); /* until done */
| ^
| ( )
rfc822.c:1737:17: note: use '==' to turn this assignment into an equality comparison
1737 | while (part = part->next); /* until done */
| ^
| ==
rfc822.c:1805:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1805 | while (part = part->next); /* until done */
| ~~~~~^~~~~~~~~~~~
rfc822.c:1805:17: note: place parentheses around the assignment to silence this warning
1805 | while (part = part->next); /* until done */
| ^
| ( )
rfc822.c:1805:17: note: use '==' to turn this assignment into an equality comparison
1805 | while (part = part->next); /* until done */
| ^
| ==
rfc822.c:1961:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1961 | if (s = strpbrk (tmp,"\015\012")) *s = NIL;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1961:8: note: place parentheses around the assignment to silence this warning
1961 | if (s = strpbrk (tmp,"\015\012")) *s = NIL;
| ^
| ( )
rfc822.c:1961:8: note: use '==' to turn this assignment into an equality comparison
1961 | if (s = strpbrk (tmp,"\015\012")) *s = NIL;
| ^
| ==
42 warnings generated.
cc -c `cat CFLAGS` nntp.c
nntp.c:353:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
353 | while (s = net_getline (LOCAL->nntpstream->netstream)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:353:14: note: place parentheses around the assignment to silence this warning
353 | while (s = net_getline (LOCAL->nntpstream->netstream)) {
| ^
| ( )
nntp.c:353:14: note: use '==' to turn this assignment into an equality comparison
353 | while (s = net_getline (LOCAL->nntpstream->netstream)) {
| ^
| ==
nntp.c:358:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
358 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */
| ~~^~~~~~~~~~~~~~~~
nntp.c:358:13: note: place parentheses around the assignment to silence this warning
358 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */
| ^
| ( )
nntp.c:358:13: note: use '==' to turn this assignment into an equality comparison
358 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */
| ^
| ==
nntp.c:362:19: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
362 | if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:362:24: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
362 | if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:365:21: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
365 | if (pmatch_full (name,pattern,'.'))
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:365:26: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
365 | if (pmatch_full (name,pattern,'.'))
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:397:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
397 | if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
| ~~^~~~~~~~~~~~~~~~
nntp.c:397:9: note: place parentheses around the assignment to silence this warning
397 | if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
| ^
| ( )
nntp.c:397:9: note: use '==' to turn this assignment into an equality comparison
397 | if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
| ^
| ==
nntp.c:397:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
397 | if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
| ^
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:397:62: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
397 | if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
nntp.c:399:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
399 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ~~^~~~~~~~~~~~~~~~
nntp.c:399:12: note: place parentheses around the assignment to silence this warning
399 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ( )
nntp.c:399:12: note: use '==' to turn this assignment into an equality comparison
399 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ==
nntp.c:430:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
430 | for (s = wildmat; s = strchr (s,'%'); *s = '*');
| ~~^~~~~~~~~~~~~~~~
nntp.c:430:25: note: place parentheses around the assignment to silence this warning
430 | for (s = wildmat; s = strchr (s,'%'); *s = '*');
| ^
| ( )
nntp.c:430:25: note: use '==' to turn this assignment into an equality comparison
430 | for (s = wildmat; s = strchr (s,'%'); *s = '*');
| ^
| ==
nntp.c:556:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
556 | else if (state = newsrc_state (stream,name)) {
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:556:20: note: place parentheses around the assignment to silence this warning
556 | else if (state = newsrc_state (stream,name)) {
| ^
| ( )
nntp.c:556:20: note: use '==' to turn this assignment into an equality comparison
556 | else if (state = newsrc_state (stream,name)) {
| ^
| ==
nntp.c:566:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
566 | newsrc_check_uid (state,k,&status.recent,&status.unseen);
| ^~~~~
./newsrc.h:42:39: note: passing argument to parameter 'state' here
42 | void newsrc_check_uid (unsigned char *state,unsigned long uid,
| ^
nntp.c:575:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
575 | newsrc_check_uid (state,i++,&status.recent,&status.unseen);
| ^~~~~
./newsrc.h:42:39: note: passing argument to parameter 'state' here
42 | void newsrc_check_uid (unsigned char *state,unsigned long uid,
| ^
nntp.c:734:12: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
734 | lcase (strcpy (s,(long) mail_parameters (NIL,GET_NEWSRCCANONHOST,NIL) ?
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
735 | net_host (nstream->netstream) : mb.host));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
87 | unsigned char *lcase (unsigned char *string);
| ^
nntp.c:853:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
853 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
nntp.c:854:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
854 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
nntp.c:896:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
896 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
nntp.c:896:67: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
896 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
nntp.c:929:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
929 | for (t = v = s; c = *v++;)
| ~~^~~~~~
nntp.c:929:22: note: place parentheses around the assignment to silence this warning
929 | for (t = v = s; c = *v++;)
| ^
| ( )
nntp.c:929:22: note: use '==' to turn this assignment into an equality comparison
929 | for (t = v = s; c = *v++;)
| ^
| ==
nntp.c:999:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
999 | while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
999 | while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
nntp.c:1039:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1039 | if (t = strchr (ov->subject,'\t')) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1039:9: note: place parentheses around the assignment to silence this warning
1039 | if (t = strchr (ov->subject,'\t')) {
| ^
| ( )
nntp.c:1039:9: note: use '==' to turn this assignment into an equality comparison
1039 | if (t = strchr (ov->subject,'\t')) {
| ^
| ==
nntp.c:1042:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1042 | if (ov->date = strchr (t,'\t')) {
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
nntp.c:1042:18: note: place parentheses around the assignment to silence this warning
1042 | if (ov->date = strchr (t,'\t')) {
| ^
| ( )
nntp.c:1042:18: note: use '==' to turn this assignment into an equality comparison
1042 | if (ov->date = strchr (t,'\t')) {
| ^
| ==
nntp.c:1045:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1045 | if (!elt->day) mail_parse_date (elt,ov->date);
| ^~~~~~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
nntp.c:1049:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1049 | if (ov->message_id = strchr (ov->date,'\t')) {
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1049:26: note: place parentheses around the assignment to silence this warning
1049 | if (ov->message_id = strchr (ov->date,'\t')) {
| ^
| ( )
nntp.c:1049:26: note: use '==' to turn this assignment into an equality comparison
1049 | if (ov->message_id = strchr (ov->date,'\t')) {
| ^
| ==
nntp.c:1053:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1053 | if (ov->references = strchr (ov->message_id,'\t')) {
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1053:21: note: place parentheses around the assignment to silence this warning
1053 | if (ov->references = strchr (ov->message_id,'\t')) {
| ^
| ( )
nntp.c:1053:21: note: use '==' to turn this assignment into an equality comparison
1053 | if (ov->references = strchr (ov->message_id,'\t')) {
| ^
| ==
nntp.c:1057:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1057 | if (t = strchr (ov->references,'\t')) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1057:10: note: place parentheses around the assignment to silence this warning
1057 | if (t = strchr (ov->references,'\t')) {
| ^
| ( )
nntp.c:1057:10: note: use '==' to turn this assignment into an equality comparison
1057 | if (t = strchr (ov->references,'\t')) {
| ^
| ==
nntp.c:1062:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1062 | if (t = strchr (t,'\t')) {
| ~~^~~~~~~~~~~~~~~~~
nntp.c:1062:12: note: place parentheses around the assignment to silence this warning
1062 | if (t = strchr (t,'\t')) {
| ^
| ( )
nntp.c:1062:12: note: use '==' to turn this assignment into an equality comparison
1062 | if (t = strchr (t,'\t')) {
| ^
| ==
nntp.c:1066:30: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1066 | if (ov->optional.xref = strchr (t,'\t'))
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
nntp.c:1066:30: note: place parentheses around the assignment to silence this warning
1066 | if (ov->optional.xref = strchr (t,'\t'))
| ^
| ( )
nntp.c:1066:30: note: use '==' to turn this assignment into an equality comparison
1066 | if (ov->optional.xref = strchr (t,'\t'))
| ^
| ==
nntp.c:1099:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1099 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1099:13: note: place parentheses around the assignment to silence this warning
1099 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
| ^
| ( )
nntp.c:1099:13: note: use '==' to turn this assignment into an equality comparison
1099 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
| ^
| ==
nntp.c:1151:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1151 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1152 | &LOCAL->txtsize,NIL)) break;
| ~~~~~~~~~~~~~~~~~~~~
nntp.c:1151:22: note: place parentheses around the assignment to silence this warning
1151 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
| ^
| (
1152 | &LOCAL->txtsize,NIL)) break;
|
| )
nntp.c:1151:22: note: use '==' to turn this assignment into an equality comparison
1151 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
| ^
| ==
nntp.c:1216:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1216 | if (msg = utf8_badcharset (charset)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1216:11: note: place parentheses around the assignment to silence this warning
1216 | if (msg = utf8_badcharset (charset)) {
| ^
| ( )
nntp.c:1216:11: note: use '==' to turn this assignment into an equality comparison
1216 | if (msg = utf8_badcharset (charset)) {
| ^
| ==
nntp.c:1261:39: warning: call to undeclared function 'time'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1261 | unsigned long now = (unsigned long) time (0);
| ^
nntp.c:1269:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1269 | if (set = pgm->msgno) { /* must be inside this sequence */
| ~~~~^~~~~~~~~~~~
nntp.c:1269:13: note: place parentheses around the assignment to silence this warning
1269 | if (set = pgm->msgno) { /* must be inside this sequence */
| ^
| ( )
nntp.c:1269:13: note: use '==' to turn this assignment into an equality comparison
1269 | if (set = pgm->msgno) { /* must be inside this sequence */
| ^
| ==
nntp.c:1277:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1277 | if (set = pgm->uid) { /* must be inside this sequence */
| ~~~~^~~~~~~~~~
nntp.c:1277:13: note: place parentheses around the assignment to silence this warning
1277 | if (set = pgm->uid) { /* must be inside this sequence */
| ^
| ( )
nntp.c:1277:13: note: use '==' to turn this assignment into an equality comparison
1277 | if (set = pgm->uid) { /* must be inside this sequence */
| ^
| ==
nntp.c:1314:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1314 | (!mail_parse_date (&delt,ov->date) ||
| ^~~~~~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
nntp.c:1513:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1513 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
| ~~^~~~~~
nntp.c:1513:25: note: place parentheses around the assignment to silence this warning
1513 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
| ^
| ( )
nntp.c:1513:25: note: use '==' to turn this assignment into an equality comparison
1513 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
| ^
| ==
nntp.c:1522:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1522 | if (t = strchr (v,'\t')) {
| ~~^~~~~~~~~~~~~~~~~
nntp.c:1522:8: note: place parentheses around the assignment to silence this warning
1522 | if (t = strchr (v,'\t')) {
| ^
| ( )
nntp.c:1522:8: note: use '==' to turn this assignment into an equality comparison
1522 | if (t = strchr (v,'\t')) {
| ^
| ==
nntp.c:1524:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1524 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1524:12: note: place parentheses around the assignment to silence this warning
1524 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
| ^
| ( )
nntp.c:1524:12: note: use '==' to turn this assignment into an equality comparison
1524 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
| ^
| ==
nntp.c:1529:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1529 | if (v = strchr (t,'\t')) {
| ~~^~~~~~~~~~~~~~~~~
nntp.c:1529:10: note: place parentheses around the assignment to silence this warning
1529 | if (v = strchr (t,'\t')) {
| ^
| ( )
nntp.c:1529:10: note: use '==' to turn this assignment into an equality comparison
1529 | if (v = strchr (t,'\t')) {
| ^
| ==
nntp.c:1531:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1531 | if (mail_parse_date (&telt,t)) r->date = mail_longdate (&telt);
| ^
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
nntp.c:1679:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1679 | if (netstream = /* try to open ordinary connection */
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1680 | net_open (&mb,dv,port,
| ~~~~~~~~~~~~~~~~~~~~~~
1681 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1682 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1679:21: note: place parentheses around the assignment to silence this warning
1679 | if (netstream = /* try to open ordinary connection */
| ^
| (
1680 | net_open (&mb,dv,port,
1681 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL),
1682 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) {
|
| )
nntp.c:1679:21: note: use '==' to turn this assignment into an equality comparison
1679 | if (netstream = /* try to open ordinary connection */
| ^
| ==
nntp.c:1720:35: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1720 | if (stream->netstream->stream =
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^
1721 | (*stls) (stream->netstream->stream,mb.host,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1722 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1723 | (mb.novalidate ? NET_NOVALIDATECERT:NIL)))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1720:35: note: place parentheses around the assignment to silence this warning
1720 | if (stream->netstream->stream =
| ^
| (
1721 | (*stls) (stream->netstream->stream,mb.host,
1722 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) |
1723 | (mb.novalidate ? NET_NOVALIDATECERT:NIL)))
|
| )
nntp.c:1720:35: note: use '==' to turn this assignment into an equality comparison
1720 | if (stream->netstream->stream =
| ^
| ==
nntp.c:1817:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1817 | if (args = strchr (t,' ')) *args++ = '\0';
| ~~~~~^~~~~~~~~~~~~~~~
nntp.c:1817:14: note: place parentheses around the assignment to silence this warning
1817 | if (args = strchr (t,' ')) *args++ = '\0';
| ^
| ( )
nntp.c:1817:14: note: use '==' to turn this assignment into an equality comparison
1817 | if (args = strchr (t,' ')) *args++ = '\0';
| ^
| ==
nntp.c:1818:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1818 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1818:29: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1818 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1819:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1819 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1819:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1819 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1820:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1820 | else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1820:34: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1820 | else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1821:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1821 | else if (!compare_cstring (t,"PAT")) NNTP.ext.pat = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1821:34: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1821 | else if (!compare_cstring (t,"PAT")) NNTP.ext.pat = T;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1822:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1822 | else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1822:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1822 | else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1823:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1823 | else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1823:34: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1823 | else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T;
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1825:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1825 | else if (!compare_cstring (t,"AUTHINFO") && args) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1825:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1825 | else if (!compare_cstring (t,"AUTHINFO") && args) {
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1828:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1828 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1828:29: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1828 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
nntp.c:1916:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1916 | if (s = strstr (env->date," (")) *s = NIL;
| ^~~~~~~~~
/usr/include/string.h:125:26: note: passing argument to parameter here
125 | char *strstr(const char *, const char *) __pure;
| ^
nntp.c:1916:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1916 | if (s = strstr (env->date," (")) *s = NIL;
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1916:9: note: place parentheses around the assignment to silence this warning
1916 | if (s = strstr (env->date," (")) *s = NIL;
| ^
| ( )
nntp.c:1916:9: note: use '==' to turn this assignment into an equality comparison
1916 | if (s = strstr (env->date," (")) *s = NIL;
| ^
| ==
nntp.c:2214:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2214 | while (t = strstr (s,"\015\012.")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:2214:12: note: place parentheses around the assignment to silence this warning
2214 | while (t = strstr (s,"\015\012.")) {
| ^
| ( )
nntp.c:2214:12: note: use '==' to turn this assignment into an equality comparison
2214 | while (t = strstr (s,"\015\012.")) {
| ^
| ==
64 warnings generated.
cc -c `cat CFLAGS` smtp.c
smtp.c:166:34: warning: passing 'char[21]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
166 | else if (!compare_cstring (mb.service,"submit")) {
| ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:166:45: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
166 | else if (!compare_cstring (mb.service,"submit")) {
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:172:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
172 | if (netstream = /* try to open ordinary connection */
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
173 | net_open (&mb,dv,port,
| ~~~~~~~~~~~~~~~~~~~~~~
174 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smtp.c:172:21: note: place parentheses around the assignment to silence this warning
172 | if (netstream = /* try to open ordinary connection */
| ^
| (
173 | net_open (&mb,dv,port,
174 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL),
175 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) {
|
| )
smtp.c:172:21: note: use '==' to turn this assignment into an equality comparison
172 | if (netstream = /* try to open ordinary connection */
| ^
| ==
smtp.c:184:23: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
184 | s = compare_cstring ("localhost",mb.host) ?
| ^~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:184:35: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
184 | s = compare_cstring ("localhost",mb.host) ?
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:690:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
690 | if (!compare_cstring (s,"SIZE")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:690:31: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
690 | if (!compare_cstring (s,"SIZE")) {
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:694:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
694 | else if (!compare_cstring (s,"DELIVERBY")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:694:36: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
694 | else if (!compare_cstring (s,"DELIVERBY")) {
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:698:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
698 | else if (!compare_cstring (s,"ATRN")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:698:36: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
698 | else if (!compare_cstring (s,"ATRN")) {
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:702:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
702 | else if (!compare_cstring (s,"AUTH"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:702:36: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
702 | else if (!compare_cstring (s,"AUTH"))
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:708:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
708 | else if (!compare_cstring (s,"SIZE")) ESMTP.size.ok = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:708:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
708 | else if (!compare_cstring (s,"SIZE")) ESMTP.size.ok = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:709:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
709 | else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:709:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
709 | else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:710:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
710 | else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:710:34: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
710 | else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:711:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
711 | else if (!compare_cstring (s,"ATRN")) ESMTP.atrn.ok = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:711:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
711 | else if (!compare_cstring (s,"ATRN")) ESMTP.atrn.ok = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:712:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
712 | else if (!compare_cstring (s,"SEND")) ESMTP.service.send = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:712:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
712 | else if (!compare_cstring (s,"SEND")) ESMTP.service.send = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:713:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
713 | else if (!compare_cstring (s,"SOML")) ESMTP.service.soml = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:713:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
713 | else if (!compare_cstring (s,"SOML")) ESMTP.service.soml = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:714:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
714 | else if (!compare_cstring (s,"SAML")) ESMTP.service.saml = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:714:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
714 | else if (!compare_cstring (s,"SAML")) ESMTP.service.saml = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:715:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
715 | else if (!compare_cstring (s,"EXPN")) ESMTP.service.expn = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:715:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
715 | else if (!compare_cstring (s,"EXPN")) ESMTP.service.expn = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:716:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
716 | else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:716:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
716 | else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:717:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
717 | else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:717:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
717 | else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:718:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
718 | else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:718:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
718 | else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:719:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
719 | else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:719:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
719 | else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:720:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
720 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:720:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
720 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:721:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
721 | else if (!compare_cstring (s,"PIPELINING")) ESMTP.service.pipe = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:721:34: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
721 | else if (!compare_cstring (s,"PIPELINING")) ESMTP.service.pipe = T;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:722:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
722 | else if (!compare_cstring (s,"ENHANCEDSTATUSCODES"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:722:34: warning: passing 'char[20]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
722 | else if (!compare_cstring (s,"ENHANCEDSTATUSCODES"))
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:724:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
724 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:724:34: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
724 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:725:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
725 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:725:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
725 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
smtp.c:783:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
783 | while (t = strstr (s,"\015\012.")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
smtp.c:783:12: note: place parentheses around the assignment to silence this warning
783 | while (t = strstr (s,"\015\012.")) {
| ^
| ( )
smtp.c:783:12: note: use '==' to turn this assignment into an equality comparison
783 | while (t = strstr (s,"\015\012.")) {
| ^
| ==
48 warnings generated.
cc -c `cat CFLAGS` imap4r1.c
imap4r1.c:505:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
505 | if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
| ~~^~~~~~~~~~~~~~~~
imap4r1.c:505:9: note: place parentheses around the assignment to silence this warning
505 | if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
| ^
| ( )
imap4r1.c:505:9: note: use '==' to turn this assignment into an equality comparison
505 | if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
| ^
| ==
imap4r1.c:505:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
505 | if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
| ^
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
imap4r1.c:505:62: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
505 | if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
imap4r1.c:507:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
507 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ~~^~~~~~~~~~~~~~~~
imap4r1.c:507:12: note: place parentheses around the assignment to silence this warning
507 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ( )
imap4r1.c:507:12: note: use '==' to turn this assignment into an equality comparison
507 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ==
imap4r1.c:564:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
564 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST";
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:564:33: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
564 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST";
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:566:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
566 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB";
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:566:38: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
566 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB";
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
578 | strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
579 | !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:702:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
702 | mm_log (reply->text,ret ? NIL : ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:849:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
849 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:849:20: note: place parentheses around the assignment to silence this warning
849 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
| ^
| ( )
imap4r1.c:849:20: note: use '==' to turn this assignment into an equality comparison
849 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
| ^
| ==
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
870 | if (!reply || strcmp (reply->tag,"*") ||
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
871 | (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
871 | (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:872:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
872 | if (reply) mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
877 | if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:985:36: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
985 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX");
| ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:985:47: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
985 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:995:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
995 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1041 | !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1045 | if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1045 | if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:1081:37: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1081 | if (compare_cstring (reply->tag,tag)) {
| ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:1083:70: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1083 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag))
| ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:1098:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1098 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1148:39: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1148 | else if (compare_cstring (reply->tag,tag))
| ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:1149:67: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1149 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag))
| ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:1158:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1158 | lsterr = cpystr (reply->text);
| ^~~~~~~~~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
imap4r1.c:1210:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1210 | mm_log (reply->text,WARN);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1240 | !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:1245:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1245 | strlen (reply->text),len))) {
| ^~~~~~~~~~~
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
imap4r1.c:1302:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1302 | mm_log (reply->text,WARN);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1317:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1317:13: note: place parentheses around the assignment to silence this warning
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ( )
imap4r1.c:1317:13: note: use '==' to turn this assignment into an equality comparison
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ==
imap4r1.c:1317:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ~~^~~~~
imap4r1.c:1317:45: note: place parentheses around the assignment to silence this warning
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ( )
imap4r1.c:1317:45: note: use '==' to turn this assignment into an equality comparison
1317 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ==
imap4r1.c:1342:40: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1342 | if (!imap_OK (stream,reply)) mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1363:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1363 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1416:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1416 | ov.date = env->date;
| ^ ~~~~~~~~~
imap4r1.c:1464:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1464 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1499:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1499 | if (j = (set->last == 0xffffffff) ? stream->nmsgs :
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1500 | min (set->last,stream->nmsgs)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1499:10: note: place parentheses around the assignment to silence this warning
1499 | if (j = (set->last == 0xffffffff) ? stream->nmsgs :
| ^
| (
1500 | min (set->last,stream->nmsgs)) {
|
| )
imap4r1.c:1499:10: note: use '==' to turn this assignment into an equality comparison
1499 | if (j = (set->last == 0xffffffff) ? stream->nmsgs :
| ^
| ==
imap4r1.c:1522:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1522 | if (k = (k > i) ? k - i : 0)
| ~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1522:9: note: place parentheses around the assignment to silence this warning
1522 | if (k = (k > i) ? k - i : 0)
| ^
| ( )
imap4r1.c:1522:9: note: use '==' to turn this assignment into an equality comparison
1522 | if (k = (k > i) ? k - i : 0)
| ^
| ==
imap4r1.c:1591:17: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1591 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1593:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1593 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1700:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1700 | else if (t = strstr (section,".HEADER")) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1700:16: note: place parentheses around the assignment to silence this warning
1700 | else if (t = strstr (section,".HEADER")) {
| ^
| ( )
imap4r1.c:1700:16: note: use '==' to turn this assignment into an equality comparison
1700 | else if (t = strstr (section,".HEADER")) {
| ^
| ==
imap4r1.c:1823:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1823 | mm_log (reply->text,WARN);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1833:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1833 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1842:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1842 | mm_log (reply->text,WARN);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1846:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1846 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1884:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1884 | if (k = imap_uidlookahead) {/* build UID list */
| ~~^~~~~~~~~~~~~~~~~~~
imap4r1.c:1884:11: note: place parentheses around the assignment to silence this warning
1884 | if (k = imap_uidlookahead) {/* build UID list */
| ^
| ( )
imap4r1.c:1884:11: note: use '==' to turn this assignment into an equality comparison
1884 | if (k = imap_uidlookahead) {/* build UID list */
| ^
| ==
imap4r1.c:1899:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1899 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1935:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1935 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:1976:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1976 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2044 | !strcmp (reply->key,"BAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2048:50: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2048 | for (set = ss; set; set = set->next) if (i = set->first) {
| ~~^~~~~~~~~~~~
imap4r1.c:2048:50: note: place parentheses around the assignment to silence this warning
2048 | for (set = ss; set; set = set->next) if (i = set->first) {
| ^
| ( )
imap4r1.c:2048:50: note: use '==' to turn this assignment into an equality comparison
2048 | for (set = ss; set; set = set->next) if (i = set->first) {
| ^
| ==
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2063 | if (!strcmp (reply->key,"BAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2069:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2069 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2105:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2105 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2168 | if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2175 | if (!strcmp (reply->key,"BAD"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2184:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2184 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2271:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2271 | if (!compare_cstring (thr->name,type))
| ^~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2271:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2271 | if (!compare_cstring (thr->name,type))
| ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2331 | if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2338 | if (!strcmp (reply->key,"BAD"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:2346:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2346 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2370:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2370 | mm_log (reply->text,imap_OK (stream,reply) ? (long) NIL : ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2395:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2395 | else if (mail_sequence (stream,sequence)) {
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
imap4r1.c:2423:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2423 | if (reply) mm_log (reply->text,ret ? (long) NIL : ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2461:65: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2461 | else if (ir && pc && LOCAL->referral && mail_sequence (stream,sequence) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
imap4r1.c:2465:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2465 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2518:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2518 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2581:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2581 | mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2611:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2611 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
imap4r1.c:2615:44: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2615 | LOCAL->reply.tag = LOCAL->reply.line = cpystr ("*");
| ^ ~~~~~~~~~~~~
imap4r1.c:2616:24: warning: assigning to 'unsigned char *' from 'char[4]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2616 | LOCAL->reply.key = "BAD";
| ^ ~~~~~
imap4r1.c:2617:25: warning: assigning to 'unsigned char *' from 'char[19]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2617 | LOCAL->reply.text = "Bad date in append";
| ^ ~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2650:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2650 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2650:15: note: place parentheses around the assignment to silence this warning
2650 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
| ^
| ( )
imap4r1.c:2650:15: note: use '==' to turn this assignment into an equality comparison
2650 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
| ^
| ==
imap4r1.c:2705:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2705:13: note: place parentheses around the assignment to silence this warning
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ( )
imap4r1.c:2705:13: note: use '==' to turn this assignment into an equality comparison
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ==
imap4r1.c:2705:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ~~^~~~~
imap4r1.c:2705:45: note: place parentheses around the assignment to silence this warning
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ( )
imap4r1.c:2705:45: note: use '==' to turn this assignment into an equality comparison
2705 | if (thr = LOCAL->cap.threader) while (t = thr) {
| ^
| ==
imap4r1.c:2813:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2813 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2837:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2837 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2859:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2859 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2882:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2882 | else mm_log (reply->text,ERROR);
| ^~~~~~~~~~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
imap4r1.c:2919:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2919 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") &&
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2919:46: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2919 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") &&
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2920:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2920 | compare_cstring (cmd,"STORE") &&
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2920:25: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2920 | compare_cstring (cmd,"STORE") &&
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2921:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2921 | compare_cstring (cmd,"SEARCH")) ?
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2921:25: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2921 | compare_cstring (cmd,"SEARCH")) ?
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:2927:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2927 | if (arglst = args) while (arg = *arglst++) {
| ~~~~~~~^~~~~~
imap4r1.c:2927:14: note: place parentheses around the assignment to silence this warning
2927 | if (arglst = args) while (arg = *arglst++) {
| ^
| ( )
imap4r1.c:2927:14: note: use '==' to turn this assignment into an equality comparison
2927 | if (arglst = args) while (arg = *arglst++) {
| ^
| ==
imap4r1.c:2927:33: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2927 | if (arglst = args) while (arg = *arglst++) {
| ~~~~^~~~~~~~~~~
imap4r1.c:2927:33: note: place parentheses around the assignment to silence this warning
2927 | if (arglst = args) while (arg = *arglst++) {
| ^
| ( )
imap4r1.c:2927:33: note: use '==' to turn this assignment into an equality comparison
2927 | if (arglst = args) while (arg = *arglst++) {
| ^
| ==
imap4r1.c:2947:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2947 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2947:17: note: place parentheses around the assignment to silence this warning
2947 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
| ^
| ( )
imap4r1.c:2947:17: note: use '==' to turn this assignment into an equality comparison
2947 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
| ^
| ==
imap4r1.c:2951:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2951 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2951:17: note: place parentheses around the assignment to silence this warning
2951 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
| ^
| ( )
imap4r1.c:2951:17: note: use '==' to turn this assignment into an equality comparison
2951 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
| ^
| ==
imap4r1.c:2959:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2959 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2960 | CMDBASE+MAXCOMMAND)) return reply;
| ~~~~~~~~~~~~~~~~~~~
imap4r1.c:2959:12: note: place parentheses around the assignment to silence this warning
2959 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
| ^
| (
2960 | CMDBASE+MAXCOMMAND)) return reply;
|
| )
imap4r1.c:2959:12: note: use '==' to turn this assignment into an equality comparison
2959 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
| ^
| ==
imap4r1.c:2963:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2963 | while (list = list->next);
| ~~~~~^~~~~~~~~~~~
imap4r1.c:2963:19: note: place parentheses around the assignment to silence this warning
2963 | while (list = list->next);
| ^
| ( )
imap4r1.c:2963:19: note: use '==' to turn this assignment into an equality comparison
2963 | while (list = list->next);
| ^
| ==
imap4r1.c:2967:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2967 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2968 | CMDBASE+MAXCOMMAND))
| ~~~~~~~~~~~~~~~~~~~
imap4r1.c:2967:17: note: place parentheses around the assignment to silence this warning
2967 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
| ^
| (
2968 | CMDBASE+MAXCOMMAND))
|
| )
imap4r1.c:2967:17: note: use '==' to turn this assignment into an equality comparison
2967 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
| ^
| ==
imap4r1.c:3053:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3053 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3053:17: note: place parentheses around the assignment to silence this warning
3053 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
| ^
| ( )
imap4r1.c:3053:17: note: use '==' to turn this assignment into an equality comparison
3053 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
| ^
| ==
imap4r1.c:3074:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3074 | if (!map->date || mail_parse_date (&elt,map->date)) {
| ^~~~~~~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
imap4r1.c:3075:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3075 | if (t = map->flags) { /* flags given? */
| ~~^~~~~~~~~~~~
imap4r1.c:3075:10: note: place parentheses around the assignment to silence this warning
3075 | if (t = map->flags) { /* flags given? */
| ^
| ( )
imap4r1.c:3075:10: note: use '==' to turn this assignment into an equality comparison
3075 | if (t = map->flags) { /* flags given? */
| ^
| ==
imap4r1.c:3087:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3087 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3088 | CMDBASE+MAXCOMMAND)) return reply;
| ~~~~~~~~~~~~~~~~~~~
imap4r1.c:3087:16: note: place parentheses around the assignment to silence this warning
3087 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
| ^
| (
3088 | CMDBASE+MAXCOMMAND)) return reply;
|
| )
imap4r1.c:3087:16: note: use '==' to turn this assignment into an equality comparison
3087 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
| ^
| ==
imap4r1.c:3091:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3091 | if (reply = imap_send_literal (stream,tag,&s,map->message))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3091:14: note: place parentheses around the assignment to silence this warning
3091 | if (reply = imap_send_literal (stream,tag,&s,map->message))
| ^
| ( )
imap4r1.c:3091:14: note: use '==' to turn this assignment into an equality comparison
3091 | if (reply = imap_send_literal (stream,tag,&s,map->message))
| ^
| ==
imap4r1.c:3121:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3121 | while (list = list->next);
| ~~~~~^~~~~~~~~~~~
imap4r1.c:3121:19: note: place parentheses around the assignment to silence this warning
3121 | while (list = list->next);
| ^
| ( )
imap4r1.c:3121:19: note: use '==' to turn this assignment into an equality comparison
3121 | while (list = list->next);
| ^
| ==
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3200 | if (strcmp (reply->tag,"+")) {/* prompt for more data? */
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3355:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3355 | if (hdr = pgm->header) do {
| ~~~~^~~~~~~~~~~~~
imap4r1.c:3355:11: note: place parentheses around the assignment to silence this warning
3355 | if (hdr = pgm->header) do {
| ^
| ( )
imap4r1.c:3355:11: note: use '==' to turn this assignment into an equality comparison
3355 | if (hdr = pgm->header) do {
| ^
| ==
imap4r1.c:3357:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3357 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3357:15: note: place parentheses around the assignment to silence this warning
3357 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
| ^
| ( )
imap4r1.c:3357:15: note: use '==' to turn this assignment into an equality comparison
3357 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
| ^
| ==
imap4r1.c:3360:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3360 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3360:15: note: place parentheses around the assignment to silence this warning
3360 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
| ^
| ( )
imap4r1.c:3360:15: note: use '==' to turn this assignment into an equality comparison
3360 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
| ^
| ==
imap4r1.c:3362:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3362 | } while (hdr = hdr->next);
| ~~~~^~~~~~~~~~~
imap4r1.c:3362:16: note: place parentheses around the assignment to silence this warning
3362 | } while (hdr = hdr->next);
| ^
| ( )
imap4r1.c:3362:16: note: use '==' to turn this assignment into an equality comparison
3362 | } while (hdr = hdr->next);
| ^
| ==
imap4r1.c:3365:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3365 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3365:15: note: place parentheses around the assignment to silence this warning
3365 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
| ^
| ( )
imap4r1.c:3365:15: note: use '==' to turn this assignment into an equality comparison
3365 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
| ^
| ==
imap4r1.c:3368:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3368 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3368:15: note: place parentheses around the assignment to silence this warning
3368 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
| ^
| ( )
imap4r1.c:3368:15: note: use '==' to turn this assignment into an equality comparison
3368 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
| ^
| ==
imap4r1.c:3374:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3374 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3374:15: note: place parentheses around the assignment to silence this warning
3374 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
| ^
| ( )
imap4r1.c:3374:15: note: use '==' to turn this assignment into an equality comparison
3374 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
| ^
| ==
imap4r1.c:3452:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3452 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3452:15: note: place parentheses around the assignment to silence this warning
3452 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
| ^
| ( )
imap4r1.c:3452:15: note: use '==' to turn this assignment into an equality comparison
3452 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
| ^
| ==
imap4r1.c:3454:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3454 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3454:15: note: place parentheses around the assignment to silence this warning
3454 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
| ^
| ( )
imap4r1.c:3454:15: note: use '==' to turn this assignment into an equality comparison
3454 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
| ^
| ==
imap4r1.c:3555:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3555 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3555:15: note: place parentheses around the assignment to silence this warning
3555 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
| ^
| ( )
imap4r1.c:3555:15: note: use '==' to turn this assignment into an equality comparison
3555 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
| ^
| ==
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3557 | if (!strcmp (reply->tag,"+")) return reply;
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3559 | else if (!strcmp (reply->tag,"*")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3564:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3564 | if (tag && !compare_cstring (tag,reply->tag)) return reply;
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3590:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3590 | if (!(LOCAL->reply.line = text)) {
| ^ ~~~~
imap4r1.c:3596:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3596 | if (stream->debug) mm_dlog (LOCAL->reply.line);
| ^~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
108 | #define LOCAL ((IMAPLOCAL *) stream->local)
| ^
./mail.h:1599:21: note: passing argument to parameter 'string' here
1599 | void mm_dlog (char *string);
| ^
imap4r1.c:3597:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3597 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) {
| ^~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
108 | #define LOCAL ((IMAPLOCAL *) stream->local)
| ^
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3597:26: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3597 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3603 | if (strcmp (LOCAL->reply.tag,"+")) {
| ^~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
108 | #define LOCAL ((IMAPLOCAL *) stream->local)
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3605:28: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3605 | if (!(LOCAL->reply.key = strtok_r (NIL," ",&r))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3615:29: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3615 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r)))
| ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3616:54: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3616 | LOCAL->reply.text = LOCAL->reply.key + strlen (LOCAL->reply.key);
| ^~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
108 | #define LOCAL ((IMAPLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
imap4r1.c:3619:22: warning: assigning to 'unsigned char *' from 'char[4]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3619 | LOCAL->reply.key = "BAD"; /* so it barfs if not expecting continuation */
| ^ ~~~~~
imap4r1.c:3620:29: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3620 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r)))
| ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3621:25: warning: assigning to 'unsigned char *' from 'char[1]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3621 | LOCAL->reply.text = "";
| ^ ~~
imap4r1.c:3641:40: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3641 | LOCAL->reply.tag = LOCAL->reply.line = cpystr (tag ? tag : "*");
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3642:20: warning: assigning to 'unsigned char *' from 'char[3]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3642 | LOCAL->reply.key = "NO";
| ^ ~~~~
imap4r1.c:3643:21: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3643 | LOCAL->reply.text = text;
| ^ ~~~~
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3658 | if (!strcmp (reply->key,"OK")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3659:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3659 | imap_parse_response (stream,reply->text,NIL,NIL);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3663 | else if (!strcmp (reply->key,"NO"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3664:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3664 | imap_parse_response (stream,reply->text,WARN,NIL);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3666 | if (!strcmp (reply->key,"BAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3667:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3667 | imap_parse_response (stream,reply->text,ERROR,NIL);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:3691:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3691 | msgno = strtoul (reply->key,(char **) &s,10);
| ^~~~~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3705:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3705 | s = ucase (strtok_r (reply->text," ",&r));
| ^~~~~~~~~~~
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3705:16: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3705 | s = ucase (strtok_r (reply->text," ",&r));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:3707:7: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3707 | t = strtok_r (NIL,"\n",&r);
| ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3710 | if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3712 | else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3714 | else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3722 | else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3722 | else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3733:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3733 | while (prop = (strtok_r (t," )",&r))) {
| ^
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3733:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3733 | while (prop = (strtok_r (t," )",&r))) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3733:19: note: place parentheses around the assignment to silence this warning
3733 | while (prop = (strtok_r (t," )",&r))) {
| ^
| ( )
imap4r1.c:3733:19: note: use '==' to turn this assignment into an equality comparison
3733 | while (prop = (strtok_r (t," )",&r))) {
| ^
| ==
imap4r1.c:3734:4: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3734 | t = strtok_r (NIL,"\n",&r);
| ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3738 | if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
| ^~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3738 | if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
| ^~~~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3746:27: warning: passing 'char[27]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3746 | mail_parse_date (elt,"01-Jan-1970 00:00:00 +0000");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
imap4r1.c:3752:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3752 | LOCAL->lastuid.uid = elt->private.uid = strtoul (t,(char **) &t,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3793:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3793 | if (!(s = strchr (md.what,']'))) {
| ^ ~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3795:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3795 | for (s = md.what; *s && (isdigit (*s) || (*s == '.')); s++);
| ^ ~~~~~~~
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3797 | if (strncmp (s,"HEADER.FIELDS",13) &&
| ^
/usr/include/string.h:105:26: note: passing argument to parameter here
105 | int strncmp(const char *, const char *, size_t) __pure;
| ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3798 | (!s[13] || strcmp (s+13,".NOT")))
| ^~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3808:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3808 | else if (t = strchr (s = t,' ')) *t++ = '\0';
| ^~~~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
imap4r1.c:3808:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3808 | else if (t = strchr (s = t,' ')) *t++ = '\0';
| ^ ~~~~~~~~~~~~~~~~~~
imap4r1.c:3808:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3808 | else if (t = strchr (s = t,' ')) *t++ = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~
imap4r1.c:3808:19: note: place parentheses around the assignment to silence this warning
3808 | else if (t = strchr (s = t,' ')) *t++ = '\0';
| ^
| ( )
imap4r1.c:3808:19: note: use '==' to turn this assignment into an equality comparison
3808 | else if (t = strchr (s = t,' ')) *t++ = '\0';
| ^
| ==
imap4r1.c:3813:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3813 | md.first = strtoul (s+1,(char **) &s,10) + 1;
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3856:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3856 | elt->rfc822_size = strtoul (t,(char **) &t,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3887 | else if (strcmp (s,"COPY")) {
| ^
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3894 | else if (!strcmp (reply->key,"FLAGS") && reply->text &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3896:20: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3896 | (s = strtok_r (reply->text+1," )",&r)))
| ^~~~~~~~~~~~~
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3896:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3896 | (s = strtok_r (reply->text+1," )",&r)))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3899:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3899 | compare_cstring (s,stream->user_flags[i]); i++);
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3905:74: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3905 | else if (!stream->user_flags[i]) stream->user_flags[i++] = cpystr (s);
| ^
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
imap4r1.c:3907:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3907 | while (s = strtok_r (NIL," )",&r));
| ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3907:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3907 | while (s = strtok_r (NIL," )",&r));
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3907:14: note: place parentheses around the assignment to silence this warning
3907 | while (s = strtok_r (NIL," )",&r));
| ^
| ( )
imap4r1.c:3907:14: note: use '==' to turn this assignment into an equality comparison
3907 | while (s = strtok_r (NIL," )",&r));
| ^
| ==
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3908 | else if (!strcmp (reply->key,"SEARCH")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3910:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3910 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do
| ^~~~~~~~~~~
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3910:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3910 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3911:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3911 | if (i = strtoul (t,NIL,10)) {
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3911:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3911 | if (i = strtoul (t,NIL,10)) {
| ~~^~~~~~~~~~~~~~~~~~~~
imap4r1.c:3911:13: note: place parentheses around the assignment to silence this warning
3911 | if (i = strtoul (t,NIL,10)) {
| ^
| ( )
imap4r1.c:3911:13: note: use '==' to turn this assignment into an equality comparison
3911 | if (i = strtoul (t,NIL,10)) {
| ^
| ==
imap4r1.c:3920:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3920 | } while (t = strtok_r (NIL," ",&r));
| ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3920:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3920 | } while (t = strtok_r (NIL," ",&r));
| ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3920:18: note: place parentheses around the assignment to silence this warning
3920 | } while (t = strtok_r (NIL," ",&r));
| ^
| ( )
imap4r1.c:3920:18: note: use '==' to turn this assignment into an equality comparison
3920 | } while (t = strtok_r (NIL," ",&r));
| ^
| ==
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3922 | else if (!strcmp (reply->key,"SORT")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3930:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3930 | if (reply->text && (t = strtok_r (reply->text," ",&r))) {
| ^~~~~~~~~~~
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:3930:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3930 | if (reply->text && (t = strtok_r (reply->text," ",&r))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3931:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3931 | do if ((i = atol (t)) && (LOCAL->filter ?
| ^
/usr/include/stdlib.h:94:24: note: passing argument to parameter here
94 | long atol(const char *);
| ^
imap4r1.c:3934:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3934 | while ((t = strtok_r (NIL," ",&r)) && (LOCAL->sortsize < stream->nmsgs));
| ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3940 | else if (!strcmp (reply->key,"THREAD")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3944:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
3944 | if (s = reply->text) {
| ~~^~~~~~~~~~~~~
imap4r1.c:3944:11: note: place parentheses around the assignment to silence this warning
3944 | if (s = reply->text) {
| ^
| ( )
imap4r1.c:3944:11: note: use '==' to turn this assignment into an equality comparison
3944 | if (s = reply->text) {
| ^
| ==
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3955 | else if (!strcmp (reply->key,"STATUS") && reply->text) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:3959:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3959 | (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) &&
| ^~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
imap4r1.c:3959:43: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3959 | (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) &&
| ^ ~~~~~~~~~~~~~~~~
imap4r1.c:3965:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3965 | while (*txt && (s = strchr (txt,' '))) {
| ^~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
imap4r1.c:3965:25: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3965 | while (*txt && (s = strchr (txt,' '))) {
| ^ ~~~~~~~~~~~~~~~~
imap4r1.c:3968:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3968 | i = strtoul (s,(char **) &s,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:3969:28: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3969 | if (!compare_cstring (txt,"MESSAGES")) {
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3973:33: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3973 | else if (!compare_cstring (txt,"RECENT")) {
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3977:33: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3977 | else if (!compare_cstring (txt,"UNSEEN")) {
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3981:33: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3981 | else if (!compare_cstring (txt,"UIDNEXT")) {
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3985:33: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3985 | else if (!compare_cstring (txt,"UIDVALIDITY")) {
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:3994:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
3994 | strcpy (strncpy (LOCAL->tmp,stream->mailbox,i) + i,t);
| ^
/usr/include/string.h:87:56: note: passing argument to parameter here
87 | char *strcpy(char * __restrict, const char * __restrict);
| ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4002 | else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4002 | else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4004:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4004 | (s = strchr (reply->text,')')) && (s[1] == ' ')) {
| ^~~~~~~~~~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
imap4r1.c:4004:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4004 | (s = strchr (reply->text,')')) && (s[1] == ' ')) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4008 | if (t = strtok_r (reply->text+1," ",&r)) do {
| ^~~~~~~~~~~~~
/usr/include/string.h:128:22: note: passing argument to parameter here
128 | char *strtok_r(char *, const char *, char **);
| ^
imap4r1.c:4008:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4008 | if (t = strtok_r (reply->text+1," ",&r)) do {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4008 | if (t = strtok_r (reply->text+1," ",&r)) do {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:11: note: place parentheses around the assignment to silence this warning
4008 | if (t = strtok_r (reply->text+1," ",&r)) do {
| ^
| ( )
imap4r1.c:4008:11: note: use '==' to turn this assignment into an equality comparison
4008 | if (t = strtok_r (reply->text+1," ",&r)) do {
| ^
| ==
imap4r1.c:4009:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4009 | if (!compare_cstring (t,"\\NoInferiors")) i |= LATT_NOINFERIORS;
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4010:36: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4010 | else if (!compare_cstring (t,"\\NoSelect")) i |= LATT_NOSELECT;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4011:36: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4011 | else if (!compare_cstring (t,"\\Marked")) i |= LATT_MARKED;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4012:36: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4012 | else if (!compare_cstring (t,"\\Unmarked")) i |= LATT_UNMARKED;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4013:36: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4013 | else if (!compare_cstring (t,"\\HasChildren")) i |= LATT_HASCHILDREN;
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4014:36: warning: passing 'char[15]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4014 | else if (!compare_cstring (t,"\\HasNoChildren")) i |= LATT_HASNOCHILDREN;
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4017:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4017 | while (t = strtok_r (NIL," ",&r));
| ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4017:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4017 | while (t = strtok_r (NIL," ",&r));
| ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4017:14: note: place parentheses around the assignment to silence this warning
4017 | while (t = strtok_r (NIL," ",&r));
| ^
| ( )
imap4r1.c:4017:14: note: use '==' to turn this assignment into an equality comparison
4017 | while (t = strtok_r (NIL," ",&r));
| ^
| ==
imap4r1.c:4028:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4028 | if (t = imap_parse_astring (stream,&s,reply,&j)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4028:11: note: place parentheses around the assignment to silence this warning
4028 | if (t = imap_parse_astring (stream,&s,reply,&j)) {
| ^
| ( )
imap4r1.c:4028:11: note: use '==' to turn this assignment into an equality comparison
4028 | if (t = imap_parse_astring (stream,&s,reply,&j)) {
| ^
| ==
imap4r1.c:4031:13: warning: assigning to 'unsigned char *' from 'char[16384]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4031 | sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t);
| ^ ~~~~~~~~~~
imap4r1.c:4031:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4031 | sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t);
| ^~~~~~~~~~~~~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
imap4r1.c:4034:59: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4034 | if (reply->key[1] == 'S') mm_lsub (stream,delimiter,s,i);
| ^
./mail.h:1596:54: note: passing argument to parameter 'name' here
1596 | void mm_lsub (MAILSTREAM *stream,int delimiter,char *name,long attributes);
| ^
imap4r1.c:4035:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4035 | else mm_list (stream,delimiter,s,i);
| ^
./mail.h:1595:54: note: passing argument to parameter 'name' here
1595 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes);
| ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4039 | else if (!strcmp (reply->key,"NAMESPACE")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4046:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4046 | if (s = reply->text) { /* parse namespace results */
| ~~^~~~~~~~~~~~~
imap4r1.c:4046:11: note: place parentheses around the assignment to silence this warning
4046 | if (s = reply->text) { /* parse namespace results */
| ^
| ( )
imap4r1.c:4046:11: note: use '==' to turn this assignment into an equality comparison
4046 | if (s = reply->text) { /* parse namespace results */
| ^
| ==
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4062 | else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4068:30: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4068 | do if ((ac->identifier = imap_parse_astring (stream,&s,reply,NIL)) &&
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4070:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4070 | ac->rights = imap_parse_astring (stream,&s,reply,NIL);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4079:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4079 | else if (ar) (*ar) (stream,t,al);
| ^
imap4r1.c:4083:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4083 | else if (ar) (*ar) (stream,t,NIL);
| ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4087 | else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4091:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4091 | if (s && (*s++ == ' ') && (id = imap_parse_astring (stream,&s,reply,NIL))){
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4093:7: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4093 | (r = imap_parse_astring (stream,&s,reply,NIL))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4107:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4107 | else if (lr) (*lr) (stream,t,id,r,rl);
| ^
imap4r1.c:4112:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4112 | else if (lr) (*lr) (stream,t,id,r,NIL);
| ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4130 | else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4134:34: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4134 | if (s && (*s++ == ' ') && (r = imap_parse_astring (stream,&s,reply,NIL))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4140:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4140 | else if (mr) (*mr) (stream,t,r);
| ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4152 | else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4163:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4163 | if ((qc->name = imap_parse_astring (stream,&s,reply,NIL)) && s &&
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4165:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4165 | if (isdigit (*s)) qc->usage = strtoul (s,(char **) &s,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:4166:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4166 | else if (t = strchr (s,' ')) t = s;
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
imap4r1.c:4166:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4166 | else if (t = strchr (s,' ')) t = s;
| ^ ~~~~~~~~~~~~~~
imap4r1.c:4166:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4166 | else if (t = strchr (s,' ')) t = s;
| ~~^~~~~~~~~~~~~~~~
imap4r1.c:4166:15: note: place parentheses around the assignment to silence this warning
4166 | else if (t = strchr (s,' ')) t = s;
| ^
| ( )
imap4r1.c:4166:15: note: use '==' to turn this assignment into an equality comparison
4166 | else if (t = strchr (s,' ')) t = s;
| ^
| ==
imap4r1.c:4168:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4168 | if (isdigit (*s)) qc->limit = strtoul (s,(char **) &s,10);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4169 | else if (t = strpbrk (s," )")) t = s;
| ^
/usr/include/string.h:116:27: note: passing argument to parameter here
116 | char *strpbrk(const char *, const char *) __pure;
| ^
imap4r1.c:4169:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4169 | else if (t = strpbrk (s," )")) t = s;
| ^ ~~~~~~~~~~~~~~~~
imap4r1.c:4169:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4169 | else if (t = strpbrk (s," )")) t = s;
| ~~^~~~~~~~~~~~~~~~~~
imap4r1.c:4169:17: note: place parentheses around the assignment to silence this warning
4169 | else if (t = strpbrk (s," )")) t = s;
| ^
| ( )
imap4r1.c:4169:17: note: use '==' to turn this assignment into an equality comparison
4169 | else if (t = strpbrk (s," )")) t = s;
| ^
| ==
imap4r1.c:4174:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4174 | if (qt) (*qt) (stream,t,ql);
| ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4193 | else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4208:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4208 | else if (qr) (*qr) (stream,t,rl);
| ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4219 | else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4219 | else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4220:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4220 | imap_parse_response (stream,reply->text,NIL,T);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4221 | else if (!strcmp (reply->key,"NO"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4222:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4222 | imap_parse_response (stream,reply->text,WARN,T);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4223 | else if (!strcmp (reply->key,"BAD"))
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4224:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4224 | imap_parse_response (stream,reply->text,ERROR,T);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4225 | else if (!strcmp (reply->key,"BYE")) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4227:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4227 | imap_parse_response (stream,reply->text,BYE,T);
| ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
229 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
| ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4229 | else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4230:37: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4230 | imap_parse_capabilities (stream,reply->text);
| ^~~~~~~~~~~
imap4r1.c:264:56: note: passing argument to parameter 't' here
264 | void imap_parse_capabilities (MAILSTREAM *stream,char *t);
| ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4231 | else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
| ^~~~~~~~~~
/usr/include/string.h:85:25: note: passing argument to parameter here
85 | int strcmp(const char *, const char *) __pure;
| ^
imap4r1.c:4233:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4233 | ((strlen (LOCAL->prefix) + strlen (reply->text)) < IMAPTMPLEN))
| ^~~~~~~~~~~
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
imap4r1.c:4234:18: warning: assigning to 'unsigned char *' from 'char[16384]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4234 | sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text);
| ^ ~~~~~~~~~~
imap4r1.c:4234:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4234 | sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text);
| ^~~~~~~~~~~~~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
imap4r1.c:4236:25: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4236 | mm_list (stream,NIL,t,NIL);
| ^
./mail.h:1595:54: note: passing argument to parameter 'name' here
1595 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes);
| ^
imap4r1.c:4266:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4266 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4266:11: note: place parentheses around the assignment to silence this warning
4266 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
| ^
| ( )
imap4r1.c:4266:11: note: use '==' to turn this assignment into an equality comparison
4266 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
| ^
| ==
imap4r1.c:4269:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4269 | if (!compare_cstring (t,"UIDVALIDITY") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4269:31: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4269 | if (!compare_cstring (t,"UIDVALIDITY") &&
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4275:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4275 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4275:12: note: place parentheses around the assignment to silence this warning
4275 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
| ^
| ( )
imap4r1.c:4275:12: note: use '==' to turn this assignment into an equality comparison
4275 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
| ^
| ==
imap4r1.c:4278:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4278 | else if (!compare_cstring (t,"UIDNEXT"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4278:36: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4278 | else if (!compare_cstring (t,"UIDNEXT"))
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4280:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4280 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4280:36: warning: passing 'char[15]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4280 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') &&
| ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4286:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4286 | if (s = strtok_r (s+1," ",&r)) do {
| ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4286:8: note: place parentheses around the assignment to silence this warning
4286 | if (s = strtok_r (s+1," ",&r)) do {
| ^
| ( )
imap4r1.c:4286:8: note: use '==' to turn this assignment into an equality comparison
4286 | if (s = strtok_r (s+1," ",&r)) do {
| ^
| ==
imap4r1.c:4288:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4288 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4288:30: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4288 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T;
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4289:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4289 | else if (!compare_cstring (s,"\\Deleted"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4289:35: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4289 | else if (!compare_cstring (s,"\\Deleted"))
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4291:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4291 | else if (!compare_cstring (s,"\\Flagged"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4291:35: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4291 | else if (!compare_cstring (s,"\\Flagged"))
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4293:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4293 | else if (!compare_cstring (s,"\\Answered"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4293:35: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4293 | else if (!compare_cstring (s,"\\Answered"))
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4295:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4295 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4295:35: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4295 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4300:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4300 | while (s = strtok_r (NIL," ",&r));
| ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4300:11: note: place parentheses around the assignment to silence this warning
4300 | while (s = strtok_r (NIL," ",&r));
| ^
| ( )
imap4r1.c:4300:11: note: use '==' to turn this assignment into an equality comparison
4300 | while (s = strtok_r (NIL," ",&r));
| ^
| ==
imap4r1.c:4303:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4303 | else if (!compare_cstring (t,"CAPABILITY"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4303:36: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4303 | else if (!compare_cstring (t,"CAPABILITY"))
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4306:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4306 | !compare_cstring (t,"COPYUID") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4306:29: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4306 | !compare_cstring (t,"COPYUID") &&
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4312:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4312 | else if (j && !compare_cstring (t,"APPENDUID") &&
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4312:41: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4312 | else if (j && !compare_cstring (t,"APPENDUID") &&
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4319:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4319 | if (!compare_cstring (t,"REFERRAL"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4319:26: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4319 | if (!compare_cstring (t,"REFERRAL"))
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4326:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4326 | if (!compare_cstring (t,"UIDNOTSTICKY")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4326:31: warning: passing 'char[13]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4326 | if (!compare_cstring (t,"UIDNOTSTICKY")) {
| ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4330:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4330 | else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4330:36: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4330 | else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4331:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4331 | else if (!compare_cstring (t,"READ-WRITE"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4331:36: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4331 | else if (!compare_cstring (t,"READ-WRITE"))
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4333:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4333 | else if (!compare_cstring (t,"PARSE") && !errflg)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4333:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4333 | else if (!compare_cstring (t,"PARSE") && !errflg)
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4375:12: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4375 | nam->name = imap_parse_string (stream,txtptr,reply,NIL,NIL,NIL);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4400:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4400 | if (!(par->attribute = imap_parse_string (stream,txtptr,reply,NIL,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4401 | NIL,NIL))) {
| ~~~~~~~~
imap4r1.c:4412:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4412 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4413 | NIL,LONGT))) {
| ~~~~~~~~~~
imap4r1.c:4485:29: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4485 | else if (isdigit (*(s = *txtptr)) &&
| ^ ~~~~~~~
/usr/include/ctype.h:92:32: note: expanded from macro 'isdigit'
92 | #define isdigit(c) __sbistype((c), _CTYPE_D)
| ^
imap4r1.c:4487:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4487 | strtoul (*txtptr,(char **) txtptr,10))) {
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:4571:21: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4571 | (*env)->subject = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4578:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4578 | (*env)->in_reply_to = imap_parse_string (stream,txtptr,reply,NIL,NIL,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4579 | LONGT);
| ~~~~~~
imap4r1.c:4580:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4580 | (*env)->message_id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4677:21: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4677 | adr->personal = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4678:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4678 | adr->adl = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4679:20: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4679 | adr->mailbox = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4680:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4680 | adr->host = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4777:19: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4777 | while (*(flag = ++*txtptr) == ' ');
| ^ ~~~~~~~~~
imap4r1.c:4785:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4785 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4785:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4785 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T;
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4786:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4786 | else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4786:39: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4786 | else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4787:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4787 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4787:39: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4787 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4788:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4788 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4788:39: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4788 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4789:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4789 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4789:39: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4789 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4790:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4790 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4790:39: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4790 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4814:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4814 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i);
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4814:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4814 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i);
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:4845:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4845 | if (i = *txtptr - s) { /* atom ends at atom_special */
| ~~^~~~~~~~~~~~~
imap4r1.c:4845:11: note: place parentheses around the assignment to silence this warning
4845 | if (i = *txtptr - s) { /* atom ends at atom_special */
| ^
| ( )
imap4r1.c:4845:11: note: use '==' to turn this assignment into an equality comparison
4845 | if (i = *txtptr - s) { /* atom ends at atom_special */
| ^
| ==
imap4r1.c:4847:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4847 | ret = strncpy ((char *) fs_get (i + 1),s,i);
| ^
/usr/include/string.h:106:57: note: passing argument to parameter here
106 | char *strncpy(char * __restrict, const char * __restrict, size_t);
| ^
imap4r1.c:4847:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4847 | ret = strncpy ((char *) fs_get (i + 1),s,i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4888:6: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4888 | st = ++*txtptr; /* remember start of string */
| ^ ~~~~~~~~~
imap4r1.c:4937:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4937 | if ((i = strtoul (*txtptr,(char **) txtptr,10)) > MAXSERVERLIT) {
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:4958:29: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4958 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4958:29: note: place parentheses around the assignment to silence this warning
4958 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
| ^
| ( )
imap4r1.c:4958:29: note: use '==' to turn this assignment into an equality comparison
4958 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
| ^
| ==
imap4r1.c:4966:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
4966 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
| ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4966:28: note: place parentheses around the assignment to silence this warning
4966 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
| ^
| ( )
imap4r1.c:4966:28: note: use '==' to turn this assignment into an equality comparison
4966 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
| ^
| ==
imap4r1.c:4968:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4968 | if (!(reply->line = net_getline (LOCAL->netstream)))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4969:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4969 | reply->line = cpystr ("");
| ^ ~~~~~~~~~~~
imap4r1.c:4970:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
4970 | if (stream->debug) mm_dlog (reply->line);
| ^~~~~~~~~~~
./mail.h:1599:21: note: passing argument to parameter 'string' here
1599 | void mm_dlog (char *string);
| ^
imap4r1.c:5038:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5038 | if (!(b = mail_body (stream,msgno,seg))) {
| ^~~
./mail.h:1686:19: note: passing argument to parameter 'section' here
1686 | unsigned char *section);
| ^
imap4r1.c:5115:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5115 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5115:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5115 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5115:25: note: place parentheses around the assignment to silence this warning
5115 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^
| ( )
imap4r1.c:5115:25: note: use '==' to turn this assignment into an equality comparison
5115 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^
| ==
imap4r1.c:5116:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5116 | ucase (body->subtype);
| ^~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:5134:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5134 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5155:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5155 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5155:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5155 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5155:13: note: place parentheses around the assignment to silence this warning
5155 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^
| ( )
imap4r1.c:5155:13: note: use '==' to turn this assignment into an equality comparison
5155 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^
| ==
imap4r1.c:5156:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5156 | ucase (s); /* application always gets uppercase form */
| ^
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:5165:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5165 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5165:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5165 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5165:25: note: place parentheses around the assignment to silence this warning
5165 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^
| ( )
imap4r1.c:5165:25: note: use '==' to turn this assignment into an equality comparison
5165 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
| ^
| ==
imap4r1.c:5166:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5166 | ucase (body->subtype); /* parse subtype */
| ^~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:5173:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5173 | body->id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5174:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5174 | body->description = imap_parse_string (stream,txtptr,reply,NIL,NIL,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5175 | LONGT);
| ~~~~~~
imap4r1.c:5176:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5176 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5176:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5176 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5176:13: note: place parentheses around the assignment to silence this warning
5176 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^
| ( )
imap4r1.c:5176:13: note: use '==' to turn this assignment into an equality comparison
5176 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
| ^
| ==
imap4r1.c:5177:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5177 | ucase (s); /* application always gets uppercase form */
| ^
./misc.h:86:38: note: passing argument to parameter 'string' here
86 | unsigned char *ucase (unsigned char *string);
| ^
imap4r1.c:5190:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5190 | body->size.bytes = strtoul (*txtptr,(char **) txtptr,10);
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:5210:30: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5210 | body->size.lines = strtoul (*txtptr,(char **) txtptr,10);
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:5217:12: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5217 | body->md5 = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5230:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5230 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5278:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5278 | if(!(par->attribute=imap_parse_string (stream,txtptr,reply,NIL,NIL,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5279 | LONGT))) {
| ~~~~~~
imap4r1.c:5284:22: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5284 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT))){
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5306:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5306 | ((*(s = *txtptr) == 'I') || (*s == 'i')) &&
| ^ ~~~~~~~
imap4r1.c:5330:28: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5330 | body->disposition.type = imap_parse_string (stream,txtptr,reply,NIL,NIL,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5331 | LONGT);
| ~~~~~~
imap4r1.c:5373:14: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5373 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5373:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5373 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5373:14: note: place parentheses around the assignment to silence this warning
5373 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
| ^
| ( )
imap4r1.c:5373:14: note: use '==' to turn this assignment into an equality comparison
5373 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
| ^
| ==
imap4r1.c:5441:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5441 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:5441:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5441 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5441:11: note: place parentheses around the assignment to silence this warning
5441 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do
| ^
| ( )
imap4r1.c:5441:11: note: use '==' to turn this assignment into an equality comparison
5441 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do
| ^
| ==
imap4r1.c:5446:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5446 | if (!(reply->line = net_getline (LOCAL->netstream)))
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5447:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5447 | reply->line = cpystr ("");
| ^ ~~~~~~~~~~~
imap4r1.c:5448:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5448 | if (stream->debug) mm_dlog (reply->line);
| ^~~~~~~~~~~
./mail.h:1599:21: note: passing argument to parameter 'string' here
1599 | void mm_dlog (char *string);
| ^
imap4r1.c:5453:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5453 | strtoul (*txtptr,(char **) txtptr,10);
| ^~~~~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
imap4r1.c:5477:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5477:13: note: place parentheses around the assignment to silence this warning
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ^
| ( )
imap4r1.c:5477:13: note: use '==' to turn this assignment into an equality comparison
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ^
| ==
imap4r1.c:5477:46: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ~~~^~~~~
imap4r1.c:5477:46: note: place parentheses around the assignment to silence this warning
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ^
| ( )
imap4r1.c:5477:46: note: use '==' to turn this assignment into an equality comparison
5477 | if (thr = LOCAL->cap.threader) while (th = thr) {
| ^
| ==
imap4r1.c:5487:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5487 | if (!compare_cstring (t,"IMAP4"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5487:29: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5487 | if (!compare_cstring (t,"IMAP4"))
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5489:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5489 | else if (!compare_cstring (t,"IMAP4rev1"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5489:34: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5489 | else if (!compare_cstring (t,"IMAP4rev1"))
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5491:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5491 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5491:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5491 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5492:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5492 | else if (!compare_cstring (t,"IMAP2bis"))
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5492:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5492 | else if (!compare_cstring (t,"IMAP2bis"))
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5494:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5494 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5494:34: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5494 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5495:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5495 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5495:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5495 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5496:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5496 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5496:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5496 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5497:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5497 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5497:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5497 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5498:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5498 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5498:34: warning: passing 'char[18]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5498 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T;
| ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5499:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5499 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5499:34: warning: passing 'char[16]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5499 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T;
| ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5500:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5500 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5500:34: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5500 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5501:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5501 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5501:34: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5501 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5502:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5502 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5502:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5502 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5503:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5503 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5503:34: warning: passing 'char[14]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5503 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T;
| ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5504:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5504 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5504:34: warning: passing 'char[3]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5504 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T;
| ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5505:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5505 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5505:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5505 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5506:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5506 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5506:34: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5506 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T;
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5507:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5507 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5507:34: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5507 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T;
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5508:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5508 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5508:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5508 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5509:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5509 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5509:34: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5509 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5510:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5510 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5510:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5510 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5511:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5511 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5511:34: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5511 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5512:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5512 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5512:34: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5512 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T;
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5513:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5513 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5513:34: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5513 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5514:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5514 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5514:34: warning: passing 'char[8]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5514 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T;
| ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5520:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5520 | else if (s = strchr (t,'=')) {
| ~~^~~~~~~~~~~~~~~~
imap4r1.c:5520:16: note: place parentheses around the assignment to silence this warning
5520 | else if (s = strchr (t,'=')) {
| ^
| ( )
imap4r1.c:5520:16: note: use '==' to turn this assignment into an equality comparison
5520 | else if (s = strchr (t,'=')) {
| ^
| ==
imap4r1.c:5522:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5522 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5522:31: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5522 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) {
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5529:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5529 | else if (!compare_cstring (t,"AUTH")) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5529:36: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5529 | else if (!compare_cstring (t,"AUTH")) {
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5532:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5532 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5532:31: warning: passing 'char[10]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
5532 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T;
| ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
imap4r1.c:5609:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
5609 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
| ~~^~~~~~~~~~~~~~~~~~
imap4r1.c:5609:24: note: place parentheses around the assignment to silence this warning
5609 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
| ^
| ( )
imap4r1.c:5609:24: note: use '==' to turn this assignment into an equality comparison
5609 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
| ^
| ==
424 warnings generated.
cc -c `cat CFLAGS` pop3.c
pop3.c:180:22: warning: passing 'char[256]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
180 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL;
| ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:180:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
180 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:232:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
232 | (pop3_valid (ref) && pmatch ("INBOX",pat)) :
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:232:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
232 | (pop3_valid (ref) && pmatch ("INBOX",pat)) :
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:233:60: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
233 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)))
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:233:68: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
233 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)))
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:248:37: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
248 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) {
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:248:45: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
248 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) {
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:253:64: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
253 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) {
| ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:253:72: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
253 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) {
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:279:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
279 | if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
| ~~^~~~~~~~~~~~~~~~
pop3.c:279:9: note: place parentheses around the assignment to silence this warning
279 | if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
| ^
| ( )
pop3.c:279:9: note: use '==' to turn this assignment into an equality comparison
279 | if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
| ^
| ==
pop3.c:279:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
279 | if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
| ^
./misc.h:82:16: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:279:62: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
279 | if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
| ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
82 | pmatch_full (s,pat,NIL)
| ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
pop3.c:281:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
281 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ~~^~~~~~~~~~~~~~~~
pop3.c:281:12: note: place parentheses around the assignment to silence this warning
281 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ( )
pop3.c:281:12: note: use '==' to turn this assignment into an equality comparison
281 | while (s = sm_read (&sdb)); /* until no more subscriptions */
| ^
| ==
pop3.c:429:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
429 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
| ~~~~~~~~~~~~~^~~~~~~~~~
pop3.c:429:24: note: place parentheses around the assignment to silence this warning
429 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
| ^
| ( )
pop3.c:429:24: note: use '==' to turn this assignment into an equality comparison
429 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
| ^
| ==
pop3.c:499:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
499 | if (args = strchr (t,' ')) *args++ = '\0';
| ~~~~~^~~~~~~~~~~~~~~~
pop3.c:499:14: note: place parentheses around the assignment to silence this warning
499 | if (args = strchr (t,' ')) *args++ = '\0';
| ^
| ( )
pop3.c:499:14: note: use '==' to turn this assignment into an equality comparison
499 | if (args = strchr (t,' ')) *args++ = '\0';
| ^
| ==
pop3.c:500:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
500 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:500:29: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
500 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:501:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
501 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:501:34: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
501 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:502:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
502 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:502:34: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
502 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T;
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:503:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
503 | else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:503:34: warning: passing 'char[4]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
503 | else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T;
| ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:504:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
504 | else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:504:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
504 | else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:505:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
505 | else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:505:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
505 | else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T;
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:506:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
506 | else if (!compare_cstring (t,"IMPLEMENTATION") && args)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:506:34: warning: passing 'char[15]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
506 | else if (!compare_cstring (t,"IMPLEMENTATION") && args)
| ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:508:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
508 | else if (!compare_cstring (t,"EXPIRE") && args) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:508:34: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
508 | else if (!compare_cstring (t,"EXPIRE") && args) {
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:510:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
510 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ~~^~~~~~~~~~~~~~~~~~
pop3.c:510:13: note: place parentheses around the assignment to silence this warning
510 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ^
| ( )
pop3.c:510:13: note: use '==' to turn this assignment into an equality comparison
510 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ^
| ==
pop3.c:516:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
516 | (!compare_cstring (args,"NEVER")) ? 65535 :
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:516:26: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
516 | (!compare_cstring (args,"NEVER")) ? 65535 :
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:517:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
517 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args));
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:517:31: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
517 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args));
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:519:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
519 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) {
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:519:34: warning: passing 'char[12]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
519 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) {
| ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:521:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
521 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ~~^~~~~~~~~~~~~~~~~~
pop3.c:521:13: note: place parentheses around the assignment to silence this warning
521 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ^
| ( )
pop3.c:521:13: note: use '==' to turn this assignment into an equality comparison
521 | if (s = strchr(args,' ')){/* separate time from possible USER */
| ^
| ==
pop3.c:527:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
527 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ?
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:527:56: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
527 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ?
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:530:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
530 | else if (!compare_cstring (t,"SASL") && args)
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:530:34: warning: passing 'char[5]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
530 | else if (!compare_cstring (t,"SASL") && args)
| ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
pop3.c:784:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
784 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
pop3.c:785:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
785 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
pop3.c:843:48: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
843 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
pop3.c:843:48: note: place parentheses around the assignment to silence this warning
843 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
| ^
| ( )
pop3.c:843:48: note: use '==' to turn this assignment into an equality comparison
843 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
| ^
| ==
pop3.c:948:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
948 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
pop3.c:949:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
949 | mail_sequence (stream,sequence)) :
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
pop3.c:947:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
947 | if (ret = sequence ? ((options & EX_UID) ?
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
948 | mail_uid_sequence (stream,sequence) :
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
949 | mail_sequence (stream,sequence)) :
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
950 | LONGT) { /* build selected sequence if needed */
| ~~~~~
pop3.c:947:11: note: place parentheses around the assignment to silence this warning
947 | if (ret = sequence ? ((options & EX_UID) ?
| ^
| (
948 | mail_uid_sequence (stream,sequence) :
949 | mail_sequence (stream,sequence)) :
950 | LONGT) { /* build selected sequence if needed */
|
| )
pop3.c:947:11: note: use '==' to turn this assignment into an equality comparison
947 | if (ret = sequence ? ((options & EX_UID) ?
| ^
| ==
50 warnings generated.
cc -c `cat CFLAGS` unix.c
unix.c:231:2: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
231 | utime (file,tp); /* set the times */
| ^
unix.c:418:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
418 | if (s = strrchr (s,'/')) {
| ~~^~~~~~~~~~~~~~~~~
unix.c:418:8: note: place parentheses around the assignment to silence this warning
418 | if (s = strrchr (s,'/')) {
| ^
| ( )
unix.c:418:8: note: use '==' to turn this assignment into an equality comparison
418 | if (s = strrchr (s,'/')) {
| ^
| ==
unix.c:468:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
468 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:468:53: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
468 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:480:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
480 | LOCAL->buf = (char *) fs_get (CHUNKSIZE);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:626:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
626 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
627 | elt->private.msg.header.text.size) + 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:640:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
640 | read (LOCAL->fd,s = (char *) fs_get (elt->private.msg.header.text.size+1),
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:653:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
653 | *length = mail_filter (LOCAL->buf,*length,unix_hlines,FT_NOT);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1699:34: note: passing argument to parameter 'text' here
1699 | unsigned long mail_filter (char *text,unsigned long len,STRINGLIST *lines,
| ^
unix.c:703:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
703 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
704 | elt->private.msg.text.text.size) + 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:731:13: warning: assigning to 'char *' from 'unsigned char[65536]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
731 | d.chunk = tmp; /* initial buffer chunk */
| ^ ~~~
unix.c:734:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
734 | for (s = (char *) LOCAL->text.data; SIZE (&bs);) switch (c = SNX (&bs)) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:787:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
787 | sprintf (LOCAL->buf,"Mailbox stat failed, aborted: %s",
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:789:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
789 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:846:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
846 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
unix.c:847:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
847 | mail_sequence (stream,sequence)) : LONGT) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
unix.c:845:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
845 | if (ret = (sequence ? ((options & EX_UID) ?
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
846 | mail_uid_sequence (stream,sequence) :
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
847 | mail_sequence (stream,sequence)) : LONGT) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
848 | LOCAL && (LOCAL->ld >= 0) && !stream->lock &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
849 | unix_parse (stream,&lock,LOCK_EX)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:845:11: note: place parentheses around the assignment to silence this warning
845 | if (ret = (sequence ? ((options & EX_UID) ?
| ^
| (
846 | mail_uid_sequence (stream,sequence) :
847 | mail_sequence (stream,sequence)) : LONGT) &&
848 | LOCAL && (LOCAL->ld >= 0) && !stream->lock &&
849 | unix_parse (stream,&lock,LOCK_EX)) {
|
| )
unix.c:845:11: note: use '==' to turn this assignment into an equality comparison
845 | if (ret = (sequence ? ((options & EX_UID) ?
| ^
| ==
unix.c:860:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
860 | if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
| ^ ~~~~~~~~~~
unix.c:902:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
902 | if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
unix.c:903:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
903 | mail_sequence (stream,sequence))) return NIL;
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
unix.c:909:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
909 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:909:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
909 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:916:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
916 | sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:917:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
917 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:921:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
921 | sprintf (LOCAL->buf,"Invalid UNIX-format mailbox name: %.80s",mailbox);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:922:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
922 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:926:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
926 | sprintf (LOCAL->buf,"Not a UNIX-format mailbox: %.80s",mailbox);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:927:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
927 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:936:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
936 | sprintf (LOCAL->buf,"Unable to write-open mailbox for COPYUID: %.80s",
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:938:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
938 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:947:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
947 | sprintf (LOCAL->buf,"Can't open destination mailbox: %s",strerror (errno));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:948:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
948 | MM_LOG (LOCAL->buf,ERROR);/* log the error */
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:957:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
957 | if (write (fd,LOCAL->buf,elt->private.special.text.size) < 0) ret = NIL;
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
unix.c:965:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
965 | unix_xstatus (stream,LOCAL->buf,elt,++(tstream->uid_last),LONGT) :
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:131:54: note: passing argument to parameter 'status' here
131 | unsigned long unix_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
unix.c:966:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
966 | unix_xstatus (stream,LOCAL->buf,elt,NIL,NIL);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:131:54: note: passing argument to parameter 'status' here
131 | unsigned long unix_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
unix.c:967:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
967 | if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
unix.c:981:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
981 | sprintf (LOCAL->buf,"Message copy failed: %s",strerror (errno));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:998:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
998 | utime (file,tp); /* set the times */
| ^
unix.c:1007:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1007 | if (!ret) MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1051:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1051 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1051:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1051 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1093:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1093 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
unix.c:1159:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1159 | utime (file,tp); /* set the times */
| ^
unix.c:1196:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1196 | if ((s = stream->user_flags[find_rightmost_bit (&uf)]) &&
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:1257:23: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1257 | for (x = tmp; x = strchr (x,'\r'); --j) memmove (x,x+1,j-(x-tmp));
| ~~^~~~~~~~~~~~~~~~~
unix.c:1257:23: note: place parentheses around the assignment to silence this warning
1257 | for (x = tmp; x = strchr (x,'\r'); --j) memmove (x,x+1,j-(x-tmp));
| ^
| ( )
unix.c:1257:23: note: use '==' to turn this assignment into an equality comparison
1257 | for (x = tmp; x = strchr (x,'\r'); --j) memmove (x,x+1,j-(x-tmp));
| ^
| ==
unix.c:1260:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
1260 | if ((c == '\n')) switch (tmp[0]) {
| ~~^~~~~~~
unix.c:1260:14: note: remove extraneous parentheses around the comparison to silence this warning
1260 | if ((c == '\n')) switch (tmp[0]) {
| ~ ^ ~
unix.c:1260:14: note: use '=' to turn this equality comparison into an assignment
1260 | if ((c == '\n')) switch (tmp[0]) {
| ^~
| =
unix.c:1424:17: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1424 | if (now && !utime (stream->mailbox,tp)) LOCAL->filetime = tp[1];
| ^
unix.c:1462:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1462 | sprintf (tmp,"Mailbox open failed, aborted: %s",strerror (errno));
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1463:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1463 | MM_LOG (tmp,ERROR);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1472:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1472 | sprintf (tmp,"Mailbox shrank from %lu to %lu bytes, aborted",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1474:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1474 | MM_LOG (tmp,ERROR); /* this is pretty bad */
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1483:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1483 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:1483:14: note: place parentheses around the assignment to silence this warning
1483 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ^
| ( )
unix.c:1483:14: note: use '==' to turn this assignment into an equality comparison
1483 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ^
| ==
unix.c:1486:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1486 | d.chunk = LOCAL->buf; /* initial buffer chunk */
| ^ ~~~~~~~~~~
unix.c:1495:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1495 | s = unix_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:1499:11: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1499 | sprintf (tmp,"Unexpected changes to mailbox (try restarting): %.20s",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1501:10: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1501 | MM_LOG (tmp,ERROR);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1550:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1550 | sprintf (tmp,"Unable to parse internal date: %s",(char *) date);
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1551:12: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1551 | MM_LOG (tmp,WARN);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1555:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1555 | s = t = unix_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1572 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^
/usr/include/string.h:116:27: note: passing argument to parameter here
116 | char *strpbrk(const char *, const char *) __pure;
| ^
unix.c:1572:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1572 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^ ~~~~~~~~~~~~~~~~~~~
unix.c:1572:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1572 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
unix.c:1578:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1578 | if (!compare_csizedtext (stream->user_flags[j],&uf)) {
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
110 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
| ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1626 | u = strpbrk (s," \n\r");
| ^
/usr/include/string.h:116:27: note: passing argument to parameter here
116 | char *strpbrk(const char *, const char *) __pure;
| ^
unix.c:1626:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1626 | u = strpbrk (s," \n\r");
| ^ ~~~~~~~~~~~~~~~~~~~
unix.c:1633:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1633 | strncpy (stream->user_flags[j],s,k);
| ^
/usr/include/string.h:106:57: note: passing argument to parameter here
106 | char *strncpy(char * __restrict, const char * __restrict, size_t);
| ^
unix.c:1661:16: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1661 | sprintf (tmp,"Message %lu UID %lu already has UID %lu",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1666:16: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1666 | sprintf (tmp,"Message %lu UID %lu less than %lu",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:1686:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1686 | MM_LOG (tmp,WARN);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:1742:34: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1742 | if (!compare_cstring (tmp,"STATUS") ||
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1743:27: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1743 | !compare_cstring (tmp,"X-STATUS") ||
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1744:27: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1744 | !compare_cstring (tmp,"X-KEYWORDS") ||
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1745:27: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1745 | !compare_cstring (tmp,"X-UID") ||
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1746:27: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1746 | !compare_cstring (tmp,"X-IMAP") ||
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1747:27: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1747 | !compare_cstring (tmp,"X-IMAPBASE")) {
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:1770:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1770 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^ ~~~~~~~~~~~~~~~~~~~~
unix.c:1770:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1770 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~
unix.c:1770:14: note: place parentheses around the assignment to silence this warning
1770 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^
| ( )
unix.c:1770:14: note: use '==' to turn this assignment into an equality comparison
1770 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^
| ==
unix.c:1796:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1796 | s = unix_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2015:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2015 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ~~^~~~~~~~~~~~~~~~~~~~~~~
unix.c:2015:44: note: place parentheses around the assignment to silence this warning
2015 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ^
| ( )
unix.c:2015:44: note: use '==' to turn this assignment into an equality comparison
2015 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ^
| ==
unix.c:2037:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2037 | if (n = elt->user_flags) do {
| ~~^~~~~~~~~~~~~~~~~
unix.c:2037:11: note: place parentheses around the assignment to silence this warning
2037 | if (n = elt->user_flags) do {
| ^
| ( )
unix.c:2037:11: note: use '==' to turn this assignment into an equality comparison
2037 | if (n = elt->user_flags) do {
| ^
| ==
unix.c:2082:60: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2082 | unsigned long size = LOCAL->pseudo ? unix_pseudo (stream,LOCAL->buf) : 0;
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
1962 | unsigned long unix_pseudo (MAILSTREAM *stream,char *hdr)
| ^
unix.c:2090:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2090 | unix_xstatus (stream,LOCAL->buf,elt,NIL,flag) +
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1989:54: note: passing argument to parameter 'status' here
1989 | unsigned long unix_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
unix.c:2098:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2098 | size = unix_pseudo (stream,LOCAL->buf);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
1962 | unsigned long unix_pseudo (MAILSTREAM *stream,char *hdr)
| ^
unix.c:2101:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2101 | if (ret = unix_extend (stream,size)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2101:11: note: place parentheses around the assignment to silence this warning
2101 | if (ret = unix_extend (stream,size)) {
| ^
| ( )
unix.c:2101:11: note: use '==' to turn this assignment into an equality comparison
2101 | if (ret = unix_extend (stream,size)) {
| ^
| ==
unix.c:2118:53: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2118 | unix_write (&f,LOCAL->buf,unix_pseudo (stream,LOCAL->buf));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
1962 | unsigned long unix_pseudo (MAILSTREAM *stream,char *hdr)
| ^
unix.c:2118:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2118 | unix_write (&f,LOCAL->buf,unix_pseudo (stream,LOCAL->buf));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:136:36: note: passing argument to parameter 's' here
136 | void unix_write (UNIXFILE *f,char *s,unsigned long i);
| ^
unix.c:2135:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2135 | unix_xstatus (stream,LOCAL->buf,elt,NIL,flag)))) {
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1989:54: note: passing argument to parameter 'status' here
1989 | unsigned long unix_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
unix.c:2149:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2149 | unix_write (&f,LOCAL->buf,elt->private.special.text.size);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:136:36: note: passing argument to parameter 's' here
136 | void unix_write (UNIXFILE *f,char *s,unsigned long i);
| ^
unix.c:2170:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2170 | j = unix_xstatus (stream,LOCAL->buf,elt,NIL,flag));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:1989:54: note: passing argument to parameter 'status' here
1989 | unsigned long unix_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
unix.c:2169:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2169 | unix_write (&f,LOCAL->buf,
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
unix.c:136:36: note: passing argument to parameter 's' here
136 | void unix_write (UNIXFILE *f,char *s,unsigned long i);
| ^
unix.c:2250:10: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
2250 | if (!utime (stream->mailbox,tp)) LOCAL->filetime = tp[1];
| ^
unix.c:2255:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2255 | sprintf (LOCAL->buf,"Mailbox open failed, aborted: %s",strerror (errno));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2256:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2256 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:2277:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2277 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = i) + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2282:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2282 | if ((write (LOCAL->fd,LOCAL->buf,i) >= 0) && !fsync (LOCAL->fd)) break;
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
unix.c:2288:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2288 | sprintf (LOCAL->buf,"Unable to extend mailbox: %s",strerror (e));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2289:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2289 | if (!stream->silent) MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:2311:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2311 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2311:11: note: place parentheses around the assignment to silence this warning
2311 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ^
| ( )
unix.c:2311:11: note: use '==' to turn this assignment into an equality comparison
2311 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ^
| ==
unix.c:2327:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2327 | if (j = min (i,f->protect - f->filepos)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2327:11: note: place parentheses around the assignment to silence this warning
2327 | if (j = min (i,f->protect - f->filepos)) {
| ^
| ( )
unix.c:2327:11: note: use '==' to turn this assignment into an equality comparison
2327 | if (j = min (i,f->protect - f->filepos)) {
| ^
| ==
unix.c:2461:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2461 | if (!compare_cstring (name,"INBOX") && (unix_valid ("mbox") || !errno) &&
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:2461:30: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2461 | if (!compare_cstring (name,"INBOX") && (unix_valid ("mbox") || !errno) &&
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:2476:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2476 | if (!compare_cstring (mailbox,"INBOX")) return unix_create (NIL,"mbox");
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:2476:33: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2476 | if (!compare_cstring (mailbox,"INBOX")) return unix_create (NIL,"mbox");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
unix.c:2604:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2604 | sprintf (LOCAL->buf,"Mail drop %s is not in standard Unix format",
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2606:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2606 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:2618:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2618 | sprintf (LOCAL->buf,"New mail move failed: %s",strerror (errno));
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2619:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2619 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:2625:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2625 | sprintf (LOCAL->buf,"Mail drop %s lock failure, old=%lu now=%lu",
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2627:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2627 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
unix.c:2643:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2643 | sprintf (LOCAL->buf,"Moved %lu bytes of new mail to %s from %s",
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
unix.c:2648:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2648 | else MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
81 | #define LOCAL ((UNIXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
110 warnings generated.
cc -c `cat CFLAGS` mbx.c
mbx.c:303:7: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
303 | utime (tmp,tp); /* set the times */
| ^
mbx.c:307:61: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
307 | else if (((error = errno) == ENOENT) && !compare_cstring (name,"INBOX"))
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:307:66: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
307 | else if (((error = errno) == ENOENT) && !compare_cstring (name,"INBOX"))
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:480:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
480 | if (s = strrchr (tmp,'/')) {
| ~~^~~~~~~~~~~~~~~~~~~
mbx.c:480:11: note: place parentheses around the assignment to silence this warning
480 | if (s = strrchr (tmp,'/')) {
| ^
| ( )
mbx.c:480:11: note: use '==' to turn this assignment into an equality comparison
480 | if (s = strrchr (tmp,'/')) {
| ^
| ==
mbx.c:506:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
506 | if (ret && !compare_cstring (old,"INBOX")) mbx_create (NIL,"INBOX");
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:506:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
506 | if (ret && !compare_cstring (old,"INBOX")) mbx_create (NIL,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:587:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
587 | LOCAL->buf = (char *) fs_get (CHUNKSIZE);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:590:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
590 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:590:53: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
590 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:677:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
677 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:678:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
678 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:706:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
706 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = *length) + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:709:23: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
709 | read (LOCAL->fd,s = LOCAL->buf,*length);
| ^ ~~~~~~~~~~
mbx.c:746:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
746 | d.chunk = LOCAL->buf; /* initial buffer chunk */
| ^ ~~~~~~~~~~
mbx.c:777:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
777 | utime (stream->mailbox,tp);
| ^
mbx.c:825:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
825 | else if (ret = mbx_parse (stream)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~
mbx.c:825:20: note: place parentheses around the assignment to silence this warning
825 | else if (ret = mbx_parse (stream)) {
| ^
| ( )
mbx.c:825:20: note: use '==' to turn this assignment into an equality comparison
825 | else if (ret = mbx_parse (stream)) {
| ^
| ==
mbx.c:829:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
829 | if (elt = mbx_elt (stream,i,LOCAL->expok)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:829:12: note: place parentheses around the assignment to silence this warning
829 | if (elt = mbx_elt (stream,i,LOCAL->expok)) {
| ^
| ( )
mbx.c:829:12: note: use '==' to turn this assignment into an equality comparison
829 | if (elt = mbx_elt (stream,i,LOCAL->expok)) {
| ^
| ==
mbx.c:856:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
856 | sprintf (LOCAL->buf,"Reclaimed %lu bytes of expunged space",i);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:857:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
857 | MM_LOG (LOCAL->buf,(long) NIL);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:889:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
889 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:890:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
890 | mail_sequence (stream,sequence)) : LONGT) {
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:888:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
888 | if (ret = sequence ? ((options & EX_UID) ?
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
889 | mail_uid_sequence (stream,sequence) :
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
890 | mail_sequence (stream,sequence)) : LONGT) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:888:11: note: place parentheses around the assignment to silence this warning
888 | if (ret = sequence ? ((options & EX_UID) ?
| ^
| (
889 | mail_uid_sequence (stream,sequence) :
890 | mail_sequence (stream,sequence)) : LONGT) {
|
| )
mbx.c:888:11: note: use '==' to turn this assignment into an equality comparison
888 | if (ret = sequence ? ((options & EX_UID) ?
| ^
| ==
mbx.c:895:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
895 | else if (nexp = mbx_rewrite (stream,&reclaimed,sequence ? -1 : 1)) {
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:895:19: note: place parentheses around the assignment to silence this warning
895 | else if (nexp = mbx_rewrite (stream,&reclaimed,sequence ? -1 : 1)) {
| ^
| ( )
mbx.c:895:19: note: use '==' to turn this assignment into an equality comparison
895 | else if (nexp = mbx_rewrite (stream,&reclaimed,sequence ? -1 : 1)) {
| ^
| ==
mbx.c:896:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
896 | sprintf (LOCAL->buf,"Expunged %lu messages",nexp);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:897:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
897 | MM_LOG (LOCAL->buf,(long) NIL);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:900:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
900 | sprintf (LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:901:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
901 | MM_LOG (LOCAL->buf,(long) NIL);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:938:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
938 | if (j = hdrlen + txtlen) {
| ~~^~~~~~~~~~~~~~~~~
mbx.c:938:8: note: place parentheses around the assignment to silence this warning
938 | if (j = hdrlen + txtlen) {
| ^
| ( )
mbx.c:938:8: note: use '==' to turn this assignment into an equality comparison
938 | if (j = hdrlen + txtlen) {
| ^
| ==
mbx.c:940:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
940 | mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1687:24: note: passing argument to parameter 'string' here
1687 | char *mail_date (char *string,MESSAGECACHE *elt);
| ^
mbx.c:941:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
941 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mbx.c:941:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
941 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:947:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
947 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mbx.c:947:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
947 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:963:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
963 | sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:964:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
964 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:999:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
999 | if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:1000:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1000 | mail_sequence (stream,sequence))) return NIL;
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mbx.c:1009:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1009 | sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1010:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1010 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:1014:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1014 | sprintf (LOCAL->buf,"Invalid MBX-format mailbox name: %.80s",mailbox);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1015:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1015 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:1019:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1019 | sprintf (LOCAL->buf,"Not a MBX-format mailbox: %.80s",mailbox);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1020:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1020 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:1032:17: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1032 | mail_date(LOCAL->buf,elt);/* build target header */
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1687:24: note: passing argument to parameter 'string' here
1687 | char *mail_date (char *string,MESSAGECACHE *elt);
| ^
mbx.c:1035:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1035 | if (s = stream->user_flags[find_rightmost_bit (&j)])
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1035:8: note: place parentheses around the assignment to silence this warning
1035 | if (s = stream->user_flags[find_rightmost_bit (&j)])
| ^
| ( )
mbx.c:1035:8: note: use '==' to turn this assignment into an equality comparison
1035 | if (s = stream->user_flags[find_rightmost_bit (&j)])
| ^
| ==
mbx.c:1037:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1037 | if (!compare_cstring (s,t) && (k |= 1 << m)) break;
| ^
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:1037:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1037 | if (!compare_cstring (s,t) && (k |= 1 << m)) break;
| ^
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:1038:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1038 | sprintf (LOCAL->buf+strlen(LOCAL->buf),",%lu;%08lx%04x-%08lx\015\012",
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mbx.c:1038:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1038 | sprintf (LOCAL->buf+strlen(LOCAL->buf),",%lu;%08lx%04x-%08lx\015\012",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1044:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1044 | if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mbx.c:1044:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1044 | if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1044:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1044 | if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1044:15: note: place parentheses around the assignment to silence this warning
1044 | if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
| ^
| ( )
mbx.c:1044:15: note: use '==' to turn this assignment into an equality comparison
1044 | if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
| ^
| ==
mbx.c:1047:20: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1047 | ret = write (fd,LOCAL->buf,j) >= 0;
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1058:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1058 | sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1059:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1059 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mbx.c:1065:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1065 | sprintf (LOCAL->buf,"%08lx",dstream->uid_last);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1066:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1066 | write (fd,LOCAL->buf,8);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1076:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1076 | utime (file,tp); /* set the times */
| ^
mbx.c:1123:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1123 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:1123:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1123 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mbx.c:1165:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1165 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
mbx.c:1214:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1214 | utime (file,tp); /* set the times */
| ^
mbx.c:1274:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1274 | stream->uid_validity = strtoul (LOCAL->buf + 7,NIL,16);
| ^~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1277:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1277 | i = strtoul (LOCAL->buf + 15,NIL,16);
| ^~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1281:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1281 | (i < NUSERFLAGS) && (t = strchr (s,'\015')) && (t - s);
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mbx.c:1281:31: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1281 | (i < NUSERFLAGS) && (t = strchr (s,'\015')) && (t - s);
| ^ ~~~~~~~~~~~~~~~~~
mbx.c:1284:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1284 | if (!stream->user_flags[i] && (strlen (s) <= MAXUSERFLAG))
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mbx.c:1285:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1285 | stream->user_flags[i] = cpystr (s);
| ^
./misc.h:88:27: note: passing argument to parameter 'string' here
88 | char *cpystr (const char *string);
| ^
mbx.c:1295:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1295 | strtoul (LOCAL->buf + HDRSIZE - 8,NIL,16) : 0;
| ^~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1312:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1312 | if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mbx.c:1312:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1312 | if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1321:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1321 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mbx.c:1321:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1321 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1321:57: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1321 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mbx.c:1321:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1321 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~
mbx.c:1351:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1351 | if (!(j = strtoul (s,(char **) &x,10)) && (!(x && *x))) {
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1369:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1369 | if ((m = strtoul (t+13,NIL,16)) &&
| ^~~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1385:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1385 | if ((k = strtoul (t+8,NIL,16)) & fEXPUNGED) {
| ^~~
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1419:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1419 | elt->user_flags = strtoul (t,NIL,16);
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1447:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1447 | utime (stream->mailbox,tp);
| ^
mbx.c:1501:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1501 | sprintf (LOCAL->buf,"Mailbox shrank from %lu to %lu in flag read!",
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1503:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1503 | fatal (LOCAL->buf);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1510:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1510 | sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1511:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1511 | fatal (LOCAL->buf);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1515:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1515 | sprintf (LOCAL->buf+50,"Invalid flags for message %lu (%lu %lu): %s",
| ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1518:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1518 | fatal (LOCAL->buf+50);
| ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1522:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1522 | i = strtoul (LOCAL->buf+9,NIL,16);
| ^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1531:30: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1531 | elt->user_flags = strtoul (LOCAL->buf+1,NIL,16);
| ^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1547:9: warning: initializing 'char *' with an expression of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1547 | char *s = LOCAL->buf;
| ^ ~~~~~~~~~~
mbx.c:1558:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1558 | sprintf (LOCAL->buf + HDRSIZE - 10,"%08lx\015\012",LOCAL->lastpid);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1562:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1562 | if (write (LOCAL->fd,LOCAL->buf + CYGKLUDGEOFFSET,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1585:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1585 | sprintf (LOCAL->buf,"Mailbox shrank from %lu to %lu in flag update!",
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1587:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1587 | fatal (LOCAL->buf);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1594:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1594 | sprintf (LOCAL->buf,"Unable to read old status: %s",strerror (errno));
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1595:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1595 | fatal (LOCAL->buf);
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1599:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1599 | sprintf (LOCAL->buf+50,"Invalid flags for message %lu (%lu %lu): %s",
| ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1602:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1602 | fatal (LOCAL->buf+50);
| ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mbx.c:1607:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1607 | fEXPUNGED : (strtoul (LOCAL->buf+9,NIL,16)) & fEXPUNGED) +
| ^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mbx.c:1605:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1605 | sprintf (LOCAL->buf,"%08lx%04x-%08lx",elt->user_flags,(unsigned)
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mbx.c:1615:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1615 | if (write (LOCAL->fd,LOCAL->buf,21) > 0) break;
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1644:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1644 | if (*size = elt->private.msg.header.text.size) return ret;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1644:13: note: place parentheses around the assignment to silence this warning
1644 | if (*size = elt->private.msg.header.text.size) return ret;
| ^
| ( )
mbx.c:1644:13: note: use '==' to turn this assignment into an equality comparison
1644 | if (*size = elt->private.msg.header.text.size) return ret;
| ^
| ==
mbx.c:1663:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1663 | if (hdr) *hdr = LOCAL->buf;
| ^ ~~~~~~~~~~
mbx.c:1670:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1670 | if (hdr) *hdr = LOCAL->buf;
| ^ ~~~~~~~~~~
mbx.c:1680:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1680 | if (hdr) *hdr = LOCAL->buf; /* possibly return header too */
| ^ ~~~~~~~~~~
mbx.c:1736:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1736 | if (m = (elt = mbx_elt (stream,i,NIL))->private.special.offset - ppos) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1736:13: note: place parentheses around the assignment to silence this warning
1736 | if (m = (elt = mbx_elt (stream,i,NIL))->private.special.offset - ppos) {
| ^
| ( )
mbx.c:1736:13: note: use '==' to turn this assignment into an equality comparison
1736 | if (m = (elt = mbx_elt (stream,i,NIL))->private.special.offset - ppos) {
| ^
| ==
mbx.c:1761:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1761 | if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
| ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
83 | #define LOCAL ((MBXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mbx.c:1776:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1776 | if (m = (LOCAL->filesize -= delta) - pos) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1776:11: note: place parentheses around the assignment to silence this warning
1776 | if (m = (LOCAL->filesize -= delta) - pos) {
| ^
| ( )
mbx.c:1776:11: note: use '==' to turn this assignment into an equality comparison
1776 | if (m = (LOCAL->filesize -= delta) - pos) {
| ^
| ==
mbx.c:1795:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1795 | if (elt = mbx_elt (stream,i,T)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~
mbx.c:1795:15: note: place parentheses around the assignment to silence this warning
1795 | if (elt = mbx_elt (stream,i,T)) {
| ^
| ( )
mbx.c:1795:15: note: use '==' to turn this assignment into an equality comparison
1795 | if (elt = mbx_elt (stream,i,T)) {
| ^
| ==
mbx.c:1815:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1815 | utime (stream->mailbox,tp);
| ^
109 warnings generated.
cc -c `cat CFLAGS` mmdf.c
mmdf.c:382:2: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
382 | utime (file,tp); /* set the times */
| ^
mmdf.c:557:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
557 | if (s = strrchr (s,'/')) {
| ~~^~~~~~~~~~~~~~~~~
mmdf.c:557:8: note: place parentheses around the assignment to silence this warning
557 | if (s = strrchr (s,'/')) {
| ^
| ( )
mmdf.c:557:8: note: use '==' to turn this assignment into an equality comparison
557 | if (s = strrchr (s,'/')) {
| ^
| ==
mmdf.c:607:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
607 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:607:53: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
607 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:619:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
619 | LOCAL->buf = (char *) fs_get (CHUNKSIZE);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:765:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
765 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
766 | elt->private.msg.header.text.size) + 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:779:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
779 | read (LOCAL->fd,s = (char *) fs_get (elt->private.msg.header.text.size+1),
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:792:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
792 | *length = mail_filter (LOCAL->buf,*length,mmdf_hlines,FT_NOT);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1699:34: note: passing argument to parameter 'text' here
1699 | unsigned long mail_filter (char *text,unsigned long len,STRINGLIST *lines,
| ^
mmdf.c:842:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
842 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
843 | elt->private.msg.text.text.size) + 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:870:13: warning: assigning to 'char *' from 'unsigned char[65536]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
870 | d.chunk = tmp; /* initial buffer chunk */
| ^ ~~~
mmdf.c:873:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
873 | for (s = (char *) LOCAL->text.data; SIZE (&bs);) switch (c = SNX (&bs)) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:926:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
926 | sprintf (LOCAL->buf,"Mailbox stat failed, aborted: %s",
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:928:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
928 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:985:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
985 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mmdf.c:986:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
986 | mail_sequence (stream,sequence)) : LONGT) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mmdf.c:984:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
984 | if (ret = (sequence ? ((options & EX_UID) ?
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
985 | mail_uid_sequence (stream,sequence) :
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
986 | mail_sequence (stream,sequence)) : LONGT) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
987 | LOCAL && (LOCAL->ld >= 0) && !stream->lock &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
988 | mmdf_parse (stream,&lock,LOCK_EX)) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:984:11: note: place parentheses around the assignment to silence this warning
984 | if (ret = (sequence ? ((options & EX_UID) ?
| ^
| (
985 | mail_uid_sequence (stream,sequence) :
986 | mail_sequence (stream,sequence)) : LONGT) &&
987 | LOCAL && (LOCAL->ld >= 0) && !stream->lock &&
988 | mmdf_parse (stream,&lock,LOCK_EX)) {
|
| )
mmdf.c:984:11: note: use '==' to turn this assignment into an equality comparison
984 | if (ret = (sequence ? ((options & EX_UID) ?
| ^
| ==
mmdf.c:999:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
999 | if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
| ^ ~~~~~~~~~~
mmdf.c:1038:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1038 | if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mmdf.c:1039:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1039 | mail_sequence (stream,sequence))) return NIL;
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mmdf.c:1044:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1044 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1044:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1044 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1051:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1051 | sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1052:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1052 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1056:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1056 | sprintf (LOCAL->buf,"Invalid MMDF-format mailbox name: %.80s",mailbox);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1057:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1057 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1061:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1061 | sprintf (LOCAL->buf,"Not a MMDF-format mailbox: %.80s",mailbox);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1062:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1062 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1071:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1071 | sprintf (LOCAL->buf,"Unable to write-open mailbox for COPYUID: %.80s",
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1073:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1073 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1082:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1082 | sprintf (LOCAL->buf,"Can't open destination mailbox: %s",strerror (errno));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1083:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1083 | MM_LOG (LOCAL->buf,ERROR); /* log the error */
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1092:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1092 | if (write (fd,LOCAL->buf,elt->private.special.text.size) < 0) ret = NIL;
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mmdf.c:1100:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1100 | mmdf_xstatus (stream,LOCAL->buf,elt,++(tstream->uid_last),LONGT) :
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:287:54: note: passing argument to parameter 'status' here
287 | unsigned long mmdf_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
mmdf.c:1101:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1101 | mmdf_xstatus (stream,LOCAL->buf,elt,NIL,NIL);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:287:54: note: passing argument to parameter 'status' here
287 | unsigned long mmdf_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
mmdf.c:1102:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1102 | if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mmdf.c:1117:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1117 | sprintf (LOCAL->buf,"Message copy failed: %s",strerror (errno));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1134:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1134 | utime (file,tp); /* set the times */
| ^
mmdf.c:1143:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1143 | if (!ret) MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1188:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1188 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1188:34: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1188 | if (compare_cstring (mailbox,"INBOX")) {
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1230:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1230 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
mmdf.c:1295:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1295 | utime (file,tp); /* set the times */
| ^
mmdf.c:1332:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1332 | if ((s = stream->user_flags[find_rightmost_bit (&uf)]) &&
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1394:23: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1394 | for (x = tmp; x = strpbrk (x,"\01\r"); --j) memmove (x,x+1,j-(x-tmp));
| ~~^~~~~~~~~~~~~~~~~~~~~
mmdf.c:1394:23: note: place parentheses around the assignment to silence this warning
1394 | for (x = tmp; x = strpbrk (x,"\01\r"); --j) memmove (x,x+1,j-(x-tmp));
| ^
| ( )
mmdf.c:1394:23: note: use '==' to turn this assignment into an equality comparison
1394 | for (x = tmp; x = strpbrk (x,"\01\r"); --j) memmove (x,x+1,j-(x-tmp));
| ^
| ==
mmdf.c:1397:14: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
1397 | if ((c == '\n')) switch (tmp[0]) {
| ~~^~~~~~~
mmdf.c:1397:14: note: remove extraneous parentheses around the comparison to silence this warning
1397 | if ((c == '\n')) switch (tmp[0]) {
| ~ ^ ~
mmdf.c:1397:14: note: use '=' to turn this equality comparison into an assignment
1397 | if ((c == '\n')) switch (tmp[0]) {
| ^~
| =
mmdf.c:1553:17: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1553 | if (now && !utime (stream->mailbox,tp)) LOCAL->filetime = tp[1];
| ^
mmdf.c:1591:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1591 | sprintf (tmp,"Mailbox open failed, aborted: %s",strerror (errno));
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1592:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1592 | MM_LOG (tmp,ERROR);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1601:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1601 | sprintf (tmp,"Mailbox shrank from %lu to %lu bytes, aborted",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1603:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1603 | MM_LOG (tmp,ERROR); /* this is pretty bad */
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1612:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1612 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1612:14: note: place parentheses around the assignment to silence this warning
1612 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ^
| ( )
mmdf.c:1612:14: note: use '==' to turn this assignment into an equality comparison
1612 | else if (i = sbuf.st_size - LOCAL->filesize) {
| ^
| ==
mmdf.c:1615:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1615 | d.chunk = LOCAL->buf; /* initial buffer chunk */
| ^ ~~~~~~~~~~
mmdf.c:1624:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1624 | s = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1628:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1628 | sprintf (tmp,"Unexpected changes to mailbox (try restarting): %.20s",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1634:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1634 | s = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1639:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1639 | MM_LOG (tmp,ERROR);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1656:4: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1656 | s = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1692:15: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1692 | sprintf (tmp,"Unable to parse internal date: %s",(char *) date);
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1693:14: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1693 | MM_LOG (tmp,WARN);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1710:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1710 | if (t) s = t = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1736 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^
/usr/include/string.h:116:27: note: passing argument to parameter here
116 | char *strpbrk(const char *, const char *) __pure;
| ^
mmdf.c:1736:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1736 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^ ~~~~~~~~~~~~~~~~~~~
mmdf.c:1736:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1736 | if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mmdf.c:1742:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1742 | if (!compare_csizedtext (stream->user_flags[j],&uf)) {
| ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
110 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
| ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1790 | u = strpbrk (s," \n\r");
| ^
/usr/include/string.h:116:27: note: passing argument to parameter here
116 | char *strpbrk(const char *, const char *) __pure;
| ^
mmdf.c:1790:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1790 | u = strpbrk (s," \n\r");
| ^ ~~~~~~~~~~~~~~~~~~~
mmdf.c:1797:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1797 | strncpy (stream->user_flags[j],s,k);
| ^
/usr/include/string.h:106:57: note: passing argument to parameter here
106 | char *strncpy(char * __restrict, const char * __restrict, size_t);
| ^
mmdf.c:1825:16: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1825 | sprintf (tmp,"Message %lu UID %lu already has UID %lu",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1830:16: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1830 | sprintf (tmp,"Message %lu UID %lu less than %lu",
| ^~~
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:1850:13: warning: passing 'unsigned char[1024]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1850 | MM_LOG (tmp,WARN);
| ^~~
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:1906:34: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1906 | if (!compare_cstring (tmp,"STATUS") ||
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1907:27: warning: passing 'char[9]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1907 | !compare_cstring (tmp,"X-STATUS") ||
| ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1908:27: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1908 | !compare_cstring (tmp,"X-KEYWORDS") ||
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1909:27: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1909 | !compare_cstring (tmp,"X-UID") ||
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1910:27: warning: passing 'char[7]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1910 | !compare_cstring (tmp,"X-IMAP") ||
| ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1911:27: warning: passing 'char[11]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1911 | !compare_cstring (tmp,"X-IMAPBASE")) {
| ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mmdf.c:1934:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1934 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^ ~~~~~~~~~~~~~~~~~~~~
mmdf.c:1934:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
1934 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1934:14: note: place parentheses around the assignment to silence this warning
1934 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^
| ( )
mmdf.c:1934:14: note: use '==' to turn this assignment into an equality comparison
1934 | if (u = strpbrk (err,"\r\n")) *u = '\0';
| ^
| ==
mmdf.c:1958:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1958 | s = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1983:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1983 | s = mmdf_mbxline (stream,&bs,&i);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2178:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2178 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ~~^~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2178:44: note: place parentheses around the assignment to silence this warning
2178 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ^
| ( )
mmdf.c:2178:44: note: use '==' to turn this assignment into an equality comparison
2178 | for (n = 0; n < NUSERFLAGS; ++n) if (t = stream->user_flags[n])
| ^
| ==
mmdf.c:2200:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2200 | if (n = elt->user_flags) do {
| ~~^~~~~~~~~~~~~~~~~
mmdf.c:2200:11: note: place parentheses around the assignment to silence this warning
2200 | if (n = elt->user_flags) do {
| ^
| ( )
mmdf.c:2200:11: note: use '==' to turn this assignment into an equality comparison
2200 | if (n = elt->user_flags) do {
| ^
| ==
mmdf.c:2245:60: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2245 | unsigned long size = LOCAL->pseudo ? mmdf_pseudo (stream,LOCAL->buf) : 0;
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
2125 | unsigned long mmdf_pseudo (MAILSTREAM *stream,char *hdr)
| ^
mmdf.c:2253:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2253 | mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag) +
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
2152 | unsigned long mmdf_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
mmdf.c:2261:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2261 | size = mmdf_pseudo (stream,LOCAL->buf);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
2125 | unsigned long mmdf_pseudo (MAILSTREAM *stream,char *hdr)
| ^
mmdf.c:2264:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2264 | if (ret = mmdf_extend (stream,size)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2264:11: note: place parentheses around the assignment to silence this warning
2264 | if (ret = mmdf_extend (stream,size)) {
| ^
| ( )
mmdf.c:2264:11: note: use '==' to turn this assignment into an equality comparison
2264 | if (ret = mmdf_extend (stream,size)) {
| ^
| ==
mmdf.c:2281:53: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2281 | mmdf_write (&f,LOCAL->buf,mmdf_pseudo (stream,LOCAL->buf));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
2125 | unsigned long mmdf_pseudo (MAILSTREAM *stream,char *hdr)
| ^
mmdf.c:2281:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2281 | mmdf_write (&f,LOCAL->buf,mmdf_pseudo (stream,LOCAL->buf));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:292:36: note: passing argument to parameter 's' here
292 | void mmdf_write (MMDFFILE *f,char *s,unsigned long i);
| ^
mmdf.c:2298:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2298 | mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag)))) {
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
2152 | unsigned long mmdf_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
mmdf.c:2312:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2312 | mmdf_write (&f,LOCAL->buf,elt->private.special.text.size);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:292:36: note: passing argument to parameter 's' here
292 | void mmdf_write (MMDFFILE *f,char *s,unsigned long i);
| ^
mmdf.c:2333:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2333 | j = mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
2152 | unsigned long mmdf_xstatus (MAILSTREAM *stream,char *status,MESSAGECACHE *elt,
| ^
mmdf.c:2332:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2332 | mmdf_write (&f,LOCAL->buf,
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
mmdf.c:292:36: note: passing argument to parameter 's' here
292 | void mmdf_write (MMDFFILE *f,char *s,unsigned long i);
| ^
mmdf.c:2396:10: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
2396 | if (!utime (stream->mailbox,tp)) LOCAL->filetime = tp[1];
| ^
mmdf.c:2401:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2401 | sprintf (LOCAL->buf,"Mailbox open failed, aborted: %s",strerror (errno));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:2402:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2402 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:2423:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2423 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = i) + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2428:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2428 | if ((write (LOCAL->fd,LOCAL->buf,i) >= 0) && !fsync (LOCAL->fd)) break;
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mmdf.c:2434:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2434 | sprintf (LOCAL->buf,"Unable to extend mailbox: %s",strerror (e));
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mmdf.c:2435:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
2435 | if (!stream->silent) MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
236 | #define LOCAL ((MMDFLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mmdf.c:2457:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2457 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2457:11: note: place parentheses around the assignment to silence this warning
2457 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ^
| ( )
mmdf.c:2457:11: note: use '==' to turn this assignment into an equality comparison
2457 | if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
| ^
| ==
mmdf.c:2473:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
2473 | if (j = min (i,f->protect - f->filepos)) {
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2473:11: note: place parentheses around the assignment to silence this warning
2473 | if (j = min (i,f->protect - f->filepos)) {
| ^
| ( )
mmdf.c:2473:11: note: use '==' to turn this assignment into an equality comparison
2473 | if (j = min (i,f->protect - f->filepos)) {
| ^
| ==
101 warnings generated.
cc -c `cat CFLAGS` tenex.c
tenex.c:206:2: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
206 | utime (file,tp); /* set the times */
| ^
tenex.c:211:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
211 | else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:211:56: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
211 | else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:324:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
324 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ~~^~~~~~~~~~~~~~~~~~~
tenex.c:324:11: note: place parentheses around the assignment to silence this warning
324 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ^
| ( )
tenex.c:324:11: note: use '==' to turn this assignment into an equality comparison
324 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ^
| ==
tenex.c:350:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
350 | if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"mail.txt");
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:350:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
350 | if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"mail.txt");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:427:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
427 | LOCAL->buf = (char *) fs_get (CHUNKSIZE);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:433:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
433 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:433:53: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
433 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:500:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
500 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:501:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
501 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:511:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
511 | LOCAL->buf = (char *) fs_get (LOCAL->buflen + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:538:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
538 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:539:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
539 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:564:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
564 | LOCAL->buf = (char *) fs_get (LOCAL->buflen = i + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:574:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
574 | *length = strcrlfcpy (&LOCAL->buf,&LOCAL->buflen,s,i);
| ^
./nl.h:33:21: note: passing argument to parameter 'src' here
33 | unsigned char *src,unsigned long srcl);
| ^
tenex.c:609:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
609 | LOCAL->buf = (char *) fs_get (LOCAL->buflen = i + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:632:50: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
632 | strcrlfcpy (&LOCAL->text.data,&LOCAL->text.size,s,i);
| ^
./nl.h:33:21: note: passing argument to parameter 'src' here
33 | unsigned char *src,unsigned long srcl);
| ^
tenex.c:657:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
657 | utime (stream->mailbox,tp);
| ^
tenex.c:772:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
772 | if (j = hdrlen + txtlen) {
| ~~^~~~~~~~~~~~~~~~~
tenex.c:772:8: note: place parentheses around the assignment to silence this warning
772 | if (j = hdrlen + txtlen) {
| ^
| ( )
tenex.c:772:8: note: use '==' to turn this assignment into an equality comparison
772 | if (j = hdrlen + txtlen) {
| ^
| ==
tenex.c:774:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
774 | mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1687:24: note: passing argument to parameter 'string' here
1687 | char *mail_date (char *string,MESSAGECACHE *elt);
| ^
tenex.c:775:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
775 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
tenex.c:775:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
775 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:781:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
781 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
tenex.c:781:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
781 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
tenex.c:797:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
797 | sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:798:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
798 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:833:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
833 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:834:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
834 | mail_sequence (stream,sequence)) : LONGT) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:895:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
895 | if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
tenex.c:911:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
911 | sprintf (LOCAL->buf,
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:914:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
914 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:918:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
918 | sprintf (LOCAL->buf,"Expunged %lu messages",n);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:920:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
920 | MM_LOG (LOCAL->buf,(long) NIL);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:927:7: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
927 | utime (stream->mailbox,tp);
| ^
tenex.c:961:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
961 | if (!tenex_isvalid (mailbox,LOCAL->buf)) switch (errno) {
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
tenex.c:176:37: note: passing argument to parameter 'tmp' here
176 | int tenex_isvalid (char *name,char *tmp)
| ^
tenex.c:968:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
968 | sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:969:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
969 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:973:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
973 | sprintf (LOCAL->buf,"Invalid Tenex-format mailbox name: %.80s",mailbox);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:974:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
974 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:978:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
978 | sprintf (LOCAL->buf,"Not a Tenex-format mailbox: %.80s",mailbox);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:979:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
979 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:982:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
982 | if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:983:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
983 | mail_sequence (stream,sequence))) return NIL;
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
tenex.c:986:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
986 | sprintf (LOCAL->buf,"Unable to open copy mailbox: %s",strerror (errno));
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:987:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
987 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:1009:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1009 | if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
tenex.c:1014:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1014 | sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:1015:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1015 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
tenex.c:1022:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1022 | utime (file,tp); /* set the times */
| ^
tenex.c:1072:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1072 | if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"mail.txt");
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:1072:35: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1072 | if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"mail.txt");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
tenex.c:1122:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1122 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
tenex.c:1162:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1162 | utime (file,tp); /* set the times */
| ^
tenex.c:1244:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1244 | if (!(s = strchr (LOCAL->buf,'\012'))) {
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
tenex.c:1244:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1244 | if (!(s = strchr (LOCAL->buf,'\012'))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:1253:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1253 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
tenex.c:1253:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1253 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:1253:57: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1253 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
tenex.c:1253:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1253 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~
tenex.c:1276:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1276 | (elt->private.msg.full.text.size = strtoul (s,(char **) &s,10)) &&
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
tenex.c:1300:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1300 | j = strtoul (t,NIL,8); /* get user flags value */
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
tenex.c:1327:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1327 | utime (stream->mailbox,tp);
| ^
tenex.c:1378:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1378 | sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:1379:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1379 | fatal (LOCAL->buf);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
tenex.c:1387:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1387 | j = strtoul(LOCAL->buf,NIL,8);/* get user flags value */
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
tenex.c:1413:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1413 | sprintf (LOCAL->buf,"%010lo%02o",k,(unsigned)
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
tenex.c:1421:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1421 | write (LOCAL->fd,LOCAL->buf,12);
| ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
70 | #define LOCAL ((TENEXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
tenex.c:1427:7: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1427 | utime (stream->mailbox,tp);
| ^
tenex.c:1456:20: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1456 | read (LOCAL->fd,s = LOCAL->buf,i = min (msiz-siz,(long) MAILTMPLEN));
| ^ ~~~~~~~~~~
70 warnings generated.
cc -c `cat CFLAGS` mtx.c
mtx.c:199:2: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
199 | utime (file,tp); /* set the times */
| ^
mtx.c:204:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
204 | else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
| ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:204:56: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
204 | else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:317:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
317 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ~~^~~~~~~~~~~~~~~~~~~
mtx.c:317:11: note: place parentheses around the assignment to silence this warning
317 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ^
| ( )
mtx.c:317:11: note: use '==' to turn this assignment into an equality comparison
317 | if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
| ^
| ==
mtx.c:343:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
343 | if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"INBOX.MTX");
| ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:343:36: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
343 | if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"INBOX.MTX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:421:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
421 | LOCAL->buf = (char *) fs_get (CHUNKSIZE);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:424:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
424 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:424:53: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
424 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:487:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
487 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:488:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
488 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:511:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
511 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = *length) + 1);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:546:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
546 | d.chunk = LOCAL->buf; /* initial buffer chunk */
| ^ ~~~~~~~~~~
mtx.c:568:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
568 | utime (stream->mailbox,tp);
| ^
mtx.c:683:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
683 | if (j = hdrlen + txtlen) {
| ~~^~~~~~~~~~~~~~~~~
mtx.c:683:8: note: place parentheses around the assignment to silence this warning
683 | if (j = hdrlen + txtlen) {
| ^
| ( )
mtx.c:683:8: note: use '==' to turn this assignment into an equality comparison
683 | if (j = hdrlen + txtlen) {
| ^
| ==
mtx.c:685:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
685 | mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1687:24: note: passing argument to parameter 'string' here
1687 | char *mail_date (char *string,MESSAGECACHE *elt);
| ^
mtx.c:686:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
686 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mtx.c:686:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
686 | sprintf (LOCAL->buf + strlen (LOCAL->buf),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:692:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
692 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/string.h:100:28: note: passing argument to parameter here
100 | size_t strlen(const char *) __pure;
| ^
mtx.c:692:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
692 | if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mtx.c:708:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
708 | sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:709:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
709 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:744:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
744 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:745:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
745 | mail_sequence (stream,sequence)) : LONGT) &&
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:806:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
806 | if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mtx.c:821:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
821 | sprintf (LOCAL->buf,
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:824:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
824 | MM_LOG (LOCAL->buf,WARN);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:828:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
828 | sprintf (LOCAL->buf,"Expunged %lu messages",n);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:830:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
830 | MM_LOG (LOCAL->buf,(long) NIL);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:837:7: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
837 | utime (stream->mailbox,tp);
| ^
mtx.c:871:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
871 | if (!mtx_isvalid (mailbox,LOCAL->buf)) switch (errno) {
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
mtx.c:169:35: note: passing argument to parameter 'tmp' here
169 | int mtx_isvalid (char *name,char *tmp)
| ^
mtx.c:878:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
878 | sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:879:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
879 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:883:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
883 | sprintf (LOCAL->buf,"Invalid MTX-format mailbox name: %.80s",mailbox);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:884:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
884 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:888:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
888 | sprintf (LOCAL->buf,"Not a MTX-format mailbox: %.80s",mailbox);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:889:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
889 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:892:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
892 | if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:893:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
893 | mail_sequence (stream,sequence))) return NIL;
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
mtx.c:896:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
896 | sprintf (LOCAL->buf,"Unable to open copy mailbox: %s",strerror (errno));
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:897:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
897 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:919:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
919 | if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mtx.c:924:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
924 | sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:925:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
925 | MM_LOG (LOCAL->buf,ERROR);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./mail.h:1598:20: note: passing argument to parameter 'string' here
1598 | void mm_log (char *string,long errflg);
| ^
mtx.c:932:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
932 | utime (file,tp); /* set the times */
| ^
mtx.c:982:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
982 | if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"INBOX.MTX");
| ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:982:35: warning: passing 'char[6]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
982 | if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"INBOX.MTX");
| ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
109 | int compare_cstring (unsigned char *s1,unsigned char *s2);
| ^
mtx.c:1032:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1032 | if (!mail_parse_date (&elt,date)) {
| ^~~~
./mail.h:1689:56: note: passing argument to parameter 'string' here
1689 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
| ^
mtx.c:1065:3: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1065 | utime (file,tp); /* set the times */
| ^
mtx.c:1132:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1132 | if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mtx.c:1132:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1132 | if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:1141:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1141 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mtx.c:1141:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1141 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:1141:57: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1141 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^~~
/usr/include/string.h:80:26: note: passing argument to parameter here
80 | char *strchr(const char *, int) __pure;
| ^
mtx.c:1141:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1141 | if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
| ^ ~~~~~~~~~~~~~~~~
mtx.c:1164:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1164 | (elt->rfc822_size = strtoul (s,(char **) &s,10)) && (!(s && *s)) &&
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mtx.c:1188:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1188 | j = strtoul (t,NIL,8); /* get user flags value */
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mtx.c:1215:5: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1215 | utime (stream->mailbox,tp);
| ^
mtx.c:1266:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1266 | sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:1267:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1267 | fatal (LOCAL->buf);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
32 | void fatal (char *string);
| ^
mtx.c:1275:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1275 | j = strtoul(LOCAL->buf,NIL,8);/* get user flags value */
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdlib.h:121:34: note: passing argument to parameter here
121 | strtoul(const char * __restrict, char ** __restrict, int);
| ^
mtx.c:1301:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1301 | sprintf (LOCAL->buf,"%010lo%02o",k,(unsigned)
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
mtx.c:1309:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
1309 | write (LOCAL->fd,LOCAL->buf,12);
| ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
66 | #define LOCAL ((MTXLOCAL *) stream->local)
| ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
89 | long safe_write (int fd,char *buf,long nbytes);
| ^
mtx.c:1315:7: warning: call to undeclared function 'utime'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1315 | utime (stream->mailbox,tp);
| ^
64 warnings generated.
cc -c `cat CFLAGS` news.c
news.c:218:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
218 | if (s = strchr (pattern,'.')) *++s = '\0';
| ~~^~~~~~~~~~~~~~~~~~~~~~
news.c:218:13: note: place parentheses around the assignment to silence this warning
218 | if (s = strchr (pattern,'.')) *++s = '\0';
| ^
| ( )
news.c:218:13: note: use '==' to turn this assignment into an equality comparison
218 | if (s = strchr (pattern,'.')) *++s = '\0';
| ^
| ==
news.c:234:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ~~^~~~~~~~~~~~~~~~~~~~~~
news.c:234:11: note: place parentheses around the assignment to silence this warning
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ^
| ( )
news.c:234:11: note: use '==' to turn this assignment into an equality comparison
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ^
| ==
news.c:234:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ~~^~~~~~~~~~~~~~~~
news.c:234:44: note: place parentheses around the assignment to silence this warning
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ^
| ( )
news.c:234:44: note: use '==' to turn this assignment into an equality comparison
234 | if (t = strtok_r (s,"\n",&r)) do if (u = strchr (t,' ')) {
| ^
| ==
news.c:237:24: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
237 | if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
news.c:237:29: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
237 | if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
news.c:240:19: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
240 | if (pmatch_full (name,pattern,'.'))
| ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
news.c:240:24: warning: passing 'char[1024]' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
240 | if (pmatch_full (name,pattern,'.'))
| ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
29 | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
| ^
news.c:243:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
243 | } while (t = strtok_r (NIL,"\n",&r));
| ~~^~~~~~~~~~~~~~~~~~~~~~~~
news.c:243:16: note: place parentheses around the assignment to silence this warning
243 | } while (t = strtok_r (NIL,"\n",&r));
| ^
| ( )
news.c:243:16: note: use '==' to turn this assignment into an equality comparison
243 | } while (t = strtok_r (NIL,"\n",&r));
| ^
| ==
news.c:286:34: warning: expression result unused [-Wunused-value]
286 | for (i = 0, s = pattern; *s; *s++) if ((*s == '*') || (*s == '%')) ++i;
| ^~~~
news.c:368:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
368 | while (s = strchr (s,'.')) *s = '/';
| ~~^~~~~~~~~~~~~~~~
news.c:368:12: note: place parentheses around the assignment to silence this warning
368 | while (s = strchr (s,'.')) *s = '/';
| ^
| ( )
news.c:368:12: note: use '==' to turn this assignment into an equality comparison
368 | while (s = strchr (s,'.')) *s = '/';
| ^
| ==
news.c:370:36: error: incompatible function pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-function-pointer-types]
370 | if ((nmsgs = scandir (tmp,&names,news_select,news_numsort)) >= 0) {
| ^~~~~~~~~~~
/usr/include/dirent.h:126:12: note: passing argument to parameter here
126 | int (*)(const struct dirent *), int (*)(const struct dirent **,
| ^
news.c:370:48: error: incompatible function pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-function-pointer-types]
370 | if ((nmsgs = scandir (tmp,&names,news_select,news_numsort)) >= 0) {
| ^~~~~~~~~~~~
/usr/include/dirent.h:126:44: note: passing argument to parameter here
126 | int (*)(const struct dirent *), int (*)(const struct dirent **,
| ^
news.c:409:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
409 | while (c = *s++) if (!isdigit (c)) return NIL;
| ~~^~~~~~
news.c:409:12: note: place parentheses around the assignment to silence this warning
409 | while (c = *s++) if (!isdigit (c)) return NIL;
| ^
| ( )
news.c:409:12: note: use '==' to turn this assignment into an equality comparison
409 | while (c = *s++) if (!isdigit (c)) return NIL;
| ^
| ==
news.c:456:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
456 | mail_uid_sequence (stream,sequence) :
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
news.c:457:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
457 | mail_sequence (stream,sequence)))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
news.c:474:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
474 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
| ^~~~~~~~
./mail.h:1756:59: note: passing argument to parameter 'sequence' here
1756 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
news.c:474:67: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
474 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
| ^~~~~~~~
./mail.h:1755:55: note: passing argument to parameter 'sequence' here
1755 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
| ^
news.c:495:12: warning: passing 'unsigned char[65536]' to parameter of type 'char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
495 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid);
| ^~~~~~~~~~
news.c:61:15: note: expanded from macro 'LOCAL'
61 | #define LOCAL ((NEWSLOCAL *) stream->local)
| ^
/usr/include/stdio.h:285:31: note: passing argument to parameter here
285 | int sprintf(char * __restrict, const char * __restrict, ...);
| ^
news.c:500:20: warning: passing 'unsigned char[65536]' to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
500 | ((fd = open (LOCAL->buf,O_RDONLY,NIL)) >= 0)) {
| ^~~~~~~~~~
news.c:61:15: note: expanded from macro 'LOCAL'
61 | #define LOCAL ((NEWSLOCAL *) stream->local)
| ^
/usr/include/fcntl.h:359:22: note: passing argument to parameter here
359 | int open(const char *, int, ...);
| ^
news.c:504:13: warning: assigning to 'char *' from 'unsigned char[65536]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
504 | d.chunk = LOCAL->buf;
| ^ ~~~~~~~~~~
news.c:569:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
569 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ~~~~~~~~~~^~~~~~~~~
news.c:569:21: note: remove extraneous parentheses around the comparison to silence this warning
569 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ~ ^ ~
news.c:569:21: note: use '=' to turn this equality comparison into an assignment
569 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ^~
| =
news.c:589:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
589 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ~~~~~~~~~~^~~~~~~~~
news.c:589:21: note: remove extraneous parentheses around the comparison to silence this warning
589 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ~ ^ ~
news.c:589:21: note: use '=' to turn this equality comparison into an assignment
589 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
| ^~
| =
20 warnings and 2 errors generated.
*** Error code 1
Stop.
make[3]: stopped in /magus/work/usr/mports/mail/cclient/work/imap-2007f/c-client
*** Error code 1
Stop.
make[2]: stopped in /magus/work/usr/mports/mail/cclient/work/imap-2007f/c-client
*** Error code 1
Stop.
make[1]: stopped in /magus/work/usr/mports/mail/cclient/work/imap-2007f
*** Error code 1
Stop.
make: stopped in /magus/work/usr/mports/mail/cclient/work/imap-2007f
*** Error code 1
Stop.
make: stopped in /usr/mports/mail/cclient
Links
- GitHub
- Website: None
- All mail/cclient results
Depends On
NothingDepend Of
NothingCategories
CVEs
- Loading CVE information...
MidnightBSD Magus