=>> Building mail/panda-cclient build started at Tue Apr 9 11:24:31 CEST 2024 port directory: /usr/ports/mail/panda-cclient package name: panda-cclient-20130621_3 building for: FreeBSD 13amd64-default-php82-job-10 13.3-RELEASE-p1 FreeBSD 13.3-RELEASE-p1 amd64 maintained by: thierry@FreeBSD.org Makefile datestamp: -rw-r--r-- 1 root wheel 3455 May 21 2023 /usr/ports/mail/panda-cclient/Makefile Ports top last git commit: 3d100fcffcd Ports top unclean checkout: yes Port dir last git commit: 7c711691b37 Port dir unclean checkout: no Poudriere version: poudriere-git-3.4.99.20240122_1 Host OSVERSION: 1500018 Jail OSVERSION: 1303001 Job Id: 10 ---Begin Environment--- SHELL=/bin/csh OSVERSION=1303001 UNAME_v=FreeBSD 13.3-RELEASE-p1 UNAME_r=13.3-RELEASE-p1 BLOCKSIZE=K MAIL=/var/mail/root MM_CHARSET=UTF-8 LANG=C.UTF-8 STATUS=1 HOME=/root PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin MAKE_OBJDIR_CHECK_WRITABLE=0 LOCALBASE=/usr/local USER=root POUDRIERE_NAME=poudriere-git LIBEXECPREFIX=/usr/local/libexec/poudriere POUDRIERE_VERSION=3.4.99.20240122_1 MASTERMNT=/usr/local/poudriere/data/.m/13amd64-default-php82/ref LC_COLLATE=C POUDRIERE_BUILD_TYPE=bulk PACKAGE_BUILDING=yes SAVED_TERM= GID=0 OUTPUT_REDIRECTED_STDERR=4 OUTPUT_REDIRECTED=1 UID=0 PWD=/usr/local/poudriere/data/.m/13amd64-default-php82/10/.p OUTPUT_REDIRECTED_STDOUT=3 P_PORTS_FEATURES=FLAVORS SUBPACKAGES SELECTED_OPTIONS MASTERNAME=13amd64-default-php82 SCRIPTPREFIX=/usr/local/share/poudriere SCRIPTNAME=bulk.sh OLDPWD=/usr/local/poudriere/data/.m/13amd64-default-php82/ref/.p/pool POUDRIERE_PKGNAME=poudriere-git-3.4.99.20240122_1 SCRIPTPATH=/usr/local/share/poudriere/bulk.sh POUDRIEREPATH=/usr/local/bin/poudriere ---End Environment--- ---Begin Poudriere Port Flags/Env--- PORT_FLAGS= PKGENV= FLAVOR= MAKE_ARGS= ---End Poudriere Port Flags/Env--- ---Begin OPTIONS List--- ===> The following configuration options are available for panda-cclient-20130621_3: IPV6=on: IPv6 protocol support MBX_DEFAULT=off: Use MBX as default mailbox format SSL=on: SSL protocol support SSL_AND_PLAINTEXT=off: Allow plain text passwords and SSL ===> Use 'make config' to modify these settings ---End OPTIONS List--- --MAINTAINER-- thierry@FreeBSD.org --End MAINTAINER-- --CONFIGURE_ARGS-- --End CONFIGURE_ARGS-- --CONFIGURE_ENV-- XDG_DATA_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work XDG_CACHE_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work/.cache HOME=/wrkdirs/usr/ports/mail/panda-cclient/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/mail/panda-cclient/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/mail/panda-cclient/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig SHELL=/bin/sh CONFIG_SHELL=/bin/sh --End CONFIGURE_ENV-- --MAKE_ENV-- OPENSSLBASE=/usr OPENSSLDIR=/etc/ssl OPENSSLINC=/usr/include OPENSSLLIB=/usr/lib XDG_DATA_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work XDG_CACHE_HOME=/wrkdirs/usr/ports/mail/panda-cclient/work/.cache HOME=/wrkdirs/usr/ports/mail/panda-cclient/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/mail/panda-cclient/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/mail/panda-cclient/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local CC="cc" CFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " CPP="cpp" CPPFLAGS="" LDFLAGS=" -fstack-protector-strong " LIBS="" CXX="c++" CXXFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 0644" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" --End MAKE_ENV-- --PLIST_SUB-- SHLIBNAME=libc-client.so.2010 SHLIBBASE=c-client OSREL=13.3 PREFIX=%D LOCALBASE=/usr/local RESETPREFIX=/usr/local LIB32DIR=lib DOCSDIR="share/doc/cclient" EXAMPLESDIR="share/examples/cclient" DATADIR="share/cclient" WWWDIR="www/cclient" ETCDIR="etc/cclient" --End PLIST_SUB-- --SUB_LIST-- PREFIX=/usr/local LOCALBASE=/usr/local DATADIR=/usr/local/share/cclient DOCSDIR=/usr/local/share/doc/cclient EXAMPLESDIR=/usr/local/share/examples/cclient WWWDIR=/usr/local/www/cclient ETCDIR=/usr/local/etc/cclient --End SUB_LIST-- ---Begin make.conf--- USE_PACKAGE_DEPENDS=yes BATCH=yes WRKDIRPREFIX=/wrkdirs PORTSDIR=/usr/ports PACKAGES=/packages DISTDIR=/distfiles FORCE_PACKAGE=yes PACKAGE_BUILDING=yes PACKAGE_BUILDING_FLAVORS=yes #### #### DISABLE_LICENSES="YES" multimedia_liba-utils_UNSET=WAYLAND net-mgmt_icingaweb2-module-reporting_UNSET=PDF lang_gcc12_UNSET=LTO_BOOTSTRAP lang_gcc13_UNSET=LTO_BOOTSTRAP lang_gcc_UNSET=LTO_BOOTSTRAP www_nginx_SET+=HEADERS_MORE www_nginx_SET+=LUA www_nginx_SET+=SET_MISC #### #### DISABLE_LICENSES="YES" WITHOUT_HAL="yes" DEFAULT_VERSIONS+=php=8.2 DEFAULT_VERSIONS+=bdb=5 DEFAULT_VERSIONS+=pgsql=15 DEFAULT_VERSIONS+=corosync=3 DEFAULT_VERSIONS+=mysql=10.11m DEFAULT_VERSIONS+=samba=4.16 DEFAULT_VERSIONS+=lua=5.1 OPTIONS_UNSET+=DOCS OPTIONS_SET+=SSL LINUX_BASE_PORT=c7 mail_postfix_SET+=SASL mail_postfix-current_SET+=SASL net-mgmt_monitoring-plugins_SET+=MYSQL net-mgmt_monitoring-plugins_UNSET+=DNS_BASE net-mgmt_monitoring-plugins_SET+=DNS_BINDTOOLS sysutils_bacula11-server_UNSET+=PGSQL sysutils_bacula11-server_SET+=SQLITE3 security_strongswan_SET+=UNITY security_strongswan_SET+=MYSQL graphics_pecl-imagick+=X11 net-mgmt_nrpe_SET+=ARGS net-mgmt_nrpe_UNSET+=NAGPLUGINS net-mgmt_nrpe_SET+=MONPLUGINS net-mgmt_librenms_UNSET+=NAGPLUGINS www_nginx_SET+=HEADERS_MORE www_nginx_SET+=LUA www_nginx_SET+=SET_MISC www_nginx-devel_SET+=HEADERS_MORE mail_rspamd_UNSET+=LUAJIT sysutils_iocage_UNSET+=GIT mail_postfix_SET+=MYSQL mail_postfix-current_SET+=MYSQL #graphics_zbar_UNSET+=X11 #### Misc Poudriere #### .include "/etc/make.conf.ports_env" ---End make.conf--- --Resource limits-- cpu time (seconds, -t) unlimited file size (512-blocks, -f) unlimited data seg size (kbytes, -d) 33554432 stack size (kbytes, -s) 524288 core file size (512-blocks, -c) unlimited max memory size (kbytes, -m) unlimited locked memory (kbytes, -l) unlimited max user processes (-u) 63795 open files (-n) 8192 virtual mem size (kbytes, -v) unlimited swap limit (kbytes, -w) unlimited socket buffer size (bytes, -b) unlimited pseudo-terminals (-p) unlimited kqueues (-k) unlimited umtx shared locks (-o) unlimited --End resource limits-- =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> panda-cclient-20130621_3 depends on file: /usr/local/sbin/pkg - found =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Fetching all distfiles required by panda-cclient-20130621_3 for building =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Fetching all distfiles required by panda-cclient-20130621_3 for building => SHA256 Checksum OK for jonabbey-panda-imap-20130621-3452f1598a8b4eeb44b38aead1c1598e379b05de_GH0.tar.gz. =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Fetching all distfiles required by panda-cclient-20130621_3 for building ===> Extracting for panda-cclient-20130621_3 => SHA256 Checksum OK for jonabbey-panda-imap-20130621-3452f1598a8b4eeb44b38aead1c1598e379b05de_GH0.tar.gz. =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Patching for panda-cclient-20130621_3 ===> Applying FreeBSD patches for panda-cclient-20130621_3 from /usr/ports/mail/panda-cclient/files =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Configuring for panda-cclient-20130621_3 /usr/bin/sed -i.bak -e "s|/usr/local|/usr/local|g" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/Makefile /usr/bin/sed -i.bak -e "s|/usr/local|/usr/local|g" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/src/osdep/unix/Makefile /usr/bin/sed -i.bak -e "s|/usr/local|/usr/local|g" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/src/osdep/unix/Makefile.gss /usr/bin/sed -i.bak -e "s:/etc/ssl/certs:/usr/local/certs:g; s:/etc/ssl/private:/usr/local/certs:g" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/Makefile /usr/bin/sed -i.bak -e "s:/etc/c-client.cf:/usr/local/etc/c-client.cf:" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/src/osdep/unix/env_unix.h /usr/bin/sed -i.bak -e " s:SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib:SSLINCLUDE=/usr/include SSLLIB=/usr/lib: " /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/Makefile /usr/bin/sed -i.bak -e "s|^IP=4|IP=6|" /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/Makefile /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/src/osdep/unix/Makefile >> The c-client shared library will be named libc-client.so.2010 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Building for panda-cclient-20130621_3 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 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' 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' echo "libc-client.so.`grep CCLIENTVERSION mail.h | sed -e's/[^"]\{1,\}"\([0-9]\{1,\}\)"/\1/'`" > SHLIBNAME test -z && echo "-fPIC -DPIC -D_REENTRANT" > SHLIBFLAGS || echo "" > SHLIBFLAGS 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 ======================================================================== 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 ======================================================================== `cat CCTYPE` `cat SHLIBFLAGS` `cat CFLAGS` `cat OSCFLAGS` -c osdep.c In file included from osdep.c:45: ./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:46: In file included from ./env_unix.c:258: ./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:46: In file included from ./env_unix.c:262: 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:103:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 103 | if (challenge = (*challenger) (stream,&clen)) { | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:103:17: note: place parentheses around the assignment to silence this warning 103 | if (challenge = (*challenger) (stream,&clen)) { | ^ | ( ) ./auth_md5.c:103:17: note: use '==' to turn this assignment into an equality comparison 103 | if (challenge = (*challenger) (stream,&clen)) { | ^ | == ./auth_md5.c:118:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 118 | if (challenge = (*challenger) (stream,&clen)) | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:118:16: note: place parentheses around the assignment to silence this warning 118 | if (challenge = (*challenger) (stream,&clen)) | ^ | ( ) ./auth_md5.c:118:16: note: use '==' to turn this assignment into an equality comparison 118 | if (challenge = (*challenger) (stream,&clen)) | ^ | == ./auth_md5.c:153:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:153:12: note: place parentheses around the assignment to silence this warning 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ^ | ( ) ./auth_md5.c:153:12: note: use '==' to turn this assignment into an equality comparison 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ^ | == ./auth_md5.c:155:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 155 | if (hash = strrchr (user,' ')) { | ~~~~~^~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:155:14: note: place parentheses around the assignment to silence this warning 155 | if (hash = strrchr (user,' ')) { | ^ | ( ) ./auth_md5.c:155:14: note: use '==' to turn this assignment into an equality comparison 155 | if (hash = strrchr (user,' ')) { | ^ | == ./auth_md5.c:158:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ./auth_md5.c:158:20: note: place parentheses around the assignment to silence this warning 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | ( ) ./auth_md5.c:158:20: note: use '==' to turn this assignment into an equality comparison 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | == ./auth_md5.c:160:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:160:13: note: place parentheses around the assignment to silence this warning 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | ( ) ./auth_md5.c:160:13: note: use '==' to turn this assignment into an equality comparison 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | == ./auth_md5.c:194: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] 194 | read (fd,buf = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:196: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] 196 | for (s = user; *s && ((*s < 'A') || (*s > 'Z')); s++); | ^ ~~~~ ./auth_md5.c:198: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] 198 | lusr = *s ? lcase (cpystr (user)) : NIL; | ^~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:199: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] 199 | for (s = strtok_r ((char *) buf,"\015\012",&r),lret = NIL; s; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:200: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] 200 | s = ret ? NIL : strtok_r (NIL,"\015\012",&r)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:202: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] 202 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:202: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] 202 | if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) { | ^ ~~~~~~~~~~~~~~~ ./auth_md5.c:204: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] 204 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:204: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] 204 | if (!strcmp (s,user)) ret = cpystr (t); | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:205: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] 205 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:205: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] 205 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:208: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] 208 | if (!ret && lret) ret = cpystr (lret); | ^~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:237:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ./auth_md5.c:237:16: note: place parentheses around the assignment to silence this warning 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | ( ) ./auth_md5.c:237:16: note: use '==' to turn this assignment into an equality comparison 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | == ./auth_md5.c:239:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:239:9: note: place parentheses around the assignment to silence this warning 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | ( ) ./auth_md5.c:239:9: note: use '==' to turn this assignment into an equality comparison 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | == In file included from osdep.c:46: In file included from ./env_unix.c:262: 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:46: In file included from ./env_unix.c:262: 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:46: ./env_unix.c:541:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 541 | if (julian = t->tm_yday -julian) | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ ./env_unix.c:541:14: note: place parentheses around the assignment to silence this warning 541 | if (julian = t->tm_yday -julian) | ^ | ( ) ./env_unix.c:541:14: note: use '==' to turn this assignment into an equality comparison 541 | if (julian = t->tm_yday -julian) | ^ | == ./env_unix.c:671: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] 671 | 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:46: ./env_unix.c:675: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] 675 | pw = getpwnam (s = lcase (cpystr (user))); | ^~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: ./env_unix.c:675: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] 675 | pw = getpwnam (s = lcase (cpystr (user))); | ^~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:46: ./env_unix.c:675: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] 675 | 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:46: ./env_unix.c:699:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 699 | if (s = auth_md5_pwd (user)) { | ~~^~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:699:11: note: place parentheses around the assignment to silence this warning 699 | if (s = auth_md5_pwd (user)) { | ^ | ( ) ./env_unix.c:699:11: note: use '==' to turn this assignment into an equality comparison 699 | if (s = auth_md5_pwd (user)) { | ^ | == ./env_unix.c:701: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] 701 | ret = pwuser (user); /* validated, get passwd entry for user */ | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:706: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] 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:706:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 706 | else if (pw = pwuser (user)) {/* can get user? */ | ~~~^~~~~~~~~~~~~~~ ./env_unix.c:706:15: note: place parentheses around the assignment to silence this warning 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^ | ( ) ./env_unix.c:706:15: note: use '==' to turn this assignment into an equality comparison 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^ | == ./env_unix.c:709: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] 709 | (*pwd == ' ') && pwd[1] && (ret = pwuser (s))) | ^ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:740: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] 740 | else if (valpwd (authuser,pwd,argc,argv)) pw = pwuser (user); | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:758: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] 758 | return pw_login (pwuser (user),authuser,user,NIL,argc,argv); | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:797: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] 797 | if (user && auser && *auser && compare_cstring (auser,user)) { | ^~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:797: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] 797 | if (user && auser && *auser && compare_cstring (auser,user)) { | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:800: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] 800 | if (!compare_cstring (auser,*t++)) | ^~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:800: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] 800 | if (!compare_cstring (auser,*t++)) | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1096: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] 1096 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ? | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1096: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] 1096 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1106: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] 1106 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1106: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] 1106 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1130: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] 1130 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1130: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] 1130 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1144: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] 1144 | if (!compare_cstring (name,"INBOX")) name = "INBOX"; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1144: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] 1144 | if (!compare_cstring (name,"INBOX")) name = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1158: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] 1158 | if (!compare_cstring (name+1,"NBOX")) { | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1158: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] 1158 | if (!compare_cstring (name+1,"NBOX")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1294:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1294 | if (s = strrchr (base->lock,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1294:11: note: place parentheses around the assignment to silence this warning 1294 | if (s = strrchr (base->lock,'/')) { | ^ | ( ) ./env_unix.c:1294:11: note: use '==' to turn this assignment into an equality comparison 1294 | if (s = strrchr (base->lock,'/')) { | ^ | == ./env_unix.c:1608: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] 1608 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1608: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] 1608 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) { | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1622: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] 1622 | if (!compare_cstring (s,"set new-mailbox-format") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1622: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] 1622 | if (!compare_cstring (s,"set new-mailbox-format") || | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1623: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] 1623 | !compare_cstring (s,"set new-folder-format")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1623: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] 1623 | !compare_cstring (s,"set new-folder-format")) { | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1624: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] 1624 | if (!compare_cstring (k,"same-as-inbox")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1624: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] 1624 | if (!compare_cstring (k,"same-as-inbox")) { | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1625:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1625:14: note: place parentheses around the assignment to silence this warning 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ^ | ( ) ./env_unix.c:1625:14: note: use '==' to turn this assignment into an equality comparison 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ^ | == ./env_unix.c:1626: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] 1626 | if (!compare_cstring (d->name,"mbox")) | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1626: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] 1626 | if (!compare_cstring (d->name,"mbox")) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1629: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] 1629 | else if (!compare_cstring (d->name,"dummy")) d = NIL; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1629: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] 1629 | else if (!compare_cstring (d->name,"dummy")) d = NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1633: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] 1633 | else if (!compare_cstring (k,"system-standard")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1633: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] 1633 | else if (!compare_cstring (k,"system-standard")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1636: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] 1636 | if (!compare_cstring (k,"mbox")) k = "unix"; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1636: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] 1636 | if (!compare_cstring (k,"mbox")) k = "unix"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1638:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1638:14: note: place parentheses around the assignment to silence this warning 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ^ | ( ) ./env_unix.c:1638:14: note: use '==' to turn this assignment into an equality comparison 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ^ | == ./env_unix.c:1647: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] 1647 | if (!compare_cstring (s,"set empty-mailbox-format") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1647: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] 1647 | if (!compare_cstring (s,"set empty-mailbox-format") || | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1648: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] 1648 | !compare_cstring (s,"set empty-folder-format")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1648: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] 1648 | !compare_cstring (s,"set empty-folder-format")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1649: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] 1649 | if (!compare_cstring (k,"invalid")) appendProto = NIL; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1649: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] 1649 | if (!compare_cstring (k,"invalid")) appendProto = NIL; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1650: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] 1650 | else if (!compare_cstring (k,"same-as-inbox")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1650: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] 1650 | else if (!compare_cstring (k,"same-as-inbox")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1652: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] 1652 | compare_cstring (d->name,"dummy")) ? | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1652: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] 1652 | compare_cstring (d->name,"dummy")) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1654: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] 1654 | else if (!compare_cstring (k,"system-standard")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1654: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] 1654 | else if (!compare_cstring (k,"system-standard")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1658: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] 1658 | d && compare_cstring (d->name,k); d = d->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1658: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] 1658 | d && compare_cstring (d->name,k); d = d->next); | ^ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1669: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] 1669 | if (!compare_cstring (s,"set local-host")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1669: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] 1669 | if (!compare_cstring (s,"set local-host")) { | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-active-file")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1673: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] 1673 | else if (!compare_cstring (s,"set news-active-file")) { | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-spool-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1677: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] 1677 | else if (!compare_cstring (s,"set news-spool-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 mh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1681: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] 1681 | else if (!compare_cstring (s,"set mh-path")) | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 mh-allow-inbox")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1683: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] 1683 | else if (!compare_cstring (s,"set mh-allow-inbox")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-state-file")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1685: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] 1685 | else if (!compare_cstring (s,"set news-state-file")) { | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ftp-export-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ftp-export-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 public-home-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1693: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] 1693 | else if (!compare_cstring (s,"set public-home-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 shared-home-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1697: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] 1697 | else if (!compare_cstring (s,"set shared-home-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 system-inbox")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1701: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] 1701 | else if (!compare_cstring (s,"set system-inbox")) { | ^~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1705: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] 1705 | else if (!compare_cstring (s,"set mail-subdirectory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1705: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] 1705 | else if (!compare_cstring (s,"set mail-subdirectory")) { | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1709: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] 1709 | else if (!compare_cstring (s,"set from-widget")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1709: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] 1709 | else if (!compare_cstring (s,"set from-widget")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1711: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] 1711 | compare_cstring (k,"header-only") ? | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1711: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] 1711 | compare_cstring (k,"header-only") ? | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-command")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1714: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] 1714 | else if (!compare_cstring (s,"set rsh-command")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1716: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] 1716 | else if (!compare_cstring (s,"set rsh-path")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-command")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1718: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] 1718 | else if (!compare_cstring (s,"set ssh-command")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1720: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] 1720 | else if (!compare_cstring (s,"set ssh-path")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-open-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1722: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] 1722 | else if (!compare_cstring (s,"set tcp-open-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-read-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1724: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] 1724 | else if (!compare_cstring (s,"set tcp-read-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-write-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1726: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] 1726 | else if (!compare_cstring (s,"set tcp-write-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1728: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] 1728 | else if (!compare_cstring (s,"set rsh-timeout")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1730: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] 1730 | else if (!compare_cstring (s,"set ssh-timeout")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 maximum-login-trials")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1732: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] 1732 | else if (!compare_cstring (s,"set maximum-login-trials")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 lookahead")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1734: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] 1734 | else if (!compare_cstring (s,"set lookahead")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 prefetch")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1736: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] 1736 | else if (!compare_cstring (s,"set prefetch")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 close-on-error")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1738: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] 1738 | else if (!compare_cstring (s,"set close-on-error")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 imap-port")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1740: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] 1740 | else if (!compare_cstring (s,"set imap-port")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 pop3-port")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1742: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] 1742 | else if (!compare_cstring (s,"set pop3-port")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1744: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] 1744 | else if (!compare_cstring (s,"set uid-lookahead")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1744: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] 1744 | else if (!compare_cstring (s,"set uid-lookahead")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1746: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] 1746 | else if (!compare_cstring (s,"set try-ssl-first")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1746: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] 1746 | else if (!compare_cstring (s,"set try-ssl-first")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1749: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] 1749 | else if (!compare_cstring (s,"set mailbox-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1749: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] 1749 | else if (!compare_cstring (s,"set mailbox-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1751: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] 1751 | else if (!compare_cstring (s,"set directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1751: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] 1751 | else if (!compare_cstring (s,"set directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1753: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] 1753 | else if (!compare_cstring (s,"set lock-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1753: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] 1753 | else if (!compare_cstring (s,"set lock-protection")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1755: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] 1755 | else if (!compare_cstring (s,"set ftp-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1755: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] 1755 | else if (!compare_cstring (s,"set ftp-protection")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1757: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] 1757 | else if (!compare_cstring (s,"set public-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1757: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] 1757 | else if (!compare_cstring (s,"set public-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1759: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] 1759 | else if (!compare_cstring (s,"set shared-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1759: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] 1759 | else if (!compare_cstring (s,"set shared-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1761: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] 1761 | else if (!compare_cstring (s,"set ftp-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1761: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] 1761 | else if (!compare_cstring (s,"set ftp-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1763: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] 1763 | else if (!compare_cstring (s,"set public-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1763: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] 1763 | else if (!compare_cstring (s,"set public-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1765: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] 1765 | else if (!compare_cstring (s,"set shared-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1765: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] 1765 | else if (!compare_cstring (s,"set shared-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1767: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] 1767 | else if (!compare_cstring (s,"set dot-lock-file-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1767: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] 1767 | else if (!compare_cstring (s,"set dot-lock-file-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1769: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] 1769 | else if (!compare_cstring (s,"set disable-fcntl-locking")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1769: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] 1769 | else if (!compare_cstring (s,"set disable-fcntl-locking")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1771: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] 1771 | else if (!compare_cstring (s,"set disable-lock-warning")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1771: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] 1771 | else if (!compare_cstring (s,"set disable-lock-warning")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1773: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] 1773 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1773: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] 1773 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1775: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] 1775 | else if (!compare_cstring (s,"set hide-dot-files")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1775: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] 1775 | else if (!compare_cstring (s,"set hide-dot-files")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1777: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] 1777 | else if (!compare_cstring (s,"set list-maximum-level")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1777: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] 1777 | else if (!compare_cstring (s,"set list-maximum-level")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1779: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] 1779 | else if (!compare_cstring (s,"set trust-dns")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1779: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] 1779 | else if (!compare_cstring (s,"set trust-dns")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1781: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] 1781 | else if (!compare_cstring (s,"set sasl-uses-ptr-name")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1781: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] 1781 | else if (!compare_cstring (s,"set sasl-uses-ptr-name")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1783: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] 1783 | else if (!compare_cstring (s,"set network-filesystem-stat-bug")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1783: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] 1783 | else if (!compare_cstring (s,"set network-filesystem-stat-bug")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1785: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] 1785 | else if (!compare_cstring (s,"set nntp-range")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1785: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] 1785 | else if (!compare_cstring (s,"set nntp-range")) | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1789: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] 1789 | if (!compare_cstring (s,"set black-box-directory") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1789: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] 1789 | if (!compare_cstring (s,"set black-box-directory") && | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1791: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] 1791 | else if (!compare_cstring(s,"set black-box-default-home-directory")&& | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1791: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] 1791 | else if (!compare_cstring(s,"set black-box-default-home-directory")&& | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1794: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] 1794 | else if (!compare_cstring (s,"set anonymous-home-directory") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1794: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] 1794 | else if (!compare_cstring (s,"set anonymous-home-directory") && | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1801: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] 1801 | else if (!compare_cstring (s,"set CA-certificate-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1801: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] 1801 | else if (!compare_cstring (s,"set CA-certificate-path")) | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1803: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] 1803 | else if (!compare_cstring (s,"set ssl-cipher-list")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1803:33: 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] 1803 | else if (!compare_cstring (s,"set ssl-cipher-list")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1805: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] 1805 | else if (!compare_cstring (s,"set ssl-protocols")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1805: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] 1805 | else if (!compare_cstring (s,"set ssl-protocols")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1807: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] 1807 | else if (!compare_cstring (s,"set ssl-dh-parameters")) /* same use as Sendmail */ | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1807: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] 1807 | else if (!compare_cstring (s,"set ssl-dh-parameters")) /* same use as Sendmail */ | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1809: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] 1809 | else if (!compare_cstring (s,"set disable-plaintext")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1809: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] 1809 | else if (!compare_cstring (s,"set disable-plaintext")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1811: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] 1811 | else if (!compare_cstring (s,"set allowed-login-attempts")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1811: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] 1811 | else if (!compare_cstring (s,"set allowed-login-attempts")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1813: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] 1813 | else if (!compare_cstring (s,"set chroot-server")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1813: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] 1813 | else if (!compare_cstring (s,"set chroot-server")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1815: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] 1815 | else if (!compare_cstring (s,"set restrict-mailbox-access")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1815: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] 1815 | else if (!compare_cstring (s,"set restrict-mailbox-access")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1817: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] 1817 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1817: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] 1817 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1818: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] 1818 | else if (!compare_cstring (k,"otherusers")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1818: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] 1818 | else if (!compare_cstring (k,"otherusers")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1820: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] 1820 | else if (!compare_cstring (k,"all")) restrictBox = -1; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1820: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] 1820 | else if (!compare_cstring (k,"all")) restrictBox = -1; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1822: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] 1822 | else if (!compare_cstring (s,"set advertise-the-world")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1822: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] 1822 | else if (!compare_cstring (s,"set advertise-the-world")) | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1824: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] 1824 | else if (!compare_cstring (s,"set limited-advertise")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1824: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] 1824 | else if (!compare_cstring (s,"set limited-advertise")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1827: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] 1827 | (s,"set disable-automatic-shared-namespaces")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1827: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] 1827 | (s,"set disable-automatic-shared-namespaces")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1829: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] 1829 | else if (!compare_cstring (s,"set allow-user-config")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1829: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] 1829 | else if (!compare_cstring (s,"set allow-user-config")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1831: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] 1831 | else if (!compare_cstring (s,"set allow-reverse-dns")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1831: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] 1831 | else if (!compare_cstring (s,"set allow-reverse-dns")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1833: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] 1833 | else if (!compare_cstring (s,"set k5-cp-uses-service-name")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1833: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] 1833 | else if (!compare_cstring (s,"set k5-cp-uses-service-name")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1837: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] 1837 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1837: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] 1837 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:130: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] 130 | (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,&hints,&ai))) { | ^~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:130: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] 130 | (!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:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:248: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] 248 | (!getaddrinfo (lcase (strcpy (tmp,name)),NIL,&hints, | ^~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:248: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] 248 | (!getaddrinfo (lcase (strcpy (tmp,name)),NIL,&hints, | ^~~~~~~~~~~~~~~~~~~~~~~~~ /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:49: ./tcp_unix.c:179:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:179:13: note: place parentheses around the assignment to silence this warning 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ^ | ( ) ./tcp_unix.c:179:13: note: use '==' to turn this assignment into an equality comparison 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ^ | == ./tcp_unix.c:226:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ~~~~~~~~~~~~~^~~~~ ./tcp_unix.c:226:22: note: place parentheses around the assignment to silence this warning 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ^ | ( ) ./tcp_unix.c:226:22: note: use '==' to turn this assignment into an equality comparison 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ^ | == ./tcp_unix.c:374:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:374:13: note: place parentheses around the assignment to silence this warning 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ^ | ( ) ./tcp_unix.c:374:13: note: use '==' to turn this assignment into an equality comparison 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ^ | == ./tcp_unix.c:477:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 477 | char *ret = tcp_getline_work (stream,&n,&contd); | ^~~~~~ ./tcp_unix.c:61:17: note: passing argument to parameter 'contd' here 61 | long *contd); | ^ ./tcp_unix.c:485:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 485 | ret = tcp_getline_work (stream,&n,&contd); | ^~~~~~ ./tcp_unix.c:61:17: note: passing argument to parameter 'contd' here 61 | long *contd); | ^ ./tcp_unix.c:553:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 553 | if (n = min (size,stream->ictr)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:553:9: note: place parentheses around the assignment to silence this warning 553 | if (n = min (size,stream->ictr)) { | ^ | ( ) ./tcp_unix.c:553:9: note: use '==' to turn this assignment into an equality comparison 553 | if (n = min (size,stream->ictr)) { | ^ | == ./tcp_unix.c:874:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 874 | if (v = strchr (s,' ')) *v = '\0'; | ~~^~~~~~~~~~~~~~~~ ./tcp_unix.c:874:8: note: place parentheses around the assignment to silence this warning 874 | if (v = strchr (s,' ')) *v = '\0'; | ^ | ( ) ./tcp_unix.c:874:8: note: use '==' to turn this assignment into an equality comparison 874 | if (v = strchr (s,' ')) *v = '\0'; | ^ | == ./tcp_unix.c:1003:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:1003:11: note: place parentheses around the assignment to silence this warning 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ^ | ( ) ./tcp_unix.c:1003:11: note: use '==' to turn this assignment into an equality comparison 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ^ | == osdep.c:159:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 160 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 161 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 162 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 163 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 164 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 165 | getpwnam (name) : NIL) { | ~~~~~~~~~~~~~~~~~~~~~ osdep.c:159:10: note: place parentheses around the assignment to silence this warning 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ^ | ( 160 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) && 161 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) && 162 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) && 163 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) && 164 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ? 165 | getpwnam (name) : NIL) { | | ) osdep.c:159:10: note: use '==' to turn this assignment into an equality comparison 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ^ | == osdep.c:472:12: warning: 'TLSv1_client_method' is deprecated [-Wdeprecated-declarations] 472 | TLSv1_client_method () : | ^ /usr/include/openssl/ssl.h:1893:1: note: 'TLSv1_client_method' has been explicitly marked deprecated here 1893 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void)) | ^ /usr/include/openssl/opensslconf.h:154:34: note: expanded from macro 'DEPRECATEDIN_1_1_0' 154 | # define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f) | ^ /usr/include/openssl/opensslconf.h:112:55: note: expanded from macro 'DECLARE_DEPRECATED' 112 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); | ^ osdep.c:490:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osdep.c:490:9: note: place parentheses around the assignment to silence this warning 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ^ | ( ) osdep.c:490:9: note: use '==' to turn this assignment into an equality comparison 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ^ | == osdep.c:494:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osdep.c:494:14: note: place parentheses around the assignment to silence this warning 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ^ | ( ) osdep.c:494:14: note: use '==' to turn this assignment into an equality comparison 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ^ | == osdep.c:503:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 504 | NIL,NIL,"")) { | ~~~~~~~~~~~ osdep.c:503:15: note: place parentheses around the assignment to silence this warning 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ^ | ( 504 | NIL,NIL,"")) { | | ) osdep.c:503:15: note: use '==' to turn this assignment into an equality comparison 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ^ | == osdep.c:641:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 641 | char *ret = ssl_getline_work (stream,&n,&contd); | ^~~~~~ osdep.c:314:17: note: passing argument to parameter 'contd' here 314 | long *contd); | ^ osdep.c:649:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 649 | ret = ssl_getline_work (stream,&n,&contd); | ^~~~~~ osdep.c:314:17: note: passing argument to parameter 'contd' here 314 | long *contd); | ^ osdep.c:1253:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ~~^~~~~~~~~~~~~~~~~~ osdep.c:1253:12: note: place parentheses around the assignment to silence this warning 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ^ | ( ) osdep.c:1253:12: note: use '==' to turn this assignment into an equality comparison 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ^ | == osdep.c:1272:17: warning: 'RSA_generate_key' is deprecated [-Wdeprecated-declarations] 1272 | 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:166:34: note: expanded from macro 'DEPRECATEDIN_0_9_8' 166 | # define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f) | ^ /usr/include/openssl/opensslconf.h:112:55: note: expanded from macro 'DECLARE_DEPRECATED' 112 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); | ^ osdep.c:1275:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1275 | while (i = ERR_get_error ()) | ~~^~~~~~~~~~~~~~~~~~ osdep.c:1275:16: note: place parentheses around the assignment to silence this warning 1275 | while (i = ERR_get_error ()) | ^ | ( ) osdep.c:1275:16: note: use '==' to turn this assignment into an equality comparison 1275 | while (i = ERR_get_error ()) | ^ | == 253 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mail.c mail.c:213:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 213 | if (stream->cache[i] = stream->cache[msgno]) | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:213:28: note: place parentheses around the assignment to silence this warning 213 | if (stream->cache[i] = stream->cache[msgno]) | ^ | ( ) mail.c:213:28: note: use '==' to turn this assignment into an equality comparison 213 | if (stream->cache[i] = stream->cache[msgno]) | ^ | == mail.c:384: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] 384 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:384: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] 384 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:389: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] 389 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:389: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] 389 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:391:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:391:13: note: place parentheses around the assignment to silence this warning 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ^ | ( ) mail.c:391:13: note: use '==' to turn this assignment into an equality comparison 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ^ | == mail.c:394: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] 394 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:394: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] 394 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:396:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:396:13: note: place parentheses around the assignment to silence this warning 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ^ | ( ) mail.c:396:13: note: use '==' to turn this assignment into an equality comparison 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ^ | == mail.c:400: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] 400 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:400: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] 400 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:401:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:401:13: note: place parentheses around the assignment to silence this warning 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ^ | ( ) mail.c:401:13: note: use '==' to turn this assignment into an equality comparison 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ^ | == mail.c:405: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] 405 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:405: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] 405 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:406:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:406:13: note: place parentheses around the assignment to silence this warning 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ^ | ( ) mail.c:406:13: note: use '==' to turn this assignment into an equality comparison 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ^ | == mail.c:410: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] 410 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:410: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] 410 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:411:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ~~~~^~~~~~~~~~~~ mail.c:411:13: note: place parentheses around the assignment to silence this warning 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ^ | ( ) mail.c:411:13: note: use '==' to turn this assignment into an equality comparison 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ^ | == mail.c:415: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] 415 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:415: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] 415 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:416:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ~~~~^~~~~~~~~~~~ mail.c:416:13: note: place parentheses around the assignment to silence this warning 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ^ | ( ) mail.c:416:13: note: use '==' to turn this assignment into an equality comparison 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ^ | == mail.c:650:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 650 | if (r = smtp_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:650:11: note: place parentheses around the assignment to silence this warning 650 | if (r = smtp_parameters (function,value)) ret = r; | ^ | ( ) mail.c:650:11: note: use '==' to turn this assignment into an equality comparison 650 | if (r = smtp_parameters (function,value)) ret = r; | ^ | == mail.c:651:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 651 | if (r = env_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:651:11: note: place parentheses around the assignment to silence this warning 651 | if (r = env_parameters (function,value)) ret = r; | ^ | ( ) mail.c:651:11: note: use '==' to turn this assignment into an equality comparison 651 | if (r = env_parameters (function,value)) ret = r; | ^ | == mail.c:652:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 652 | if (r = tcp_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:652:11: note: place parentheses around the assignment to silence this warning 652 | if (r = tcp_parameters (function,value)) ret = r; | ^ | ( ) mail.c:652:11: note: use '==' to turn this assignment into an equality comparison 652 | if (r = tcp_parameters (function,value)) ret = r; | ^ | == mail.c:654:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:654:13: note: place parentheses around the assignment to silence this warning 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ^ | ( ) mail.c:654:13: note: use '==' to turn this assignment into an equality comparison 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ^ | == mail.c:658:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 658 | if (r = (d->parameters) (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:658:13: note: place parentheses around the assignment to silence this warning 658 | if (r = (d->parameters) (function,value)) ret = r; | ^ | ( ) mail.c:658:13: note: use '==' to turn this assignment into an equality comparison 658 | if (r = (d->parameters) (function,value)) ret = r; | ^ | == mail.c:772:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 772 | if (t = strpbrk (s = t,"/:=")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ mail.c:772:13: note: place parentheses around the assignment to silence this warning 772 | if (t = strpbrk (s = t,"/:=")) { | ^ | ( ) mail.c:772:13: note: use '==' to turn this assignment into an equality comparison 772 | if (t = strpbrk (s = t,"/:=")) { | ^ | == mail.c:790:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 790 | if (t = strpbrk (v = t,"/:")) { | ~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:790:10: note: place parentheses around the assignment to silence this warning 790 | if (t = strpbrk (v = t,"/:")) { | ^ | ( ) mail.c:790:10: note: use '==' to turn this assignment into an equality comparison 790 | if (t = strpbrk (v = t,"/:")) { | ^ | == mail.c:797: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] 797 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:797: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] 797 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:798: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] 798 | lcase (strcpy (mb->service,v)); | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:799: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] 799 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:799: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] 799 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:801: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] 801 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:801: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] 801 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) && | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:807: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] 807 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:807: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] 807 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:808: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] 808 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:808: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] 808 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"readonly")) mb->readonlyflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:809: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] 809 | else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:810: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] 810 | else if (!compare_cstring (s,"secure")) mb->secflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:810: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] 810 | else if (!compare_cstring (s,"secure")) mb->secflag = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"norsh")) mb->norsh = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"norsh")) mb->norsh = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:812: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] 812 | else if (!compare_cstring (s,"loser")) mb->loser = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:812: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] 812 | else if (!compare_cstring (s,"loser")) mb->loser = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"tls") && !mb->notlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:813: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] 813 | else if (!compare_cstring (s,"tls") && !mb->notlsflag) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:815: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] 815 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:815: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] 815 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:817: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] 817 | else if (!compare_cstring (s,"notls") && !mb->tlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:817: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] 817 | else if (!compare_cstring (s,"notls") && !mb->tlsflag) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:819: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] 819 | else if (!compare_cstring (s,"tryssl")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:819: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] 819 | else if (!compare_cstring (s,"tryssl")) | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:821: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] 821 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:821: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] 821 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:823: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] 823 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:823: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] 823 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:826: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] 826 | else if (mailssldriver && !compare_cstring (s,"validate-cert")); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:826: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] 826 | else if (mailssldriver && !compare_cstring (s,"validate-cert")); | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ 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,"imap") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:829: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] 829 | else if (!compare_cstring (s,"imap") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"nntp") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:830: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] 830 | !compare_cstring (s,"nntp") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"pop3") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:831: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] 831 | !compare_cstring (s,"pop3") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"smtp") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:832: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] 832 | !compare_cstring (s,"smtp") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:833: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] 833 | !compare_cstring (s,"submit")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:833: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] 833 | !compare_cstring (s,"submit")) | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:834: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] 834 | lcase (strcpy (mb->service,s)); | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:835: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] 835 | else if (!compare_cstring (s,"imap2") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:835: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] 835 | else if (!compare_cstring (s,"imap2") || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:836: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] 836 | !compare_cstring (s,"imap2bis") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:836: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] 836 | !compare_cstring (s,"imap2bis") || | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:837: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] 837 | !compare_cstring (s,"imap4") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:837: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] 837 | !compare_cstring (s,"imap4") || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:838: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] 838 | !compare_cstring (s,"imap4rev1")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:838: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] 838 | !compare_cstring (s,"imap4rev1")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:840: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] 840 | else if (!compare_cstring (s,"pop")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:840: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] 840 | else if (!compare_cstring (s,"pop")) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:925:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 925 | while (d = d->next); /* until at the end */ | ~~^~~~~~~~~ mail.c:925:12: note: place parentheses around the assignment to silence this warning 925 | while (d = d->next); /* until at the end */ | ^ | ( ) mail.c:925:12: note: use '==' to turn this assignment into an equality comparison 925 | while (d = d->next); /* until at the end */ | ^ | == mail.c:958:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 958 | while (d = d->next); /* until at the end */ | ~~^~~~~~~~~ mail.c:958:12: note: place parentheses around the assignment to silence this warning 958 | while (d = d->next); /* until at the end */ | ^ | ( ) mail.c:958:12: note: use '==' to turn this assignment into an equality comparison 958 | while (d = d->next); /* until at the end */ | ^ | == mail.c:1002:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1002:9: note: place parentheses around the assignment to silence this warning 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ^ | ( ) mail.c:1002:9: note: use '==' to turn this assignment into an equality comparison 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ^ | == mail.c:1013: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] 1013 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1013: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] 1013 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1018:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1018 | if (s = mail_utf7_valid (mailbox)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1018:9: note: place parentheses around the assignment to silence this warning 1018 | if (s = mail_utf7_valid (mailbox)) { | ^ | ( ) mail.c:1018:9: note: use '==' to turn this assignment into an equality comparison 1018 | if (s = mail_utf7_valid (mailbox)) { | ^ | == mail.c:1098:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1098 | if (s = mail_utf7_valid (newname)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1098:9: note: place parentheses around the assignment to silence this warning 1098 | if (s = mail_utf7_valid (newname)) { | ^ | ( ) mail.c:1098:9: note: use '==' to turn this assignment into an equality comparison 1098 | if (s = mail_utf7_valid (newname)) { | ^ | == mail.c:1205:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1205 | if (stream = mail_open (stream,s+1,options)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1205:18: note: place parentheses around the assignment to silence this warning 1205 | if (stream = mail_open (stream,s+1,options)) { | ^ | ( ) mail.c:1205:18: note: use '==' to turn this assignment into an equality comparison 1205 | if (stream = mail_open (stream,s+1,options)) { | ^ | == mail.c:1222:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1222:18: note: place parentheses around the assignment to silence this warning 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ^ | ( ) mail.c:1222:18: note: use '==' to turn this assignment into an equality comparison 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ^ | == mail.c:1249:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:1249:13: note: place parentheses around the assignment to silence this warning 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ^ | ( ) mail.c:1249:13: note: use '==' to turn this assignment into an equality comparison 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ^ | == mail.c:1255: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] 1255 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1255: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] 1255 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next); | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1477: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] 1477 | if (stream->dtb && mail_uid_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:1493: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] 1493 | if (stream->dtb && mail_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:1518: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] 1518 | ov.date = env->date; | ^ ~~~~~~~~~ mail.c:1549:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1549:15: note: place parentheses around the assignment to silence this warning 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1549:15: note: use '==' to turn this assignment into an equality comparison 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1661:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1661:15: note: place parentheses around the assignment to silence this warning 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1661:15: note: use '==' to turn this assignment into an equality comparison 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1731:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1731:15: note: place parentheses around the assignment to silence this warning 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1731:15: note: use '==' to turn this assignment into an equality comparison 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1736: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] 1736 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1784:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1784 | if (rt.data = (unsigned char *) | ~~~~~~~~^~~~~~~~~~~~~~~~~~~ 1785 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1784:19: note: place parentheses around the assignment to silence this warning 1784 | if (rt.data = (unsigned char *) | ^ | ( 1785 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) { | | ) mail.c:1784:19: note: use '==' to turn this assignment into an equality comparison 1784 | if (rt.data = (unsigned char *) | ^ | == mail.c:1822:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1822:15: note: place parentheses around the assignment to silence this warning 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1822:15: note: use '==' to turn this assignment into an equality comparison 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1827: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] 1827 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1877:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1877:15: note: place parentheses around the assignment to silence this warning 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1877:15: note: use '==' to turn this assignment into an equality comparison 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1881: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] 1881 | if (!(section && *section && (b = mail_body (stream,msgno,section)))) | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1960:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1960:15: note: place parentheses around the assignment to silence this warning 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1960:15: note: use '==' to turn this assignment into an equality comparison 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1964: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] 1964 | if (!(b = mail_body (stream,msgno,section))) return ""; | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2018:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2018:15: note: place parentheses around the assignment to silence this warning 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:2018:15: note: use '==' to turn this assignment into an equality comparison 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:2024: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] 2024 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2088:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2088:15: note: place parentheses around the assignment to silence this warning 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:2088:15: note: use '==' to turn this assignment into an equality comparison 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:2092: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] 2092 | if (!(b = mail_body (stream,msgno,section))) return NIL; | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2238:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2238 | if (delta = ((last - first) / 2)) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:2238:12: note: place parentheses around the assignment to silence this warning 2238 | if (delta = ((last - first) / 2)) { | ^ | ( ) mail.c:2238:12: note: use '==' to turn this assignment into an equality comparison 2238 | if (delta = ((last - first) / 2)) { | ^ | == mail.c:2314: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] 2314 | ((flags & ST_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:2315: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] 2315 | mail_sequence (stream,sequence)) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:2392:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2392 | if (msg = utf8_badcharset (charset)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2392:11: note: place parentheses around the assignment to silence this warning 2392 | if (msg = utf8_badcharset (charset)) { | ^ | ( ) mail.c:2392:11: note: use '==' to turn this assignment into an equality comparison 2392 | if (msg = utf8_badcharset (charset)) { | ^ | == mail.c:2604: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] 2604 | else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) { | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:2604: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] 2604 | 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:2618:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2618:14: note: place parentheses around the assignment to silence this warning 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ^ | ( ) mail.c:2618:14: note: use '==' to turn this assignment into an equality comparison 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ^ | == mail.c:2656:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2656:13: note: place parentheses around the assignment to silence this warning 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ^ | ( ) mail.c:2656:13: note: use '==' to turn this assignment into an equality comparison 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ^ | == mail.c:2726: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] 2726 | if (!(i = strtoul (section,(char **) §ion,10)) || | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2731:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ~~~^~~~~~~~~~~~~~~~ mail.c:2731:11: note: place parentheses around the assignment to silence this warning 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ^ | ( ) mail.c:2731:11: note: use '==' to turn this assignment into an equality comparison 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ^ | == mail.c:2858: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] 2858 | 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:2858: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] 2858 | 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:2858: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] 2858 | if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s)); | ^~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ mail.c:2864: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] 2864 | if (!(m = strtoul (s,(char **) &s,10))) return NIL; | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2868: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] 2868 | if (isdigit (*++s) && (d = strtoul (s,(char **) &s,10)) && | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2870: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] 2870 | y = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2880: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] 2880 | if ((m = strtoul (s+1,(char **) &s,10)) && (*s++ == '-') && | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2881: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] 2881 | (d = strtoul (s,(char **) &s,10)) && !*s) break; | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2886: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] 2886 | 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:2914: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] 2914 | y = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2938: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] 2938 | d = strtoul (s+1,(char **) &s,10); | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2940: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] 2940 | m = strtoul (++s,(char **) &s,10); | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2941: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] 2941 | y = (*s == ':') ? strtoul (++s,(char **) &s,10) : 0; | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3091:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ~~^~~~~~~~~~~~~~ mail.c:3091:11: note: place parentheses around the assignment to silence this warning 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ^ | ( ) mail.c:3091:11: note: use '==' to turn this assignment into an equality comparison 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ^ | == mail.c:3271: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] 3271 | else if (!(i = strtoul (sequence,(char **) &sequence,10))) { | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3282: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] 3282 | else if (!(j = strtoul (sequence,(char **) &sequence,10))) { | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3312:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ~~^~~~~~~~~~~~~~~~~~~~~~~ mail.c:3312:13: note: place parentheses around the assignment to silence this warning 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ^ | ( ) mail.c:3312:13: note: use '==' to turn this assignment into an equality comparison 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ^ | == mail.c:3345:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3345 | while (lines = lines->next); | ~~~~~~^~~~~~~~~~~~~ mail.c:3345:16: note: place parentheses around the assignment to silence this warning 3345 | while (lines = lines->next); | ^ | ( ) mail.c:3345:16: note: use '==' to turn this assignment into an equality comparison 3345 | while (lines = lines->next); | ^ | == mail.c:3377:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3377 | if (i = t - tmp) /* see if found in header */ | ~~^~~~~~~~~ mail.c:3377:11: note: place parentheses around the assignment to silence this warning 3377 | if (i = t - tmp) /* see if found in header */ | ^ | ( ) mail.c:3377:11: note: use '==' to turn this assignment into an equality comparison 3377 | if (i = t - tmp) /* see if found in header */ | ^ | == mail.c:3379: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] 3379 | if ((hdrs->text.size == i) && !compare_csizedtext (tmp,&hdrs->text)) | ^~~ ./misc.h:107:40: note: passing argument to parameter 's1' here 107 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2); | ^ mail.c:3523: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] 3523 | BODY *body = mail_body (stream,msgno,section); | ^~~~~~~ mail.c:2716:72: note: passing argument to parameter 'section' here 2716 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section) | ^ mail.c:3629:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3629 | if (h.data = (unsigned char *) s) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~ mail.c:3629:14: note: place parentheses around the assignment to silence this warning 3629 | if (h.data = (unsigned char *) s) { | ^ | ( ) mail.c:3629:14: note: use '==' to turn this assignment into an equality comparison 3629 | if (h.data = (unsigned char *) s) { | ^ | == mail.c:3680:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ~~~^~~~~~~~~~ mail.c:3680:12: note: place parentheses around the assignment to silence this warning 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ^ | ( ) mail.c:3680:12: note: use '==' to turn this assignment into an equality comparison 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ^ | == mail.c:3695: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] 3695 | else if ((body = mail_body (stream,msgno,section)) && | ^~~~~~~ mail.c:2716:72: note: passing argument to parameter 'section' here 2716 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section) | ^ mail.c:3762:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3762 | if (body = body->nested.msg->body) | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3762:16: note: place parentheses around the assignment to silence this warning 3762 | if (body = body->nested.msg->body) | ^ | ( ) mail.c:3762:16: note: use '==' to turn this assignment into an equality comparison 3762 | if (body = body->nested.msg->body) | ^ | == mail.c:3779:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3779 | if (st.data = (unsigned char *) | ~~~~~~~~^~~~~~~~~~~~~~~~~~~ 3780 | rfc822_base64 ((unsigned char *) s,i,&st.size)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3779:14: note: place parentheses around the assignment to silence this warning 3779 | if (st.data = (unsigned char *) | ^ | ( 3780 | rfc822_base64 ((unsigned char *) s,i,&st.size)) { | | ) mail.c:3779:14: note: use '==' to turn this assignment into an equality comparison 3779 | if (st.data = (unsigned char *) | ^ | == mail.c:3786:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3786:14: note: place parentheses around the assignment to silence this warning 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ^ | ( ) mail.c:3786:14: note: use '==' to turn this assignment into an equality comparison 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ^ | == mail.c:3862: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] 3862 | if (!compare_csizedtext (stream->user_flags[i],&st->text)) { | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:107:40: note: passing argument to parameter 's1' here 107 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2); | ^ mail.c:3867:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3867 | } while (st = st->next); | ~~~^~~~~~~~~~ mail.c:3867:15: note: place parentheses around the assignment to silence this warning 3867 | } while (st = st->next); | ^ | ( ) mail.c:3867:15: note: use '==' to turn this assignment into an equality comparison 3867 | } while (st = st->next); | ^ | == mail.c:3896:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~ mail.c:3896:25: note: place parentheses around the assignment to silence this warning 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ^ | ( ) mail.c:3896:25: note: use '==' to turn this assignment into an equality comparison 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ^ | == mail.c:3897:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ~~~~~~~~~^~~~~~~~ mail.c:3897:20: note: place parentheses around the assignment to silence this warning 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ^ | ( ) mail.c:3897:20: note: use '==' to turn this assignment into an equality comparison 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ^ | == mail.c:3898:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ~~~~~~~~~~^~~~~~~~~ mail.c:3898:21: note: place parentheses around the assignment to silence this warning 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ^ | ( ) mail.c:3898:21: note: use '==' to turn this assignment into an equality comparison 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ^ | == mail.c:3993: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] 3993 | switch (*ucase (criterion)) { | ^~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ mail.c:4084: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] 4084 | mail_parse_date (&elt,(char *) s->text.data) && | ^~~~~~~~~~~~~~~~~~~~~ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:4133:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ~~^~~~~~~~~~~~~~~~~~~~ mail.c:4133:11: note: place parentheses around the assignment to silence this warning 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ^ | ( ) mail.c:4133:11: note: use '==' to turn this assignment into an equality comparison 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ^ | == mail.c:4340: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] 4340 | if (env) t = env->date; | ^ ~~~~~~~~~ mail.c:4344:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4344:22: note: place parentheses around the assignment to silence this warning 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4344:22: note: use '==' to turn this assignment into an equality comparison 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4356: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] 4356 | if (!(t && mail_parse_date (&telt,t) && | ^ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:4380:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4380:22: note: place parentheses around the assignment to silence this warning 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4380:22: note: use '==' to turn this assignment into an equality comparison 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4388:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4388 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4388:9: note: place parentheses around the assignment to silence this warning 4388 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4388:9: note: use '==' to turn this assignment into an equality comparison 4388 | if (v = strchr (v,':')) { | ^ | == mail.c:4414:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4414:22: note: place parentheses around the assignment to silence this warning 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4414:22: note: use '==' to turn this assignment into an equality comparison 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4422:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4422 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4422:9: note: place parentheses around the assignment to silence this warning 4422 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4422:9: note: use '==' to turn this assignment into an equality comparison 4422 | if (v = strchr (v,':')) { | ^ | == mail.c:4448:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4448:22: note: place parentheses around the assignment to silence this warning 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4448:22: note: use '==' to turn this assignment into an equality comparison 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4456:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4456 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4456:9: note: place parentheses around the assignment to silence this warning 4456 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4456:9: note: use '==' to turn this assignment into an equality comparison 4456 | if (v = strchr (v,':')) { | ^ | == mail.c:4483:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4483:22: note: place parentheses around the assignment to silence this warning 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4483:22: note: use '==' to turn this assignment into an equality comparison 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4517:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ~~~~~~~~~^~~~~~~~~~~~ mail.c:4517:16: note: place parentheses around the assignment to silence this warning 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ^ | ( ) mail.c:4517:16: note: use '==' to turn this assignment into an equality comparison 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ^ | == mail.c:4659: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] 4659 | i = compare_string (s1->from,s2->from); | ^~~~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4659: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] 4659 | i = compare_string (s1->from,s2->from); | ^~~~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4662: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] 4662 | i = compare_string (s1->to,s2->to); | ^~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4662: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] 4662 | i = compare_string (s1->to,s2->to); | ^~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4665: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] 4665 | i = compare_string (s1->cc,s2->cc); | ^~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4665: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] 4665 | i = compare_string (s1->cc,s2->cc); | ^~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4668: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] 4668 | i = compare_string (s1->subject,s2->subject); | ^~~~~~~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4668: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] 4668 | i = compare_string (s1->subject,s2->subject); | ^~~~~~~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4673:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4673 | while (pgm = i ? NIL : pgm->next); | ~~~~^~~~~~~~~~~~~~~~~~~~~ mail.c:4673:14: note: place parentheses around the assignment to silence this warning 4673 | while (pgm = i ? NIL : pgm->next); | ^ | ( ) mail.c:4673:14: note: use '==' to turn this assignment into an equality comparison 4673 | while (pgm = i ? NIL : pgm->next); | ^ | == mail.c:4767: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] 4767 | if (!compare_cstring (type,t->name)) { | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4767: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] 4767 | if (!compare_cstring (type,t->name)) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4800:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4800:11: note: place parentheses around the assignment to silence this warning 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ^ | ( ) mail.c:4800:11: note: use '==' to turn this assignment into an equality comparison 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ^ | == mail.c:4811: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] 4811 | if (compare_cstring (top->sc->subject,s->subject)) { | ^~~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4811: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] 4811 | if (compare_cstring (top->sc->subject,s->subject)) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4914:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4914:10: note: place parentheses around the assignment to silence this warning 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ^ | ( ) mail.c:4914:10: note: use '==' to turn this assignment into an equality comparison 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ^ | == mail.c:4962:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4962 | THREADLINKS); st = st->next; con = nxc) { | ~~~^~~~~~~~~~ mail.c:4962:28: note: place parentheses around the assignment to silence this warning 4962 | THREADLINKS); st = st->next; con = nxc) { | ^ | ( ) mail.c:4962:28: note: use '==' to turn this assignment into an equality comparison 4962 | THREADLINKS); st = st->next; con = nxc) { | ^ | == mail.c:5132: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] 5132 | if (!s->date && ov->date && mail_parse_date (&telt,ov->date)) { | ^~~~~~~~ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:5194:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:5194:9: note: place parentheses around the assignment to silence this warning 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ^ | ( ) mail.c:5194:9: note: use '==' to turn this assignment into an equality comparison 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ^ | == mail.c:5198:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:5198:25: note: place parentheses around the assignment to silence this warning 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ^ | ( ) mail.c:5198:25: note: use '==' to turn this assignment into an equality comparison 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ^ | == mail.c:5300:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ~~~~^~~~~~~~~~~~~ mail.c:5300:13: note: place parentheses around the assignment to silence this warning 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ^ | ( ) mail.c:5300:13: note: use '==' to turn this assignment into an equality comparison 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ^ | == mail.c:5382: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] 5382 | else if (!(i = strtoul (sequence,(char **) &sequence,10)) || | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:5398: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] 5398 | else if (!(j = strtoul (sequence,(char **) &sequence,10)) || | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:5451:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ~~^~~~~~~~~~~~~~~~ mail.c:5451:13: note: place parentheses around the assignment to silence this warning 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ^ | ( ) mail.c:5451:13: note: use '==' to turn this assignment into an equality comparison 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ^ | == mail.c:5453: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] 5453 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5453: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] 5453 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5454: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] 5454 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5454: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] 5454 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5455: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] 5455 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5455: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] 5455 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5456: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] 5456 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5456: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] 5456 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5457: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] 5457 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5457: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] 5457 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5467: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] 5467 | if (!compare_cstring (t,s)) *uf |= i = 1 << j; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5467: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] 5467 | if (!compare_cstring (t,s)) *uf |= i = 1 << j; | ^ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5517:27: 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] 5517 | ((!compare_cstring (smb.host,trustdns ? | ^~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5517: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] 5517 | ((!compare_cstring (smb.host,trustdns ? | ^~~~~~~~~~ 5518 | (s = tcp_canonical (nmb.host)) : nmb.host) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5523:27: 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] 5523 | (!compare_cstring (omb.host,nmb.host) && | ^~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5523: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] 5523 | (!compare_cstring (omb.host,nmb.host) && | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6095: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] 6095 | if (auth->server && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6095: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] 6095 | if (auth->server && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6128: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] 6128 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6128: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] 6128 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6215:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:6215:15: note: place parentheses around the assignment to silence this warning 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ^ | ( ) mail.c:6215:15: note: use '==' to turn this assignment into an equality comparison 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ^ | == mail.c:6237:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:6237:15: note: place parentheses around the assignment to silence this warning 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ^ | ( ) mail.c:6237:15: note: use '==' to turn this assignment into an equality comparison 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ^ | == 213 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` misc.c misc.c:272:41: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ~~^~~~~~~~~ misc.c:272:41: note: remove extraneous parentheses around the comparison to silence this warning 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ~ ^ ~ misc.c:272:41: note: use '=' to turn this equality comparison into an assignment 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ^~ | = misc.c:314:47: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ~~~~^~~~~~~~~~~~~~~~~~~ misc.c:314:47: note: place parentheses around the assignment to silence this warning 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ^ | ( ) misc.c:314:47: note: use '==' to turn this assignment into an equality comparison 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ^ | == misc.c:331:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ~~^~~~~~~~~~~~~~~~~~~~~~~ misc.c:331:19: note: place parentheses around the assignment to silence this warning 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ^ | ( ) misc.c:331:19: note: use '==' to turn this assignment into an equality comparison 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ^ | == misc.c:450:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:450:39: note: place parentheses around the assignment to silence this warning 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ^ | ( ) misc.c:450:39: note: use '==' to turn this assignment into an equality comparison 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ^ | == misc.c:469:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:469:39: note: place parentheses around the assignment to silence this warning 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ^ | ( ) misc.c:469:39: note: use '==' to turn this assignment into an equality comparison 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ^ | == misc.c:488: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] 488 | for (s = (char *) s2->data,j = s2->size; *s1 && j; ++s1,++s,--j) | ^ ~~~~~~~~~~~~~~~~~ misc.c:489:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 489 | if (i = (compare_uchar (*s1,*s))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:489:11: note: place parentheses around the assignment to silence this warning 489 | if (i = (compare_uchar (*s1,*s))) return i; | ^ | ( ) misc.c:489:11: note: use '==' to turn this assignment into an equality comparison 489 | if (i = (compare_uchar (*s1,*s))) return i; | ^ | == 7 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -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. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` smanager.c smanager.c:42: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] 42 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:42: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] 42 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:44:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ~~^~~~~~~~~~~~~~~~ smanager.c:44:9: note: place parentheses around the assignment to silence this warning 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ^ | ( ) smanager.c:44:9: note: use '==' to turn this assignment into an equality comparison 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ^ | == smanager.c:46:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ smanager.c:46:13: note: place parentheses around the assignment to silence this warning 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | ( ) smanager.c:46:13: note: use '==' to turn this assignment into an equality comparison 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | == smanager.c:75: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] 75 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:75: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] 75 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:86:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ smanager.c:86:13: note: place parentheses around the assignment to silence this warning 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | ( ) smanager.c:86:13: note: use '==' to turn this assignment into an equality comparison 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | == smanager.c:116:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ~~^~~~~~~~~~~~~~~~~~~~ smanager.c:116:11: note: place parentheses around the assignment to silence this warning 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ^ | ( ) smanager.c:116:11: note: use '==' to turn this assignment into an equality comparison 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ^ | == smanager.c:120:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~ smanager.c:120:11: note: place parentheses around the assignment to silence this warning 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ^ | ( ) smanager.c:120:11: note: use '==' to turn this assignment into an equality comparison 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ^ | == 9 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` utf8.c utf8.c:380: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] 380 | if (!compare_cstring (script,utf8_scvalid[i].name)) | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:380: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] 380 | if (!compare_cstring (script,utf8_scvalid[i].name)) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:397: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] 397 | if (!compare_cstring (charset,utf8_csvalid[i].name)) | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:397: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] 397 | if (!compare_cstring (charset,utf8_csvalid[i].name)) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:583: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] 583 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP"); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:583: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] 583 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP"); | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:610: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] 610 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ? | ^~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:610: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] 610 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ? | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:644: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] 644 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap : | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:644: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] 644 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap : | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:659:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:659:16: note: place parentheses around the assignment to silence this warning 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ^ | ( ) utf8.c:659:16: note: use '==' to turn this assignment into an equality comparison 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ^ | == utf8.c:791:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:791:9: note: place parentheses around the assignment to silence this warning 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ^ | ( ) utf8.c:791:9: note: use '==' to turn this assignment into an equality comparison 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ^ | == utf8.c:1320: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] 1320 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP"; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:1320: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] 1320 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP"; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:1322:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1322 | if (cs = utf8_charset (s)) { | ~~~^~~~~~~~~~~~~~~~~~ utf8.c:1322:12: note: place parentheses around the assignment to silence this warning 1322 | if (cs = utf8_charset (s)) { | ^ | ( ) utf8.c:1322:12: note: use '==' to turn this assignment into an equality comparison 1322 | if (cs = utf8_charset (s)) { | ^ | == utf8.c:2424:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2424:11: note: place parentheses around the assignment to silence this warning 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ^ | ( ) utf8.c:2424:11: note: use '==' to turn this assignment into an equality comparison 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ^ | == utf8.c:2447:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2447:13: note: place parentheses around the assignment to silence this warning 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ^ | ( ) utf8.c:2447:13: note: use '==' to turn this assignment into an equality comparison 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ^ | == utf8.c:2477:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2477:13: note: place parentheses around the assignment to silence this warning 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ^ | ( ) utf8.c:2477:13: note: use '==' to turn this assignment into an equality comparison 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ^ | == utf8.c:2542:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2542:12: note: place parentheses around the assignment to silence this warning 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ^ | ( ) utf8.c:2542:12: note: use '==' to turn this assignment into an equality comparison 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ^ | == utf8.c:2562:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2562 | if (mr = mn) { /* did this value recurse on us? */ | ~~~^~~~ utf8.c:2562:12: note: place parentheses around the assignment to silence this warning 2562 | if (mr = mn) { /* did this value recurse on us? */ | ^ | ( ) utf8.c:2562:12: note: use '==' to turn this assignment into an equality comparison 2562 | if (mr = mn) { /* did this value recurse on us? */ | ^ | == 20 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -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:1630:30: note: passing argument to parameter 'mailbox' here 1630 | 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:85:36: note: passing argument to parameter 'text' here 85 | 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. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` siglocal.c `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` dummy.c dummy.c:121: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] 121 | else if (!compare_cstring (name,"INBOX")) return &dummydriver; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:121: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] 121 | else if (!compare_cstring (name,"INBOX")) return &dummydriver; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:159:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 159 | if (s = strchr (test,'/')) *++s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ dummy.c:159:13: note: place parentheses around the assignment to silence this warning 159 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | ( ) dummy.c:159:13: note: use '==' to turn this assignment into an equality comparison 159 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | == dummy.c:167:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 167 | if (s = strpbrk (test,"%*")) { | ~~^~~~~~~~~~~~~~~~~~~~~ dummy.c:167:11: note: place parentheses around the assignment to silence this warning 167 | if (s = strpbrk (test,"%*")) { | ^ | ( ) dummy.c:167:11: note: use '==' to turn this assignment into an equality comparison 167 | if (s = strpbrk (test,"%*")) { | ^ | == dummy.c:173:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 173 | if (s = strrchr (file,'/')){/* find directory name */ | ~~^~~~~~~~~~~~~~~~~~~~ dummy.c:173:11: note: place parentheses around the assignment to silence this warning 173 | if (s = strrchr (file,'/')){/* find directory name */ | ^ | ( ) dummy.c:173:11: note: use '==' to turn this assignment into an equality comparison 173 | if (s = strrchr (file,'/')){/* find directory name */ | ^ | == dummy.c:182: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] 182 | if (pmatch ("INBOX",ucase (test))) { | ^~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | pmatch_full (s,pat,NIL) | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ dummy.c:182: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] 182 | if (pmatch ("INBOX",ucase (test))) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:221: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] 221 | if (!compare_cstring (s,"INBOX") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:221: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] 221 | if (!compare_cstring (s,"INBOX") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:222: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] 222 | pmatch ("INBOX",ucase (strcpy (tmp,test)))) | ^~~~~~~~~~~~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | pmatch_full (s,pat,NIL) | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ dummy.c:222: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] 222 | pmatch ("INBOX",ucase (strcpy (tmp,test)))) | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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 | 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:224: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] 224 | 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:227: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] 227 | 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:227: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] 227 | 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:231:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 231 | while (s = sm_read (tmpx,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~~ dummy.c:231:12: note: place parentheses around the assignment to silence this warning 231 | while (s = sm_read (tmpx,&sdb)); | ^ | ( ) dummy.c:231:12: note: use '==' to turn this assignment into an equality comparison 231 | while (s = sm_read (tmpx,&sdb)); | ^ | == dummy.c:280:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ~~~^~~~~~~~~~~~~~~ dummy.c:280:10: note: place parentheses around the assignment to silence this warning 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ^ | ( ) dummy.c:280:10: note: use '==' to turn this assignment into an equality comparison 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ^ | == dummy.c:288: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] 288 | 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:288: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] 288 | 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:288: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] 288 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX")) | ^~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:288: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] 288 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX")) | ^~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:292:64: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ~~^~~~~~~~~~~~~~ dummy.c:292:64: note: place parentheses around the assignment to silence this warning 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ^ | ( ) dummy.c:292:64: note: use '==' to turn this assignment into an equality comparison 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ^ | == dummy.c:302: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] 302 | 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:302: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] 302 | 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:303: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] 303 | 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:303: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] 303 | 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:304: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] 304 | 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: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 | 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:313: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] 313 | if (!pmatch (tmp,"INBOX")) { | ^~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:313: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] 313 | if (!pmatch (tmp,"INBOX")) { | ^~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:314: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] 314 | 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:314: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] 314 | 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:319: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] 319 | 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:319: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] 319 | 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:323: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] 323 | 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:323: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] 323 | 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:329: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] 329 | 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:329: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] 329 | 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:329: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] 329 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX")) | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:329: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] 329 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:456: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] 456 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:456: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] 456 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:483:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ~~^~~~~~~~~~~~~~~~~~~~ dummy.c:483:9: note: place parentheses around the assignment to silence this warning 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ^ | ( ) dummy.c:483:9: note: use '==' to turn this assignment into an equality comparison 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ^ | == dummy.c:566: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] 566 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf)) | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:566: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] 566 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf)) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:595: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] 595 | if (compare_cstring (stream->mailbox,"INBOX")) | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:595: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] 595 | if (compare_cstring (stream->mailbox,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:702: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] 702 | if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ dummy.c:703: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] 703 | mail_sequence (stream,sequence)) fatal ("Impossible dummy_copy"); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ dummy.c:724: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] 724 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:724: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] 724 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:726:23: warning: unsequenced modification and access to 'ts' [-Wunsequenced] 726 | if (!ts && !(*(ts = default_proto (NIL))->dtb->create) (ts,"INBOX")) | ^ ~~ dummy.c:801:28: warning: expression result unused [-Wunused-value] 801 | for (i = 0, s = tmp; *s; *s++) if ((*s == '*') || (*s == '%')) ++i; | ^~~~ 53 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` pseudo.c `cat CCTYPE` `cat SHLIBFLAGS` -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. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` flstring.c `cat CCTYPE` `cat SHLIBFLAGS` -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. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` rfc822.c rfc822.c:153:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 153 | if (t = d = strchr (tmp,':')) { | ~~^~~~~~~~~~~~~~~~~~~~~~ rfc822.c:153:11: note: place parentheses around the assignment to silence this warning 153 | if (t = d = strchr (tmp,':')) { | ^ | ( ) rfc822.c:153:11: note: use '==' to turn this assignment into an equality comparison 153 | if (t = d = strchr (tmp,':')) { | ^ | == rfc822.c:157: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] 157 | ucase (tmp); /* coerce to uppercase */ | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:196: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] 196 | if (!env->date && !strcmp (tmp+1,"ATE")) env->date = cpystr (d); | ^ ~~~~~~~~~~ rfc822.c:202:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 202 | while (c = *d++) if (c != ' ') *t++ = c; | ~~^~~~~~ rfc822.c:202:13: note: place parentheses around the assignment to silence this warning 202 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | ( ) rfc822.c:202:13: note: use '==' to turn this assignment into an equality comparison 202 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | == rfc822.c:216:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:216:10: note: place parentheses around the assignment to silence this warning 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ^ | ( ) rfc822.c:216:10: note: use '==' to turn this assignment into an equality comparison 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ^ | == rfc822.c:227:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 227 | while (c = *d++) if (c != ' ') *t++ = c; | ~~^~~~~~ rfc822.c:227:13: note: place parentheses around the assignment to silence this warning 227 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | ( ) rfc822.c:227:13: note: use '==' to turn this assignment into an equality comparison 227 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | == rfc822.c:388:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ~~^~~~~~~~~~~~~ rfc822.c:388:13: note: place parentheses around the assignment to silence this warning 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ^ | ( ) rfc822.c:388:13: note: use '==' to turn this assignment into an equality comparison 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ^ | == rfc822.c:398:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ~~^~~~~~~ rfc822.c:398:8: note: place parentheses around the assignment to silence this warning 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ^ | ( ) rfc822.c:398:8: note: use '==' to turn this assignment into an equality comparison 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ^ | == rfc822.c:454:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 454 | if (i = part->body.mime.text.size) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:454:13: note: place parentheses around the assignment to silence this warning 454 | if (i = part->body.mime.text.size) { | ^ | ( ) rfc822.c:454:13: note: use '==' to turn this assignment into an equality comparison 454 | if (i = part->body.mime.text.size) { | ^ | == rfc822.c:497: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] 497 | rfc822_parse_content_header (&part->body,ucase (s1+8),s); | ^~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:497: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] 497 | 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:555:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 555 | if (t = strchr (name,' ')) *t = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ rfc822.c:555:9: note: place parentheses around the assignment to silence this warning 555 | if (t = strchr (name,' ')) *t = '\0'; | ^ | ( ) rfc822.c:555:9: note: use '==' to turn this assignment into an equality comparison 555 | if (t = strchr (name,' ')) *t = '\0'; | ^ | == rfc822.c:568: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] 568 | body->disposition.type = ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:568: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] 568 | body->disposition.type = ucase (cpystr (s)); | ^ ~~~~~~~~~~~~~~~~~~ rfc822.c:582: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] 582 | stl->text.data = (unsigned char *) ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:609: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] 609 | compare_cstring (s,body_types[i]); i++); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:609: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] 609 | compare_cstring (s,body_types[i]); i++); | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:620: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] 620 | body_types[body->type] = ucase (s); | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:620: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] 620 | body_types[body->type] = ucase (s); | ^ ~~~~~~~~~ rfc822.c:632: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] 632 | if (s) body->subtype = ucase (rfc822_cpy (s)); | ^~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:632: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] 632 | if (s) body->subtype = ucase (rfc822_cpy (s)); | ^ ~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:650: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] 650 | compare_cstring (s,body_encodings[i]); i++); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:650: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] 650 | compare_cstring (s,body_encodings[i]); i++); | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:661: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] 661 | body_encodings[body->encoding] = ucase (s); | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:661: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] 661 | body_encodings[body->encoding] = ucase (s); | ^ ~~~~~~~~~ rfc822.c:694: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] 694 | param->attribute = ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:694: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] 694 | param->attribute = ucase (cpystr (s)); | ^ ~~~~~~~~~~~~~~~~~~ rfc822.c:745:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:745:18: note: place parentheses around the assignment to silence this warning 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ^ | ( ) rfc822.c:745:18: note: use '==' to turn this assignment into an equality comparison 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ^ | == rfc822.c:799:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:799:11: note: place parentheses around the assignment to silence this warning 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ^ | ( ) rfc822.c:799:11: note: use '==' to turn this assignment into an equality comparison 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ^ | == rfc822.c:801:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:801:16: note: place parentheses around the assignment to silence this warning 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ^ | ( ) rfc822.c:801:16: note: use '==' to turn this assignment into an equality comparison 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ^ | == rfc822.c:847:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:847:13: note: place parentheses around the assignment to silence this warning 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ^ | ( ) rfc822.c:847:13: note: use '==' to turn this assignment into an equality comparison 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ^ | == rfc822.c:906:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 906 | else if (end = rfc822_parse_phrase (s)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:906:16: note: place parentheses around the assignment to silence this warning 906 | else if (end = rfc822_parse_phrase (s)) { | ^ | ( ) rfc822.c:906:16: note: use '==' to turn this assignment into an equality comparison 906 | else if (end = rfc822_parse_phrase (s)) { | ^ | == rfc822.c:1035:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1035:11: note: place parentheses around the assignment to silence this warning 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ^ | ( ) rfc822.c:1035:11: note: use '==' to turn this assignment into an equality comparison 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ^ | == rfc822.c:1103:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1103:14: note: place parentheses around the assignment to silence this warning 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ^ | ( ) rfc822.c:1103:14: note: use '==' to turn this assignment into an equality comparison 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ^ | == rfc822.c:1113:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1113 | if (string = rfc822_parse_domain (string,&t)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1113:18: note: place parentheses around the assignment to silence this warning 1113 | if (string = rfc822_parse_domain (string,&t)) { | ^ | ( ) rfc822.c:1113:18: note: use '==' to turn this assignment into an equality comparison 1113 | if (string = rfc822_parse_domain (string,&t)) { | ^ | == rfc822.c:1180:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1180 | while (st = strchr (st,I2C_ESC)) | ~~~^~~~~~~~~~~~~~~~~~~~~ rfc822.c:1180:14: note: place parentheses around the assignment to silence this warning 1180 | while (st = strchr (st,I2C_ESC)) | ^ | ( ) rfc822.c:1180:14: note: use '==' to turn this assignment into an equality comparison 1180 | while (st = strchr (st,I2C_ESC)) | ^ | == rfc822.c:1379:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1379 | if (i = min (len,buf->end - buf->cur)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1379:11: note: place parentheses around the assignment to silence this warning 1379 | if (i = min (len,buf->end - buf->cur)) { | ^ | ( ) rfc822.c:1379:11: note: use '==' to turn this assignment into an equality comparison 1379 | if (i = min (len,buf->end - buf->cur)) { | ^ | == rfc822.c:1470: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] 1470 | 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:1627:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1627:14: note: place parentheses around the assignment to silence this warning 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ^ | ( ) rfc822.c:1627:14: note: use '==' to turn this assignment into an equality comparison 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ^ | == rfc822.c:1745:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1745 | while (part = part->next); /* until done */ | ~~~~~^~~~~~~~~~~~ rfc822.c:1745:17: note: place parentheses around the assignment to silence this warning 1745 | while (part = part->next); /* until done */ | ^ | ( ) rfc822.c:1745:17: note: use '==' to turn this assignment into an equality comparison 1745 | while (part = part->next); /* until done */ | ^ | == rfc822.c:1813:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1813 | while (part = part->next); /* until done */ | ~~~~~^~~~~~~~~~~~ rfc822.c:1813:17: note: place parentheses around the assignment to silence this warning 1813 | while (part = part->next); /* until done */ | ^ | ( ) rfc822.c:1813:17: note: use '==' to turn this assignment into an equality comparison 1813 | while (part = part->next); /* until done */ | ^ | == rfc822.c:1969:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1969:8: note: place parentheses around the assignment to silence this warning 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ^ | ( ) rfc822.c:1969:8: note: use '==' to turn this assignment into an equality comparison 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ^ | == 42 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` nntp.c nntp.c:351:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:351:14: note: place parentheses around the assignment to silence this warning 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ^ | ( ) nntp.c:351:14: note: use '==' to turn this assignment into an equality comparison 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ^ | == nntp.c:356:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ~~^~~~~~~~~~~~~~~~ nntp.c:356:13: note: place parentheses around the assignment to silence this warning 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ^ | ( ) nntp.c:356:13: note: use '==' to turn this assignment into an equality comparison 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ^ | == nntp.c:360: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] 360 | 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:360: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] 360 | 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:363: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] 363 | 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:363: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] 363 | 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:395:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ nntp.c:395:9: note: place parentheses around the assignment to silence this warning 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ | ( ) nntp.c:395:9: note: use '==' to turn this assignment into an equality comparison 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ | == nntp.c:395: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] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:395:66: 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] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:398:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ nntp.c:398:12: note: place parentheses around the assignment to silence this warning 398 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) nntp.c:398:12: note: use '==' to turn this assignment into an equality comparison 398 | while (s = sm_read (tmp,&sdb)); | ^ | == nntp.c:429:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ~~^~~~~~~~~~~~~~~~ nntp.c:429:25: note: place parentheses around the assignment to silence this warning 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ^ | ( ) nntp.c:429:25: note: use '==' to turn this assignment into an equality comparison 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ^ | == nntp.c:555:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 555 | else if (state = newsrc_state (stream,name)) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:555:20: note: place parentheses around the assignment to silence this warning 555 | else if (state = newsrc_state (stream,name)) { | ^ | ( ) nntp.c:555:20: note: use '==' to turn this assignment into an equality comparison 555 | else if (state = newsrc_state (stream,name)) { | ^ | == nntp.c:565: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] 565 | 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:574: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] 574 | 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:733: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] 733 | lcase (strcpy (s,(long) mail_parameters (NIL,GET_NEWSRCCANONHOST,NIL) ? | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 734 | net_host (nstream->netstream) : mb.host)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ nntp.c:852: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] 852 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:853: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] 853 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:895: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] 895 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:895: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] 895 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:928:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 928 | for (t = v = s; c = *v++;) | ~~^~~~~~ nntp.c:928:22: note: place parentheses around the assignment to silence this warning 928 | for (t = v = s; c = *v++;) | ^ | ( ) nntp.c:928:22: note: use '==' to turn this assignment into an equality comparison 928 | for (t = v = s; c = *v++;) | ^ | == nntp.c:998: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] 998 | while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:998: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] 998 | 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:1038:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1038 | if (t = strchr (ov->subject,'\t')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1038:9: note: place parentheses around the assignment to silence this warning 1038 | if (t = strchr (ov->subject,'\t')) { | ^ | ( ) nntp.c:1038:9: note: use '==' to turn this assignment into an equality comparison 1038 | if (t = strchr (ov->subject,'\t')) { | ^ | == nntp.c:1041:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1041 | if (ov->date = strchr (t,'\t')) { | ~~~~~~~~~^~~~~~~~~~~~~~~~~ nntp.c:1041:18: note: place parentheses around the assignment to silence this warning 1041 | if (ov->date = strchr (t,'\t')) { | ^ | ( ) nntp.c:1041:18: note: use '==' to turn this assignment into an equality comparison 1041 | if (ov->date = strchr (t,'\t')) { | ^ | == nntp.c:1044: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] 1044 | if (!elt->day) mail_parse_date (elt,ov->date); | ^~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1048:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1048:26: note: place parentheses around the assignment to silence this warning 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ^ | ( ) nntp.c:1048:26: note: use '==' to turn this assignment into an equality comparison 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ^ | == nntp.c:1052:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1052:21: note: place parentheses around the assignment to silence this warning 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ^ | ( ) nntp.c:1052:21: note: use '==' to turn this assignment into an equality comparison 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ^ | == nntp.c:1056:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1056 | if (t = strchr (ov->references,'\t')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1056:10: note: place parentheses around the assignment to silence this warning 1056 | if (t = strchr (ov->references,'\t')) { | ^ | ( ) nntp.c:1056:10: note: use '==' to turn this assignment into an equality comparison 1056 | if (t = strchr (ov->references,'\t')) { | ^ | == nntp.c:1061:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1061 | if (t = strchr (t,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1061:12: note: place parentheses around the assignment to silence this warning 1061 | if (t = strchr (t,'\t')) { | ^ | ( ) nntp.c:1061:12: note: use '==' to turn this assignment into an equality comparison 1061 | if (t = strchr (t,'\t')) { | ^ | == nntp.c:1065:30: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1065 | if (ov->optional.xref = strchr (t,'\t')) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ nntp.c:1065:30: note: place parentheses around the assignment to silence this warning 1065 | if (ov->optional.xref = strchr (t,'\t')) | ^ | ( ) nntp.c:1065:30: note: use '==' to turn this assignment into an equality comparison 1065 | if (ov->optional.xref = strchr (t,'\t')) | ^ | == nntp.c:1098:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1098:13: note: place parentheses around the assignment to silence this warning 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ^ | ( ) nntp.c:1098:13: note: use '==' to turn this assignment into an equality comparison 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ^ | == nntp.c:1150:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1151 | &LOCAL->txtsize,NIL)) break; | ~~~~~~~~~~~~~~~~~~~~ nntp.c:1150:22: note: place parentheses around the assignment to silence this warning 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ^ | ( 1151 | &LOCAL->txtsize,NIL)) break; | | ) nntp.c:1150:22: note: use '==' to turn this assignment into an equality comparison 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ^ | == nntp.c:1215:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1215 | if (msg = utf8_badcharset (charset)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1215:11: note: place parentheses around the assignment to silence this warning 1215 | if (msg = utf8_badcharset (charset)) { | ^ | ( ) nntp.c:1215:11: note: use '==' to turn this assignment into an equality comparison 1215 | if (msg = utf8_badcharset (charset)) { | ^ | == nntp.c:1260:39: warning: call to undeclared function 'time'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 1260 | unsigned long now = (unsigned long) time (0); | ^ nntp.c:1268:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ~~~~^~~~~~~~~~~~ nntp.c:1268:13: note: place parentheses around the assignment to silence this warning 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ^ | ( ) nntp.c:1268:13: note: use '==' to turn this assignment into an equality comparison 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ^ | == nntp.c:1276:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ~~~~^~~~~~~~~~ nntp.c:1276:13: note: place parentheses around the assignment to silence this warning 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ^ | ( ) nntp.c:1276:13: note: use '==' to turn this assignment into an equality comparison 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ^ | == nntp.c:1313: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] 1313 | (!mail_parse_date (&delt,ov->date) || | ^~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1512:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ~~^~~~~~ nntp.c:1512:25: note: place parentheses around the assignment to silence this warning 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ^ | ( ) nntp.c:1512:25: note: use '==' to turn this assignment into an equality comparison 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ^ | == nntp.c:1521:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1521 | if (t = strchr (v,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1521:8: note: place parentheses around the assignment to silence this warning 1521 | if (t = strchr (v,'\t')) { | ^ | ( ) nntp.c:1521:8: note: use '==' to turn this assignment into an equality comparison 1521 | if (t = strchr (v,'\t')) { | ^ | == nntp.c:1523:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1523:12: note: place parentheses around the assignment to silence this warning 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ^ | ( ) nntp.c:1523:12: note: use '==' to turn this assignment into an equality comparison 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ^ | == nntp.c:1528:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1528 | if (v = strchr (t,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1528:10: note: place parentheses around the assignment to silence this warning 1528 | if (v = strchr (t,'\t')) { | ^ | ( ) nntp.c:1528:10: note: use '==' to turn this assignment into an equality comparison 1528 | if (v = strchr (t,'\t')) { | ^ | == nntp.c:1530: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] 1530 | if (mail_parse_date (&telt,t)) r->date = mail_longdate (&telt); | ^ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1678:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1678 | if (netstream = /* try to open ordinary connection */ | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1679 | net_open (&mb,dv,port, | ~~~~~~~~~~~~~~~~~~~~~~ 1680 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1681 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1678:21: note: place parentheses around the assignment to silence this warning 1678 | if (netstream = /* try to open ordinary connection */ | ^ | ( 1679 | net_open (&mb,dv,port, 1680 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), 1681 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) { | | ) nntp.c:1678:21: note: use '==' to turn this assignment into an equality comparison 1678 | if (netstream = /* try to open ordinary connection */ | ^ | == nntp.c:1719:35: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1719 | if (stream->netstream->stream = | ~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1720 | (*stls) (stream->netstream->stream,mb.host, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1721 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1722 | (mb.novalidate ? NET_NOVALIDATECERT:NIL))) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1719:35: note: place parentheses around the assignment to silence this warning 1719 | if (stream->netstream->stream = | ^ | ( 1720 | (*stls) (stream->netstream->stream,mb.host, 1721 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) | 1722 | (mb.novalidate ? NET_NOVALIDATECERT:NIL))) | | ) nntp.c:1719:35: note: use '==' to turn this assignment into an equality comparison 1719 | if (stream->netstream->stream = | ^ | == nntp.c:1816:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ~~~~~^~~~~~~~~~~~~~~~ nntp.c:1816:14: note: place parentheses around the assignment to silence this warning 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | ( ) nntp.c:1816:14: note: use '==' to turn this assignment into an equality comparison 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | == nntp.c:1817: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] 1817 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1817: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] 1817 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1818: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] 1818 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1818: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] 1818 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"HDR")) NNTP.ext.hdr = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1819: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] 1819 | else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"PAT")) NNTP.ext.pat = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"PAT")) NNTP.ext.pat = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"STARTTLS")) NNTP.ext.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1821: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] 1821 | else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"MULTIDOMAIN")) NNTP.ext.multidomain = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1822: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] 1822 | else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1824: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] 1824 | else if (!compare_cstring (t,"AUTHINFO") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1824: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] 1824 | else if (!compare_cstring (t,"AUTHINFO") && args) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1827: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] 1827 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1827: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] 1827 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1915: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] 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^~~~~~~~~ /usr/include/string.h:123:26: note: passing argument to parameter here 123 | char *strstr(const char *, const char *) __pure; | ^ nntp.c:1915:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1915 | if (s = strstr (env->date," (")) *s = NIL; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1915:9: note: place parentheses around the assignment to silence this warning 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^ | ( ) nntp.c:1915:9: note: use '==' to turn this assignment into an equality comparison 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^ | == nntp.c:2213:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2213 | while (t = strstr (s,"\015\012.")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:2213:12: note: place parentheses around the assignment to silence this warning 2213 | while (t = strstr (s,"\015\012.")) { | ^ | ( ) nntp.c:2213:12: note: use '==' to turn this assignment into an equality comparison 2213 | while (t = strstr (s,"\015\012.")) { | ^ | == 64 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` smtp.c smtp.c:162: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] 162 | else if (!compare_cstring (mb.service,"submit")) { | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:162: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] 162 | else if (!compare_cstring (mb.service,"submit")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:168:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 168 | if (netstream = /* try to open ordinary connection */ | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 169 | net_open (&mb,dv,port, | ~~~~~~~~~~~~~~~~~~~~~~ 170 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 171 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ smtp.c:168:21: note: place parentheses around the assignment to silence this warning 168 | if (netstream = /* try to open ordinary connection */ | ^ | ( 169 | net_open (&mb,dv,port, 170 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), 171 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) { | | ) smtp.c:168:21: note: use '==' to turn this assignment into an equality comparison 168 | if (netstream = /* try to open ordinary connection */ | ^ | == smtp.c:180: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] 180 | s = compare_cstring ("localhost",mb.host) ? | ^~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:180: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] 180 | s = compare_cstring ("localhost",mb.host) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:693: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] 693 | if (!compare_cstring (s,"SIZE")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:693: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] 693 | if (!compare_cstring (s,"SIZE")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:697: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] 697 | else if (!compare_cstring (s,"DELIVERBY")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:697: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] 697 | else if (!compare_cstring (s,"DELIVERBY")) { | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:701: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] 701 | else if (!compare_cstring (s,"ATRN")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:701: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] 701 | else if (!compare_cstring (s,"ATRN")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:705: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] 705 | else if (!compare_cstring (s,"AUTH")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:705: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] 705 | else if (!compare_cstring (s,"AUTH")) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SIZE")) ESMTP.size.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SIZE")) ESMTP.size.ok = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"8BITMIME")) ESMTP.eightbit.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:712: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] 712 | else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"DSN")) ESMTP.dsn.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:713: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] 713 | else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ATRN")) ESMTP.atrn.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"ATRN")) ESMTP.atrn.ok = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SEND")) ESMTP.service.send = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SEND")) ESMTP.service.send = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SOML")) ESMTP.service.soml = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SOML")) ESMTP.service.soml = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SAML")) ESMTP.service.saml = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SAML")) ESMTP.service.saml = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"EXPN")) ESMTP.service.expn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"EXPN")) ESMTP.service.expn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"HELP")) ESMTP.service.help = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:719: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] 719 | else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"TURN")) ESMTP.service.turn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:720: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] 720 | else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ETRN")) ESMTP.service.etrn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:721: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] 721 | else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"STARTTLS")) ESMTP.service.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:722: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] 722 | else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:723: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] 723 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:723: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] 723 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"PIPELINING")) ESMTP.service.pipe = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"PIPELINING")) ESMTP.service.pipe = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ENHANCEDSTATUSCODES")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:725: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] 725 | else if (!compare_cstring (s,"ENHANCEDSTATUSCODES")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:727: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] 727 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:727: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] 727 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:728: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] 728 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:728: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] 728 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:786:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 786 | while (t = strstr (s,"\015\012.")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ smtp.c:786:12: note: place parentheses around the assignment to silence this warning 786 | while (t = strstr (s,"\015\012.")) { | ^ | ( ) smtp.c:786:12: note: use '==' to turn this assignment into an equality comparison 786 | while (t = strstr (s,"\015\012.")) { | ^ | == 48 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` imap4r1.c imap4r1.c:503:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:503:9: note: place parentheses around the assignment to silence this warning 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ | ( ) imap4r1.c:503:9: note: use '==' to turn this assignment into an equality comparison 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ | == imap4r1.c:503: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] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:503:66: 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] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:506:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 506 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:506:12: note: place parentheses around the assignment to silence this warning 506 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) imap4r1.c:506:12: note: use '==' to turn this assignment into an equality comparison 506 | while (s = sm_read (tmp,&sdb)); | ^ | == imap4r1.c:563: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] 563 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST"; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:563: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] 563 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:565: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] 565 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB"; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:565: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] 565 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:577: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] 577 | 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:578: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] 578 | !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:701: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] 701 | mm_log (reply->text,ret ? NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:848:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:848:20: note: place parentheses around the assignment to silence this warning 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ^ | ( ) imap4r1.c:848:20: note: use '==' to turn this assignment into an equality comparison 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ^ | == imap4r1.c:869: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] 869 | 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:870: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] 870 | (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:870: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] 870 | (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: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] 871 | if (reply) mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:876: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] 876 | 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:984: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] 984 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX"); | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:984: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] 984 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:994: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] 994 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1040: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] 1040 | !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:1044: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] 1044 | 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:1044: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] 1044 | 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:1080: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] 1080 | if (compare_cstring (reply->tag,tag)) { | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1082: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] 1082 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1097: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] 1097 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1147: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] 1147 | else if (compare_cstring (reply->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1148: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] 1148 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1157: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] 1157 | lsterr = cpystr (reply->text); | ^~~~~~~~~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ imap4r1.c:1209: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] 1209 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1239: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] 1239 | !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:1244: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] 1244 | 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:1301: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] 1301 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1316:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1316:13: note: place parentheses around the assignment to silence this warning 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:1316:13: note: use '==' to turn this assignment into an equality comparison 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:1316:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~^~~~~ imap4r1.c:1316:45: note: place parentheses around the assignment to silence this warning 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:1316:45: note: use '==' to turn this assignment into an equality comparison 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:1341: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] 1341 | if (!imap_OK (stream,reply)) mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1362: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] 1362 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1415: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] 1415 | ov.date = env->date; | ^ ~~~~~~~~~ imap4r1.c:1463: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] 1463 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1498:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1499 | min (set->last,stream->nmsgs)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1498:10: note: place parentheses around the assignment to silence this warning 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ^ | ( 1499 | min (set->last,stream->nmsgs)) { | | ) imap4r1.c:1498:10: note: use '==' to turn this assignment into an equality comparison 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ^ | == imap4r1.c:1521:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1521 | if (k = (k > i) ? k - i : 0) | ~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1521:9: note: place parentheses around the assignment to silence this warning 1521 | if (k = (k > i) ? k - i : 0) | ^ | ( ) imap4r1.c:1521:9: note: use '==' to turn this assignment into an equality comparison 1521 | if (k = (k > i) ? k - i : 0) | ^ | == imap4r1.c:1590: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] 1590 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1592: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] 1592 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1699:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1699 | else if (t = strstr (section,".HEADER")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1699:16: note: place parentheses around the assignment to silence this warning 1699 | else if (t = strstr (section,".HEADER")) { | ^ | ( ) imap4r1.c:1699:16: note: use '==' to turn this assignment into an equality comparison 1699 | else if (t = strstr (section,".HEADER")) { | ^ | == imap4r1.c:1822: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] 1822 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1832: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] 1832 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1841: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] 1841 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1845: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] 1845 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1883:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ~~^~~~~~~~~~~~~~~~~~~ imap4r1.c:1883:11: note: place parentheses around the assignment to silence this warning 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ^ | ( ) imap4r1.c:1883:11: note: use '==' to turn this assignment into an equality comparison 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ^ | == imap4r1.c:1898: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] 1898 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1934: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] 1934 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1975: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] 1975 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2043: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] 2043 | !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:2047:50: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ~~^~~~~~~~~~~~ imap4r1.c:2047:50: note: place parentheses around the assignment to silence this warning 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ^ | ( ) imap4r1.c:2047:50: note: use '==' to turn this assignment into an equality comparison 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ^ | == imap4r1.c:2062: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] 2062 | 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:2068: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] 2068 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2104: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] 2104 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2167: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] 2167 | 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:2174: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] 2174 | 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:2183: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] 2183 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2270: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] 2270 | if (!compare_cstring (thr->name,type)) | ^~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2270: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] 2270 | if (!compare_cstring (thr->name,type)) | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2330: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] 2330 | 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:2337: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] 2337 | 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:2345: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] 2345 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2369: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] 2369 | mm_log (reply->text,imap_OK (stream,reply) ? (long) NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2394: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] 2394 | else if (mail_sequence (stream,sequence)) { | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ imap4r1.c:2422: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] 2422 | if (reply) mm_log (reply->text,ret ? (long) NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2460: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] 2460 | else if (ir && pc && LOCAL->referral && mail_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ imap4r1.c:2464: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] 2464 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2517: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] 2517 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2580: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] 2580 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2610: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] 2610 | if (!mail_parse_date (&elt,date)) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:2614: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] 2614 | LOCAL->reply.tag = LOCAL->reply.line = cpystr ("*"); | ^ ~~~~~~~~~~~~ imap4r1.c:2615: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] 2615 | LOCAL->reply.key = "BAD"; | ^ ~~~~~ imap4r1.c:2616: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] 2616 | LOCAL->reply.text = "Bad date in append"; | ^ ~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2649:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2649:15: note: place parentheses around the assignment to silence this warning 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ^ | ( ) imap4r1.c:2649:15: note: use '==' to turn this assignment into an equality comparison 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ^ | == imap4r1.c:2704:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2704:13: note: place parentheses around the assignment to silence this warning 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:2704:13: note: use '==' to turn this assignment into an equality comparison 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:2704:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~^~~~~ imap4r1.c:2704:45: note: place parentheses around the assignment to silence this warning 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:2704:45: note: use '==' to turn this assignment into an equality comparison 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:2812: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] 2812 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2836: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] 2836 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2858: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] 2858 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2881: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] 2881 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2918: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] 2918 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") && | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2918: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] 2918 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2919: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] 2919 | compare_cstring (cmd,"STORE") && | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2919: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] 2919 | compare_cstring (cmd,"STORE") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SEARCH")) ? | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2920: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] 2920 | compare_cstring (cmd,"SEARCH")) ? | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2926:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2926 | if (arglst = args) while (arg = *arglst++) { | ~~~~~~~^~~~~~ imap4r1.c:2926:14: note: place parentheses around the assignment to silence this warning 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | ( ) imap4r1.c:2926:14: note: use '==' to turn this assignment into an equality comparison 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | == imap4r1.c:2926:33: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2926 | if (arglst = args) while (arg = *arglst++) { | ~~~~^~~~~~~~~~~ imap4r1.c:2926:33: note: place parentheses around the assignment to silence this warning 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | ( ) imap4r1.c:2926:33: note: use '==' to turn this assignment into an equality comparison 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | == imap4r1.c:2946:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2946:17: note: place parentheses around the assignment to silence this warning 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ^ | ( ) imap4r1.c:2946:17: note: use '==' to turn this assignment into an equality comparison 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ^ | == imap4r1.c:2950:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2950:17: note: place parentheses around the assignment to silence this warning 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ^ | ( ) imap4r1.c:2950:17: note: use '==' to turn this assignment into an equality comparison 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ^ | == imap4r1.c:2958:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2959 | CMDBASE+MAXCOMMAND)) return reply; | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:2958:12: note: place parentheses around the assignment to silence this warning 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ^ | ( 2959 | CMDBASE+MAXCOMMAND)) return reply; | | ) imap4r1.c:2958:12: note: use '==' to turn this assignment into an equality comparison 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ^ | == imap4r1.c:2962:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2962 | while (list = list->next); | ~~~~~^~~~~~~~~~~~ imap4r1.c:2962:19: note: place parentheses around the assignment to silence this warning 2962 | while (list = list->next); | ^ | ( ) imap4r1.c:2962:19: note: use '==' to turn this assignment into an equality comparison 2962 | while (list = list->next); | ^ | == imap4r1.c:2966:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2967 | CMDBASE+MAXCOMMAND)) | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:2966:17: note: place parentheses around the assignment to silence this warning 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ^ | ( 2967 | CMDBASE+MAXCOMMAND)) | | ) imap4r1.c:2966:17: note: use '==' to turn this assignment into an equality comparison 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ^ | == imap4r1.c:3052:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3052:17: note: place parentheses around the assignment to silence this warning 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ^ | ( ) imap4r1.c:3052:17: note: use '==' to turn this assignment into an equality comparison 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ^ | == imap4r1.c:3073: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] 3073 | if (!map->date || mail_parse_date (&elt,map->date)) { | ^~~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:3074:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3074 | if (t = map->flags) { /* flags given? */ | ~~^~~~~~~~~~~~ imap4r1.c:3074:10: note: place parentheses around the assignment to silence this warning 3074 | if (t = map->flags) { /* flags given? */ | ^ | ( ) imap4r1.c:3074:10: note: use '==' to turn this assignment into an equality comparison 3074 | if (t = map->flags) { /* flags given? */ | ^ | == imap4r1.c:3086:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3087 | CMDBASE+MAXCOMMAND)) return reply; | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:3086:16: note: place parentheses around the assignment to silence this warning 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ^ | ( 3087 | CMDBASE+MAXCOMMAND)) return reply; | | ) imap4r1.c:3086:16: note: use '==' to turn this assignment into an equality comparison 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ^ | == imap4r1.c:3090:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3090:14: note: place parentheses around the assignment to silence this warning 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ^ | ( ) imap4r1.c:3090:14: note: use '==' to turn this assignment into an equality comparison 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ^ | == imap4r1.c:3120:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3120 | while (list = list->next); | ~~~~~^~~~~~~~~~~~ imap4r1.c:3120:19: note: place parentheses around the assignment to silence this warning 3120 | while (list = list->next); | ^ | ( ) imap4r1.c:3120:19: note: use '==' to turn this assignment into an equality comparison 3120 | while (list = list->next); | ^ | == imap4r1.c:3199: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] 3199 | 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:3354:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3354 | if (hdr = pgm->header) do { | ~~~~^~~~~~~~~~~~~ imap4r1.c:3354:11: note: place parentheses around the assignment to silence this warning 3354 | if (hdr = pgm->header) do { | ^ | ( ) imap4r1.c:3354:11: note: use '==' to turn this assignment into an equality comparison 3354 | if (hdr = pgm->header) do { | ^ | == imap4r1.c:3356:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3356:15: note: place parentheses around the assignment to silence this warning 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ^ | ( ) imap4r1.c:3356:15: note: use '==' to turn this assignment into an equality comparison 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ^ | == imap4r1.c:3359:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3359:15: note: place parentheses around the assignment to silence this warning 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ^ | ( ) imap4r1.c:3359:15: note: use '==' to turn this assignment into an equality comparison 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ^ | == imap4r1.c:3361:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3361 | } while (hdr = hdr->next); | ~~~~^~~~~~~~~~~ imap4r1.c:3361:16: note: place parentheses around the assignment to silence this warning 3361 | } while (hdr = hdr->next); | ^ | ( ) imap4r1.c:3361:16: note: use '==' to turn this assignment into an equality comparison 3361 | } while (hdr = hdr->next); | ^ | == imap4r1.c:3364:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3364:15: note: place parentheses around the assignment to silence this warning 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ^ | ( ) imap4r1.c:3364:15: note: use '==' to turn this assignment into an equality comparison 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ^ | == imap4r1.c:3367:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3367:15: note: place parentheses around the assignment to silence this warning 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ^ | ( ) imap4r1.c:3367:15: note: use '==' to turn this assignment into an equality comparison 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ^ | == imap4r1.c:3373:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3373:15: note: place parentheses around the assignment to silence this warning 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ^ | ( ) imap4r1.c:3373:15: note: use '==' to turn this assignment into an equality comparison 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ^ | == imap4r1.c:3451:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3451:15: note: place parentheses around the assignment to silence this warning 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ^ | ( ) imap4r1.c:3451:15: note: use '==' to turn this assignment into an equality comparison 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ^ | == imap4r1.c:3453:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3453:15: note: place parentheses around the assignment to silence this warning 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ^ | ( ) imap4r1.c:3453:15: note: use '==' to turn this assignment into an equality comparison 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ^ | == imap4r1.c:3554:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3554:15: note: place parentheses around the assignment to silence this warning 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ^ | ( ) imap4r1.c:3554:15: note: use '==' to turn this assignment into an equality comparison 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ^ | == imap4r1.c:3556: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] 3556 | 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:3558: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] 3558 | 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:3563: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] 3563 | if (tag && !compare_cstring (tag,reply->tag)) return reply; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3589: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] 3589 | if (!(LOCAL->reply.line = text)) { | ^ ~~~~ imap4r1.c:3595: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] 3595 | if (stream->debug) mm_dlog (LOCAL->reply.line); | ^~~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #define LOCAL ((IMAPLOCAL *) stream->local) | ^ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:3596: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] 3596 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) { | ^~~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #define LOCAL ((IMAPLOCAL *) stream->local) | ^ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3596: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] 3596 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3602: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] 3602 | if (strcmp (LOCAL->reply.tag,"+")) { | ^~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #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:3604: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] 3604 | if (!(LOCAL->reply.key = strtok_r (NIL," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3614: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] 3614 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3615: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] 3615 | LOCAL->reply.text = LOCAL->reply.key + strlen (LOCAL->reply.key); | ^~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #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:3618: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] 3618 | LOCAL->reply.key = "BAD"; /* so it barfs if not expecting continuation */ | ^ ~~~~~ imap4r1.c:3619: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] 3619 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3620: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] 3620 | LOCAL->reply.text = ""; | ^ ~~ imap4r1.c:3640: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] 3640 | LOCAL->reply.tag = LOCAL->reply.line = cpystr (tag ? tag : "*"); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3641: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] 3641 | LOCAL->reply.key = "NO"; | ^ ~~~~ imap4r1.c:3642: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] 3642 | LOCAL->reply.text = text; | ^ ~~~~ imap4r1.c:3657: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] 3657 | 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:3658: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] 3658 | imap_parse_response (stream,reply->text,NIL,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3662: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] 3662 | 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:3663: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] 3663 | imap_parse_response (stream,reply->text,WARN,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3665: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] 3665 | 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:3666: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] 3666 | imap_parse_response (stream,reply->text,ERROR,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3690: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] 3690 | msgno = strtoul (reply->key,(char **) &s,10); | ^~~~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3704: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] 3704 | s = ucase (strtok_r (reply->text," ",&r)); | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3704: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] 3704 | s = ucase (strtok_r (reply->text," ",&r)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:3705: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] 3705 | t = strtok_r (NIL,"\n",&r); /* and locate the text after it */ | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3708: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] 3708 | 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:3710: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] 3710 | 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: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,"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:3720: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] 3720 | else if (t && (!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:3720:52: 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] 3720 | else if (t && (!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:3731: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] 3731 | while ((prop = (strtok_r (t," )",&r))) && (t = strtok_r (NIL,"\n",&r))) { | ^ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3731:52: 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] 3731 | while ((prop = (strtok_r (t," )",&r))) && (t = strtok_r (NIL,"\n",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3735: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] 3735 | if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t); | ^~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:3735: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] 3735 | 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:3743: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] 3743 | mail_parse_date (elt,"01-Jan-1970 00:00:00 +0000"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:3749: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] 3749 | LOCAL->lastuid.uid = elt->private.uid = strtoul (t,(char **) &t,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3790: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] 3790 | if (!(s = strchr (md.what,']'))) { | ^ ~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3792: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] 3792 | for (s = md.what; *s && (isdigit (*s) || (*s == '.')); s++); | ^ ~~~~~~~ imap4r1.c:3794: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] 3794 | 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:3795: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] 3795 | (!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:3805: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] 3805 | 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:3805: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] 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ ~~~~~~~~~~~~~~~~~~ imap4r1.c:3805:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:3805:19: note: place parentheses around the assignment to silence this warning 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ | ( ) imap4r1.c:3805:19: note: use '==' to turn this assignment into an equality comparison 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ | == imap4r1.c:3810: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] 3810 | md.first = strtoul (s+1,(char **) &s,10) + 1; | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3853: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] 3853 | elt->rfc822_size = strtoul (t,(char **) &t,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3889: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] 3889 | 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:3896: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] 3896 | 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:3898: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] 3898 | (s = strtok_r (reply->text+1," )",&r))) | ^~~~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3898: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] 3898 | (s = strtok_r (reply->text+1," )",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3901: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] 3901 | compare_cstring (s,stream->user_flags[i]); i++); | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3907: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] 3907 | else if (!stream->user_flags[i]) stream->user_flags[i++] = cpystr (s); | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ imap4r1.c:3909: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] 3909 | while (s = strtok_r (NIL," )",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3909:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3909 | while (s = strtok_r (NIL," )",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3909:14: note: place parentheses around the assignment to silence this warning 3909 | while (s = strtok_r (NIL," )",&r)); | ^ | ( ) imap4r1.c:3909:14: note: use '==' to turn this assignment into an equality comparison 3909 | while (s = strtok_r (NIL," )",&r)); | ^ | == imap4r1.c:3910: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] 3910 | 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:3912: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] 3912 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3912: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] 3912 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3913: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] 3913 | if (i = strtoul (t,NIL,10)) { | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3913:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3913 | if (i = strtoul (t,NIL,10)) { | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:3913:13: note: place parentheses around the assignment to silence this warning 3913 | if (i = strtoul (t,NIL,10)) { | ^ | ( ) imap4r1.c:3913:13: note: use '==' to turn this assignment into an equality comparison 3913 | if (i = strtoul (t,NIL,10)) { | ^ | == imap4r1.c:3922: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] 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3922:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3922 | } while (t = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3922:18: note: place parentheses around the assignment to silence this warning 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:3922:18: note: use '==' to turn this assignment into an equality comparison 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:3924: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] 3924 | 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:3932: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] 3932 | if (reply->text && (t = strtok_r (reply->text," ",&r))) { | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3932: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] 3932 | if (reply->text && (t = strtok_r (reply->text," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3933: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] 3933 | 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:3936: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] 3936 | while ((t = strtok_r (NIL," ",&r)) && (LOCAL->sortsize < stream->nmsgs)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3942: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] 3942 | 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:3946:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3946 | if (s = reply->text) { | ~~^~~~~~~~~~~~~ imap4r1.c:3946:11: note: place parentheses around the assignment to silence this warning 3946 | if (s = reply->text) { | ^ | ( ) imap4r1.c:3946:11: note: use '==' to turn this assignment into an equality comparison 3946 | if (s = reply->text) { | ^ | == imap4r1.c:3957: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] 3957 | 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:3961: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] 3961 | (*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:3961: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] 3961 | (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) && | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:3967: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] 3967 | 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:3967: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] 3967 | while (*txt && (s = strchr (txt,' '))) { | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:3970: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] 3970 | i = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3971: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] 3971 | if (!compare_cstring (txt,"MESSAGES")) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3975: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] 3975 | else if (!compare_cstring (txt,"RECENT")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3979: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] 3979 | else if (!compare_cstring (txt,"UNSEEN")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3983: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] 3983 | else if (!compare_cstring (txt,"UIDNEXT")) { | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3987: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] 3987 | else if (!compare_cstring (txt,"UIDVALIDITY")) { | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3996: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] 3996 | 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:4004: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] 4004 | 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: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] 4004 | 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:4006: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] 4006 | (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:4006: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] 4006 | (s = strchr (reply->text,')')) && (s[1] == ' ')) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010: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] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^~~~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:4010: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] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010:11: note: place parentheses around the assignment to silence this warning 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ | ( ) imap4r1.c:4010:11: note: use '==' to turn this assignment into an equality comparison 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ | == imap4r1.c:4011: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] 4011 | if (!compare_cstring (t,"\\NoInferiors")) i |= LATT_NOINFERIORS; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"\\NoSelect")) i |= LATT_NOSELECT; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4013: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] 4013 | else if (!compare_cstring (t,"\\Marked")) i |= LATT_MARKED; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4014: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] 4014 | else if (!compare_cstring (t,"\\Unmarked")) i |= LATT_UNMARKED; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4015: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] 4015 | else if (!compare_cstring (t,"\\HasChildren")) i |= LATT_HASCHILDREN; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4016: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] 4016 | else if (!compare_cstring (t,"\\HasNoChildren")) i |= LATT_HASNOCHILDREN; | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4019: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] 4019 | while (t = strtok_r (NIL," ",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4019:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4019 | while (t = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4019:14: note: place parentheses around the assignment to silence this warning 4019 | while (t = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:4019:14: note: use '==' to turn this assignment into an equality comparison 4019 | while (t = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:4030:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4030:11: note: place parentheses around the assignment to silence this warning 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ^ | ( ) imap4r1.c:4030:11: note: use '==' to turn this assignment into an equality comparison 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ^ | == imap4r1.c:4033: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] 4033 | sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t); | ^ ~~~~~~~~~~ imap4r1.c:4033: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] 4033 | 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:4036: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] 4036 | if (reply->key[1] == 'S') mm_lsub (stream,delimiter,s,i); | ^ ./mail.h:1603:54: note: passing argument to parameter 'name' here 1603 | void mm_lsub (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4037: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] 4037 | else mm_list (stream,delimiter,s,i); | ^ ./mail.h:1602:54: note: passing argument to parameter 'name' here 1602 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4041: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] 4041 | 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:4048:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4048 | if (s = reply->text) { /* parse namespace results */ | ~~^~~~~~~~~~~~~ imap4r1.c:4048:11: note: place parentheses around the assignment to silence this warning 4048 | if (s = reply->text) { /* parse namespace results */ | ^ | ( ) imap4r1.c:4048:11: note: use '==' to turn this assignment into an equality comparison 4048 | if (s = reply->text) { /* parse namespace results */ | ^ | == imap4r1.c:4064: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] 4064 | 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:4070: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] 4070 | do if ((ac->identifier = imap_parse_astring (stream,&s,reply,NIL)) && | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4072: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] 4072 | ac->rights = imap_parse_astring (stream,&s,reply,NIL); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4081: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] 4081 | else if (ar) (*ar) (stream,t,al); | ^ imap4r1.c:4085: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] 4085 | else if (ar) (*ar) (stream,t,NIL); | ^ imap4r1.c:4089: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] 4089 | 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:4093: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] 4093 | if (s && (*s++ == ' ') && (id = imap_parse_astring (stream,&s,reply,NIL))){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4095: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] 4095 | (r = imap_parse_astring (stream,&s,reply,NIL))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4109: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] 4109 | else if (lr) (*lr) (stream,t,id,r,rl); | ^ imap4r1.c:4114: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] 4114 | else if (lr) (*lr) (stream,t,id,r,NIL); | ^ imap4r1.c:4132: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] 4132 | 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:4136: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] 4136 | if (s && (*s++ == ' ') && (r = imap_parse_astring (stream,&s,reply,NIL))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4142: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] 4142 | else if (mr) (*mr) (stream,t,r); | ^ imap4r1.c:4154: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] 4154 | 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:4165: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] 4165 | if ((qc->name = imap_parse_astring (stream,&s,reply,NIL)) && s && | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4167: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] 4167 | if (isdigit (*s)) qc->usage = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4168: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] 4168 | 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:4168: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] 4168 | else if (t = strchr (s,' ')) t = s; | ^ ~~~~~~~~~~~~~~ imap4r1.c:4168:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4168 | else if (t = strchr (s,' ')) t = s; | ~~^~~~~~~~~~~~~~~~ imap4r1.c:4168:15: note: place parentheses around the assignment to silence this warning 4168 | else if (t = strchr (s,' ')) t = s; | ^ | ( ) imap4r1.c:4168:15: note: use '==' to turn this assignment into an equality comparison 4168 | else if (t = strchr (s,' ')) t = s; | ^ | == imap4r1.c:4170: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] 4170 | if (isdigit (*s)) qc->limit = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4171: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] 4171 | else if (t = strpbrk (s," )")) t = s; | ^ /usr/include/string.h:114:27: note: passing argument to parameter here 114 | char *strpbrk(const char *, const char *) __pure; | ^ imap4r1.c:4171: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] 4171 | else if (t = strpbrk (s," )")) t = s; | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:4171:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4171 | else if (t = strpbrk (s," )")) t = s; | ~~^~~~~~~~~~~~~~~~~~ imap4r1.c:4171:17: note: place parentheses around the assignment to silence this warning 4171 | else if (t = strpbrk (s," )")) t = s; | ^ | ( ) imap4r1.c:4171:17: note: use '==' to turn this assignment into an equality comparison 4171 | else if (t = strpbrk (s," )")) t = s; | ^ | == imap4r1.c:4176: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] 4176 | if (qt) (*qt) (stream,t,ql); | ^ imap4r1.c:4195: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] 4195 | 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:4210: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] 4210 | else if (qr) (*qr) (stream,t,rl); | ^ 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,"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:4221: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] 4221 | 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: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,NIL,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | 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,"NO")) | ^~~~~~~~~~ /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,WARN,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | 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,"BAD")) | ^~~~~~~~~~ /usr/include/string.h:85:25: note: passing argument to parameter here 85 | int strcmp(const char *, const char *) __pure; | ^ imap4r1.c:4226: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] 4226 | imap_parse_response (stream,reply->text,ERROR,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:4227: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] 4227 | 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:4229: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] 4229 | imap_parse_response (stream,reply->text,BYE,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ 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,"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:4232: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] 4232 | imap_parse_capabilities (stream,reply->text); | ^~~~~~~~~~~ imap4r1.c:262:56: note: passing argument to parameter 't' here 262 | void imap_parse_capabilities (MAILSTREAM *stream,char *t); | ^ imap4r1.c:4233: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] 4233 | 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:4235: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] 4235 | ((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:4236: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] 4236 | sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text); | ^ ~~~~~~~~~~ imap4r1.c:4236: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] 4236 | 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:4238: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] 4238 | mm_list (stream,NIL,t,NIL); | ^ ./mail.h:1602:54: note: passing argument to parameter 'name' here 1602 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4268:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4268:11: note: place parentheses around the assignment to silence this warning 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ^ | ( ) imap4r1.c:4268:11: note: use '==' to turn this assignment into an equality comparison 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ^ | == imap4r1.c:4271: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] 4271 | if (!compare_cstring (t,"CAPABILITY")) imap_parse_capabilities(stream,s); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4271: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] 4271 | if (!compare_cstring (t,"CAPABILITY")) imap_parse_capabilities(stream,s); | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4272: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] 4272 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4272: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] 4272 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') && | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4278:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4278 | if (s = strtok_r (s+1," ",&r)) do { | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4278:8: note: place parentheses around the assignment to silence this warning 4278 | if (s = strtok_r (s+1," ",&r)) do { | ^ | ( ) imap4r1.c:4278:8: note: use '==' to turn this assignment into an equality comparison 4278 | if (s = strtok_r (s+1," ",&r)) do { | ^ | == imap4r1.c:4280: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] 4280 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4280: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] 4280 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4281: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] 4281 | else if (!compare_cstring (s,"\\Deleted")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4281: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] 4281 | else if (!compare_cstring (s,"\\Deleted")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4283: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] 4283 | else if (!compare_cstring (s,"\\Flagged")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4283: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] 4283 | else if (!compare_cstring (s,"\\Flagged")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4285: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] 4285 | else if (!compare_cstring (s,"\\Answered")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4285: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] 4285 | else if (!compare_cstring (s,"\\Answered")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4287: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] 4287 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4287: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] 4287 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4292:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4292 | while (s = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4292:11: note: place parentheses around the assignment to silence this warning 4292 | while (s = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:4292:11: note: use '==' to turn this assignment into an equality comparison 4292 | while (s = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:4295: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] 4295 | else if (!compare_cstring (t,"UIDVALIDITY") && (j = strtoul (s,NIL,10))){ | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4295: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] 4295 | else if (!compare_cstring (t,"UIDVALIDITY") && (j = strtoul (s,NIL,10))){ | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4302:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4302:14: note: place parentheses around the assignment to silence this warning 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ^ | ( ) imap4r1.c:4302:14: note: use '==' to turn this assignment into an equality comparison 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ^ | == imap4r1.c:4306: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] 4306 | else if (!compare_cstring (t,"UIDNEXT")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4306: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] 4306 | else if (!compare_cstring (t,"UIDNEXT")) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4309: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] 4309 | !compare_cstring (t,"COPYUID") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4309: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] 4309 | !compare_cstring (t,"COPYUID") && | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4315: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] 4315 | else if (j && !compare_cstring (t,"APPENDUID") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4315: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] 4315 | else if (j && !compare_cstring (t,"APPENDUID") && | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4322: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] 4322 | if (!compare_cstring (t,"REFERRAL")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4322: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] 4322 | if (!compare_cstring (t,"REFERRAL")) | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4329: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] 4329 | if (!compare_cstring (t,"UIDNOTSTICKY")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4329: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] 4329 | if (!compare_cstring (t,"UIDNOTSTICKY")) { | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"READ-ONLY")) stream->rdonly = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4333: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] 4333 | else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4334: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] 4334 | else if (!compare_cstring (t,"READ-WRITE")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4334: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] 4334 | else if (!compare_cstring (t,"READ-WRITE")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4336: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] 4336 | else if (!compare_cstring (t,"PARSE") && !errflg) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4336: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] 4336 | else if (!compare_cstring (t,"PARSE") && !errflg) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4378: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] 4378 | nam->name = imap_parse_string (stream,txtptr,reply,NIL,NIL,NIL); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4403: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] 4403 | if (!(par->attribute = imap_parse_string (stream,txtptr,reply,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4404 | NIL,NIL))) { | ~~~~~~~~ imap4r1.c:4415: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] 4415 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4416 | NIL,LONGT))) { | ~~~~~~~~~~ imap4r1.c:4488: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] 4488 | 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:4490: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] 4490 | strtoul (*txtptr,(char **) txtptr,10))) { | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4575: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] 4575 | (*env)->subject = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4582: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] 4582 | (*env)->in_reply_to = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4583 | LONGT); | ~~~~~~ imap4r1.c:4584: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] 4584 | (*env)->message_id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4681: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] 4681 | adr->personal = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4682: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] 4682 | adr->adl = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4683: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] 4683 | adr->mailbox = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4684: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] 4684 | adr->host = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4781: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] 4781 | while (*(flag = ++*txtptr) == ' '); | ^ ~~~~~~~~~ imap4r1.c:4789: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] 4789 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4789: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] 4789 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"\\Deleted")) elt->deleted = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4790: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] 4790 | else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4791: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] 4791 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4791: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] 4791 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4792: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] 4792 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4792: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] 4792 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4793: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] 4793 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4793: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] 4793 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4794: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] 4794 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4794: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] 4794 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4822: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] 4822 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i); | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4822: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] 4822 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i); | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4853:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ~~^~~~~~~~~~~~~ imap4r1.c:4853:11: note: place parentheses around the assignment to silence this warning 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ^ | ( ) imap4r1.c:4853:11: note: use '==' to turn this assignment into an equality comparison 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ^ | == imap4r1.c:4855: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] 4855 | 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:4855: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] 4855 | ret = strncpy ((char *) fs_get (i + 1),s,i); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4896: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] 4896 | if (c) st = ++*txtptr; /* remember start of string */ | ^ ~~~~~~~~~ imap4r1.c:4951: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] 4951 | else if ((i = strtoul (*txtptr,(char **) txtptr,10)) > MAXSERVERLIT) { | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4973:29: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4973:29: note: place parentheses around the assignment to silence this warning 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ^ | ( ) imap4r1.c:4973:29: note: use '==' to turn this assignment into an equality comparison 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ^ | == imap4r1.c:4981:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4981:28: note: place parentheses around the assignment to silence this warning 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ^ | ( ) imap4r1.c:4981:28: note: use '==' to turn this assignment into an equality comparison 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ^ | == imap4r1.c:4983: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] 4983 | if (!(reply->line = net_getline (LOCAL->netstream))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4984: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] 4984 | reply->line = cpystr (""); | ^ ~~~~~~~~~~~ imap4r1.c:4985: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] 4985 | if (stream->debug) mm_dlog (reply->line); | ^~~~~~~~~~~ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:5053: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] 5053 | if (!(b = mail_body (stream,msgno,seg))) { | ^~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ imap4r1.c:5131: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] 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5131:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5131:25: note: place parentheses around the assignment to silence this warning 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | ( ) imap4r1.c:5131:25: note: use '==' to turn this assignment into an equality comparison 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | == imap4r1.c:5132: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] 5132 | ucase (body->subtype); | ^~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5150: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] 5150 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171: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] 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171:13: note: place parentheses around the assignment to silence this warning 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | ( ) imap4r1.c:5171:13: note: use '==' to turn this assignment into an equality comparison 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | == imap4r1.c:5172: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] 5172 | ucase (s); /* application always gets uppercase form */ | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5184: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] 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5184:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5184:25: note: place parentheses around the assignment to silence this warning 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | ( ) imap4r1.c:5184:25: note: use '==' to turn this assignment into an equality comparison 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | == imap4r1.c:5185: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] 5185 | ucase (body->subtype); /* parse subtype */ | ^~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5192: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] 5192 | body->id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5193: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] 5193 | body->description = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5194 | LONGT); | ~~~~~~ imap4r1.c:5195: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] 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5195:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5195:13: note: place parentheses around the assignment to silence this warning 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | ( ) imap4r1.c:5195:13: note: use '==' to turn this assignment into an equality comparison 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | == imap4r1.c:5196: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] 5196 | ucase (s); /* application always gets uppercase form */ | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5212: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] 5212 | body->size.bytes = strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5233: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] 5233 | body->size.lines = strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5240: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] 5240 | body->md5 = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5253: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] 5253 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5300: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] 5300 | if(!(par->attribute=imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5301 | LONGT))) { | ~~~~~~ imap4r1.c:5306: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] 5306 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT))){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5332: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] 5332 | ((*(s = *txtptr) == 'I') || (*s == 'i')) && | ^ ~~~~~~~ imap4r1.c:5356: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] 5356 | body->disposition.type = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5357 | LONGT); | ~~~~~~ imap4r1.c:5399: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] 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5399:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5399:14: note: place parentheses around the assignment to silence this warning 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ | ( ) imap4r1.c:5399:14: note: use '==' to turn this assignment into an equality comparison 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ | == imap4r1.c:5468: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] 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5468:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5468:11: note: place parentheses around the assignment to silence this warning 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^ | ( ) imap4r1.c:5468:11: note: use '==' to turn this assignment into an equality comparison 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^ | == imap4r1.c:5473: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] 5473 | if (!(reply->line = net_getline (LOCAL->netstream))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5474: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] 5474 | reply->line = cpystr (""); | ^ ~~~~~~~~~~~ imap4r1.c:5475: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] 5475 | if (stream->debug) mm_dlog (reply->line); | ^~~~~~~~~~~ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:5480: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] 5480 | strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5504:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5504:13: note: place parentheses around the assignment to silence this warning 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | ( ) imap4r1.c:5504:13: note: use '==' to turn this assignment into an equality comparison 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | == imap4r1.c:5504:46: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ~~~^~~~~ imap4r1.c:5504:46: note: place parentheses around the assignment to silence this warning 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | ( ) imap4r1.c:5504:46: note: use '==' to turn this assignment into an equality comparison 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | == imap4r1.c:5514: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] 5514 | if (!compare_cstring (t,"IMAP4")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5514: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] 5514 | if (!compare_cstring (t,"IMAP4")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5516: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] 5516 | else if (!compare_cstring (t,"IMAP4rev1")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5516: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] 5516 | else if (!compare_cstring (t,"IMAP4rev1")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5518: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] 5518 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5518: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] 5518 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5519: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] 5519 | else if (!compare_cstring (t,"IMAP2bis")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5519: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] 5519 | else if (!compare_cstring (t,"IMAP2bis")) | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5521: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] 5521 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5521: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] 5521 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5522: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] 5522 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5522: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] 5522 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5523: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] 5523 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5523: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] 5523 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5524: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] 5524 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5524: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] 5524 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5525: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] 5525 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5525: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] 5525 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T; | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5526: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] 5526 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5526: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] 5526 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T; | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5527: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] 5527 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5527: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] 5527 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5528: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] 5528 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5528: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] 5528 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5529: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] 5529 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5529: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] 5529 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5530: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] 5530 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5530: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] 5530 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5531: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] 5531 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5531: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] 5531 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T; | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5532: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] 5532 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5532: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] 5532 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5533: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] 5533 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5533: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] 5533 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5534: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] 5534 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5534: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] 5534 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5535: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] 5535 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5535: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] 5535 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5536: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] 5536 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5536: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] 5536 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5537: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] 5537 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5537: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] 5537 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5538: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] 5538 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5538: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] 5538 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5539: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] 5539 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5539: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] 5539 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5540: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] 5540 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5540: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] 5540 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5541: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] 5541 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5541: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] 5541 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5547:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5547 | else if (s = strchr (t,'=')) { | ~~^~~~~~~~~~~~~~~~ imap4r1.c:5547:16: note: place parentheses around the assignment to silence this warning 5547 | else if (s = strchr (t,'=')) { | ^ | ( ) imap4r1.c:5547:16: note: use '==' to turn this assignment into an equality comparison 5547 | else if (s = strchr (t,'=')) { | ^ | == imap4r1.c:5549: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] 5549 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5549: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] 5549 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5556: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] 5556 | else if (!compare_cstring (t,"AUTH")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5556: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] 5556 | else if (!compare_cstring (t,"AUTH")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5559: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] 5559 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5559: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] 5559 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5636:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ~~^~~~~~~~~~~~~~~~~~ imap4r1.c:5636:24: note: place parentheses around the assignment to silence this warning 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ^ | ( ) imap4r1.c:5636:24: note: use '==' to turn this assignment into an equality comparison 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ^ | == 423 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` pop3.c pop3.c:177: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] 177 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL; | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:177: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] 177 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:229: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] 229 | (pop3_valid (ref) && pmatch ("INBOX",pat)) : | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:229: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] 229 | (pop3_valid (ref) && pmatch ("INBOX",pat)) : | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:230: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] 230 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp))) | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:230: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] 230 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp))) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:245: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] 245 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:245: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] 245 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) { | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:250: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] 250 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:250: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] 250 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) { | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:276:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ pop3.c:276:9: note: place parentheses around the assignment to silence this warning 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ | ( ) pop3.c:276:9: note: use '==' to turn this assignment into an equality comparison 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ | == pop3.c:276: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] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:276:66: 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] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 279 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ pop3.c:279:12: note: place parentheses around the assignment to silence this warning 279 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) pop3.c:279:12: note: use '==' to turn this assignment into an equality comparison 279 | while (s = sm_read (tmp,&sdb)); | ^ | == pop3.c:427:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ~~~~~~~~~~~~~^~~~~~~~~~ pop3.c:427:24: note: place parentheses around the assignment to silence this warning 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ^ | ( ) pop3.c:427:24: note: use '==' to turn this assignment into an equality comparison 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ^ | == pop3.c:497:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ~~~~~^~~~~~~~~~~~~~~~ pop3.c:497:14: note: place parentheses around the assignment to silence this warning 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | ( ) pop3.c:497:14: note: use '==' to turn this assignment into an equality comparison 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | == pop3.c:498: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] 498 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:498: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] 498 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:499: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] 499 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:499: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] 499 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:500: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] 500 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:500: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] 500 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"TOP")) LOCAL->cap.top = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:501: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] 501 | else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"UIDL")) LOCAL->cap.uidl = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:502: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] 502 | else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"USER")) LOCAL->cap.user = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:503: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] 503 | else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"IMPLEMENTATION") && args) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:504: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] 504 | else if (!compare_cstring (t,"IMPLEMENTATION") && args) | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"EXPIRE") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:506: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] 506 | else if (!compare_cstring (t,"EXPIRE") && args) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:508:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ~~^~~~~~~~~~~~~~~~~~ pop3.c:508:13: note: place parentheses around the assignment to silence this warning 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | ( ) pop3.c:508:13: note: use '==' to turn this assignment into an equality comparison 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | == pop3.c:514: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] 514 | (!compare_cstring (args,"NEVER")) ? 65535 : | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:514: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] 514 | (!compare_cstring (args,"NEVER")) ? 65535 : | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:515: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] 515 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args)); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:515: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] 515 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args)); | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:517: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] 517 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:517: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] 517 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) { | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:519:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ~~^~~~~~~~~~~~~~~~~~ pop3.c:519:13: note: place parentheses around the assignment to silence this warning 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | ( ) pop3.c:519:13: note: use '==' to turn this assignment into an equality comparison 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | == pop3.c:525: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] 525 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ? | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:525: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] 525 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ? | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:528: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] 528 | else if (!compare_cstring (t,"SASL") && args) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:528: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] 528 | else if (!compare_cstring (t,"SASL") && args) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:782: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] 782 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:783: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] 783 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:841:48: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ pop3.c:841:48: note: place parentheses around the assignment to silence this warning 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ^ | ( ) pop3.c:841:48: note: use '==' to turn this assignment into an equality comparison 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ^ | == pop3.c:946: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] 946 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:947: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] 947 | mail_sequence (stream,sequence)) : | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:945:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 945 | if (ret = sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 946 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 947 | mail_sequence (stream,sequence)) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 948 | LONGT) { /* build selected sequence if needed */ | ~~~~~ pop3.c:945:11: note: place parentheses around the assignment to silence this warning 945 | if (ret = sequence ? ((options & EX_UID) ? | ^ | ( 946 | mail_uid_sequence (stream,sequence) : 947 | mail_sequence (stream,sequence)) : 948 | LONGT) { /* build selected sequence if needed */ | | ) pop3.c:945:11: note: use '==' to turn this assignment into an equality comparison 945 | if (ret = sequence ? ((options & EX_UID) ? | ^ | == 50 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` unix.c 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1706:34: note: passing argument to parameter 'text' here 1706 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:114:27: note: passing argument to parameter here 114 | 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:107:40: note: passing argument to parameter 's1' here 107 | 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:114:27: note: passing argument to parameter here 114 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 105 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mbx.c 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:84:27: note: passing argument to parameter 'string' here 84 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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)) { | ^ | == 103 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mmdf.c 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1706:34: note: passing argument to parameter 'text' here 1706 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:114:27: note: passing argument to parameter here 114 | 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:107:40: note: passing argument to parameter 's1' here 107 | 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:114:27: note: passing argument to parameter here 114 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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)) { | ^ | == 96 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` tenex.c 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 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)); | ^ ~~~~~~~~~~ 63 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mtx.c 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 57 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -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:408:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 408 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ 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:455: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] 455 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:456: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] 456 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:473: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] 473 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:473: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] 473 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:494: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] 494 | 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:499: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] 499 | ((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:503: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] 503 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ news.c:568:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~~~~~~~~~~^~~~~~~~~ news.c:568:21: note: remove extraneous parentheses around the comparison to silence this warning 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~ ^ ~ news.c:568:21: note: use '=' to turn this equality comparison into an assignment 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ^~ | = news.c:588:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~~~~~~~~~~^~~~~~~~~ news.c:588:21: note: remove extraneous parentheses around the comparison to silence this warning 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~ ^ ~ news.c:588:21: note: use '=' to turn this equality comparison into an assignment 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ^~ | = 21 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` phile.c phile.c:292:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ~~^~~~~~~~~~~~~~~~ phile.c:292:9: note: place parentheses around the assignment to silence this warning 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ^ | ( ) phile.c:292:9: note: use '==' to turn this assignment into an equality comparison 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ^ | == phile.c:305:20: 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] 305 | LOCAL->env->date = cpystr (tmp); | ^ ~~~~~~~~~~~~ phile.c:309:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~ phile.c:309:10: note: place parentheses around the assignment to silence this warning 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ^ | ( ) phile.c:309:10: note: use '==' to turn this assignment into an equality comparison 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ^ | == phile.c:321:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ phile.c:321:9: note: place parentheses around the assignment to silence this warning 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ^ | ( ) phile.c:321:9: note: use '==' to turn this assignment into an equality comparison 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ^ | == phile.c:327: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] 327 | buf->size = strcrlfcpy (&buf->data,&m,s,buf->size); | ^ ./nl.h:33:21: note: passing argument to parameter 'src' here 33 | unsigned char *src,unsigned long srcl); | ^ 5 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mh.c mh.c:190: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] 190 | if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) || | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:190:49: 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] 190 | if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:191: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] 191 | !compare_cstring (name,MHINBOX) || | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:191:30: 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] 191 | !compare_cstring (name,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:195: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] 195 | ret = (synonly && compare_cstring (name,"INBOX")) ? | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:195: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] 195 | ret = (synonly && compare_cstring (name,"INBOX")) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:254:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 254 | if (v = strpbrk (s," \t")) { | ~~^~~~~~~~~~~~~~~~~~~ mh.c:254:8: note: place parentheses around the assignment to silence this warning 254 | if (v = strpbrk (s," \t")) { | ^ | ( ) mh.c:254:8: note: use '==' to turn this assignment into an equality comparison 254 | if (v = strpbrk (s," \t")) { | ^ | == mh.c:256: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] 256 | if (!compare_cstring (s,"Path:")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:256:28: 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] 256 | if (!compare_cstring (s,"Path:")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:327:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mh.c:327:14: note: place parentheses around the assignment to silence this warning 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mh.c:327:14: note: use '==' to turn this assignment into an equality comparison 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mh.c:346:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 346 | if (s = strchr (test,'/')) *++s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ mh.c:346:13: note: place parentheses around the assignment to silence this warning 346 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | ( ) mh.c:346:13: note: use '==' to turn this assignment into an equality comparison 346 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | == mh.c:359:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 359 | if (s = strpbrk (test,"%*")) { | ~~^~~~~~~~~~~~~~~~~~~~~ mh.c:359:13: note: place parentheses around the assignment to silence this warning 359 | if (s = strpbrk (test,"%*")) { | ^ | ( ) mh.c:359:13: note: use '==' to turn this assignment into an equality comparison 359 | if (s = strpbrk (test,"%*")) { | ^ | == mh.c:366:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 366 | if (s = strrchr (file,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~ mh.c:366:13: note: place parentheses around the assignment to silence this warning 366 | if (s = strrchr (file,'/')) { | ^ | ( ) mh.c:366:13: note: use '==' to turn this assignment into an equality comparison 366 | if (s = strrchr (file,'/')) { | ^ | == mh.c:374:27: 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] 374 | if (!compare_cstring (test,MHINBOX)) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:374:32: 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] 374 | if (!compare_cstring (test,MHINBOX)) | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:403: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] 403 | do 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); | ^ mh.c:403:27: 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] 403 | do 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); | ^ mh.c:404:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ~~^~~~~~~~~~~~~~~~~~~~ mh.c:404:14: note: place parentheses around the assignment to silence this warning 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ^ | ( ) mh.c:404:14: note: use '==' to turn this assignment into an equality comparison 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ^ | == mh.c:428:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 428 | if (dp = opendir (curdir)) { /* open directory */ | ~~~^~~~~~~~~~~~~~~~~~ mh.c:428:10: note: place parentheses around the assignment to silence this warning 428 | if (dp = opendir (curdir)) { /* open directory */ | ^ | ( ) mh.c:428:10: note: use '==' to turn this assignment into an equality comparison 428 | if (dp = opendir (curdir)) { /* open directory */ | ^ | == mh.c:429:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ~~^~~~~~~~~~~~~~ mh.c:429:14: note: place parentheses around the assignment to silence this warning 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ^ | ( ) mh.c:429:14: note: use '==' to turn this assignment into an equality comparison 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ^ | == mh.c:435: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] 435 | if (pmatch_full (name,pat,'/')) 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); | ^ mh.c:435: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] 435 | if (pmatch_full (name,pat,'/')) 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); | ^ mh.c:437:16: 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] 437 | if (dmatch (name,pat,'/') && | ^~~~ ./env.h:30:29: note: passing argument to parameter 's' here 30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | ^ mh.c:437: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] 437 | if (dmatch (name,pat,'/') && | ^~~ ./env.h:30:46: note: passing argument to parameter 'pat' here 30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | ^ mh.c:513:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 513 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mh.c:513:12: note: place parentheses around the assignment to silence this warning 513 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mh.c:513:12: note: use '==' to turn this assignment into an equality comparison 513 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mh.c:516:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ~~^~~~~~~~~~~~~~~~ mh.c:516:14: note: place parentheses around the assignment to silence this warning 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ^ | ( ) mh.c:516:14: note: use '==' to turn this assignment into an equality comparison 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ^ | == mh.c:553:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mh.c:553:11: note: place parentheses around the assignment to silence this warning 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ^ | ( ) mh.c:553:11: note: use '==' to turn this assignment into an equality comparison 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ^ | == mh.c:587: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] 587 | (!compare_cstring (stream->mailbox,MHINBOX) || | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:587:40: 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] 587 | (!compare_cstring (stream->mailbox,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:592: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] 592 | !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL; | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:592:40: 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] 592 | !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:638: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] 638 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:639: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] 639 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:662: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] 662 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:667: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] 667 | ((fd = open (LOCAL->buf,O_RDONLY,NIL)) >= 0)) { | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:671: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] 671 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mh.c:737:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 737 | if ((CHR (&bs) == '\012')) { | ~~~~~~~~~~^~~~~~~~~ mh.c:737:21: note: remove extraneous parentheses around the comparison to silence this warning 737 | if ((CHR (&bs) == '\012')) { | ~ ^ ~ mh.c:737:21: note: use '=' to turn this equality comparison into an assignment 737 | if ((CHR (&bs) == '\012')) { | ^~ | = mh.c:763:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 763 | if ((CHR (&bs) == '\012')) { | ~~~~~~~~~~^~~~~~~~~ mh.c:763:21: note: remove extraneous parentheses around the comparison to silence this warning 763 | if ((CHR (&bs) == '\012')) { | ~ ^ ~ mh.c:763:21: note: use '=' to turn this equality comparison into an assignment 763 | if ((CHR (&bs) == '\012')) { | ^~ | = mh.c:886:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 886 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mh.c:886:11: note: place parentheses around the assignment to silence this warning 886 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mh.c:886:11: note: use '==' to turn this assignment into an equality comparison 886 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mh.c:899:11: 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] 899 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,++old); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:902:19: 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] 902 | if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL, | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:926:16: 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] 926 | mh_setdate (LOCAL->buf,elt); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ mh.c:107:24: note: passing argument to parameter 'file' here 107 | void mh_setdate (char *file,MESSAGECACHE *elt); | ^ mh.c:934:14: 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] 934 | unlink (LOCAL->buf);/* flush this file */ | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mh.c:981: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] 981 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:982: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] 982 | mail_sequence (stream,sequence)) : LONGT) { | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:980:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 980 | if (ret = sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 981 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 982 | mail_sequence (stream,sequence)) : LONGT) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mh.c:980:11: note: place parentheses around the assignment to silence this warning 980 | if (ret = sequence ? ((options & EX_UID) ? | ^ | ( 981 | mail_uid_sequence (stream,sequence) : 982 | mail_sequence (stream,sequence)) : LONGT) { | | ) mh.c:980:11: note: use '==' to turn this assignment into an equality comparison 980 | if (ret = sequence ? ((options & EX_UID) ? | ^ | == mh.c:987:11: 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] 987 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:988:14: 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] 988 | if (unlink (LOCAL->buf)) {/* try to delete the message */ | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mh.c:989:13: 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] 989 | sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i, | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:991: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] 991 | mm_log (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mh.c:1009:16: 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] 1009 | sprintf (LOCAL->buf,"Expunged %lu messages",n); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:1010:15: 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] 1010 | mm_log (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mh.c:1041: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] 1041 | if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:1042: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] 1042 | mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:1045:11: 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] 1045 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:1046:18: 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] 1046 | if ((fd = open (LOCAL->buf,O_RDONLY,NIL)) < 0) return NIL; | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:1058:10: 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] 1058 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mh.c:1106: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] 1106 | if (!((!compare_cstring (mailbox,MHINBOX) || | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1106:38: 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] 1106 | if (!((!compare_cstring (mailbox,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1107: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] 1107 | !compare_cstring (mailbox,"INBOX")) && | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1107: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] 1107 | !compare_cstring (mailbox,"INBOX")) && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1135:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1135 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mh.c:1135:9: note: place parentheses around the assignment to silence this warning 1135 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mh.c:1135:9: note: use '==' to turn this assignment into an equality comparison 1135 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mh.c:1146: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] 1146 | if (!mail_parse_date (&elt,date)) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mh.c:1197:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1197 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ mh.c:1198:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mh.c:1198:12: note: place parentheses around the assignment to silence this warning 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mh.c:1198:12: note: use '==' to turn this assignment into an equality comparison 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mh.c:1227: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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227:30: 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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227: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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227:65: 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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1260:34: warning: expression result unused [-Wunused-value] 1260 | for (i = 0, s = pattern; *s; *s++) if ((*s == '*') || (*s == '%')) ++i; | ^~~~ 70 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mx.c mx.c:186: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] 186 | else if (!compare_cstring (name,"INBOX")) errno = NIL; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:186: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] 186 | else if (!compare_cstring (name,"INBOX")) errno = NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:241:31: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int] 241 | if (strcmp (name,MXINDEXNAME+1)) | ~~~~~~~~~~~^~ mx.c:241:31: note: use array indexing to silence this warning 241 | if (strcmp (name,MXINDEXNAME+1)) | ^ | & [ ] mx.c:242:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ~~^~~~~~~~~ mx.c:242:14: note: place parentheses around the assignment to silence this warning 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ^ | ( ) mx.c:242:14: note: use '==' to turn this assignment into an equality comparison 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ^ | == mx.c:289:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 289 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mx.c:289:9: note: place parentheses around the assignment to silence this warning 289 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mx.c:289:9: note: use '==' to turn this assignment into an equality comparison 289 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mx.c:395:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 395 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mx.c:395:14: note: place parentheses around the assignment to silence this warning 395 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mx.c:395:14: note: use '==' to turn this assignment into an equality comparison 395 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mx.c:398:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ~~^~~~~~~~~~~~~~~~ mx.c:398:16: note: place parentheses around the assignment to silence this warning 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ^ | ( ) mx.c:398:16: note: use '==' to turn this assignment into an equality comparison 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ^ | == mx.c:439: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] 439 | if (compare_cstring (old,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:439: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] 439 | if (compare_cstring (old,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:441:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:441:13: note: place parentheses around the assignment to silence this warning 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ^ | ( ) mx.c:441:13: note: use '==' to turn this assignment into an equality comparison 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ^ | == mx.c:469:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 469 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mx.c:469:13: note: place parentheses around the assignment to silence this warning 469 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mx.c:469:13: note: use '==' to turn this assignment into an equality comparison 469 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mx.c:470:70: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int] 470 | if (lasterror || mx_rename_work (tmp,srcl,tmp1,dstl,MXINDEXNAME+1)) | ~~~~~~~~~~~^~ mx.c:470:70: note: use array indexing to silence this warning 470 | if (lasterror || mx_rename_work (tmp,srcl,tmp1,dstl,MXINDEXNAME+1)) | ^ | & [ ] mx.c:518: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] 518 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:518: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] 518 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:524: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] 524 | LOCAL->buf = (char *) fs_get (CHUNKSIZE); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:573: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] 573 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:574: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] 574 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:591: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] 591 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:593: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] 593 | if (!elt->rfc822_size && !stat (LOCAL->buf,&sbuf)) { | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/sys/stat.h:394:33: note: passing argument to parameter here 394 | int stat(const char * __restrict, struct stat * __restrict); | ^ mx.c:633: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] 633 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = elt->rfc822_size) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:648:43: 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] 648 | cpytxt (&elt->private.msg.header.text,LOCAL->buf,i); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./misc.h:85:36: note: passing argument to parameter 'text' here 85 | char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size); | ^ mx.c:649:41: 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] 649 | cpytxt (&elt->private.msg.text.text,LOCAL->buf+i,elt->rfc822_size - i); | ^~~~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./misc.h:85:36: note: passing argument to parameter 'text' here 85 | char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size); | ^ mx.c:752:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 752 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mx.c:752:11: note: place parentheses around the assignment to silence this warning 752 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mx.c:752:11: note: use '==' to turn this assignment into an equality comparison 752 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mx.c:767: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] 767 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,++old); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:770: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] 770 | if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL, | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mx.c:794: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] 794 | mx_setdate (LOCAL->buf,elt); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ mx.c:106:24: note: passing argument to parameter 'file' here 106 | void mx_setdate (char *file,MESSAGECACHE *elt); | ^ mx.c:801: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] 801 | unlink (LOCAL->buf);/* flush this file */ | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mx.c:804:8: warning: data argument not used by format string [-Wformat-extra-args] 803 | sprintf (tmp,"Message copy to MX mailbox failed: %.80s", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 804 | s,strerror (errno)); | ^ mx.c:848: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] 848 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:849: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] 849 | mail_sequence (stream,sequence)) : LONGT) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:847:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 847 | if (ret = (sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 848 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 849 | mail_sequence (stream,sequence)) : LONGT) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 850 | mx_lockindex (stream)) { /* lock the index */ | ~~~~~~~~~~~~~~~~~~~~~ mx.c:847:11: note: place parentheses around the assignment to silence this warning 847 | if (ret = (sequence ? ((options & EX_UID) ? | ^ | ( 848 | mail_uid_sequence (stream,sequence) : 849 | mail_sequence (stream,sequence)) : LONGT) && 850 | mx_lockindex (stream)) { /* lock the index */ | | ) mx.c:847:11: note: use '==' to turn this assignment into an equality comparison 847 | if (ret = (sequence ? ((options & EX_UID) ? | ^ | == mx.c:855: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] 855 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:856: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] 856 | if (unlink (LOCAL->buf)) {/* try to delete the message */ | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mx.c:857: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] 857 | sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i, | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:859: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] 859 | MM_LOG (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:875: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] 875 | sprintf (LOCAL->buf,"Expunged %lu messages",n); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:876: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] 876 | MM_LOG (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:913: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] 913 | sprintf (LOCAL->buf,"Not a MX-format mailbox: %.80s",mailbox); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:914: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] 914 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:921: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] 921 | if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:922: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] 922 | mail_sequence (stream,sequence)))); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:939:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 940 | >= 0)) { | ~~~~~ mx.c:939:10: note: place parentheses around the assignment to silence this warning 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ^ | ( 940 | >= 0)) { | | ) mx.c:939:10: note: use '==' to turn this assignment into an equality comparison 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ^ | == mx.c:944: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] 944 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mx.c:949:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 949 | if (j = elt->user_flags) do | ~~^~~~~~~~~~~~~~~~~ mx.c:949:10: note: place parentheses around the assignment to silence this warning 949 | if (j = elt->user_flags) do | ^ | ( ) mx.c:949:10: note: use '==' to turn this assignment into an equality comparison 949 | if (j = elt->user_flags) do | ^ | == mx.c:950:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:950:12: note: place parentheses around the assignment to silence this warning 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ^ | ( ) mx.c:950:12: note: use '==' to turn this assignment into an equality comparison 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ^ | == mx.c:960:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:960:12: note: place parentheses around the assignment to silence this warning 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ^ | ( ) mx.c:960:12: note: use '==' to turn this assignment into an equality comparison 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ^ | == mx.c:1003: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] 1003 | if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX"); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:1003: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] 1003 | if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:1038: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] 1038 | else if (date && !(ret = mail_parse_date (&elt,date))) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mx.c:1116:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1116 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ mx.c:1117:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mx.c:1117:12: note: place parentheses around the assignment to silence this warning 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mx.c:1117:12: note: use '==' to turn this assignment into an equality comparison 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mx.c:1188:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1188 | if (s = strchr (t = ++s,'\n')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ mx.c:1188:13: note: place parentheses around the assignment to silence this warning 1188 | if (s = strchr (t = ++s,'\n')) { | ^ | ( ) mx.c:1188:13: note: use '==' to turn this assignment into an equality comparison 1188 | if (s = strchr (t = ++s,'\n')) { | ^ | == 52 warnings generated. `cat CCTYPE` `cat SHLIBFLAGS` -c `cat CFLAGS` mix.c mix.c:334:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 334 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:334:9: note: place parentheses around the assignment to silence this warning 334 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:334:9: note: use '==' to turn this assignment into an equality comparison 334 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:478:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 478 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mix.c:478:14: note: place parentheses around the assignment to silence this warning 478 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mix.c:478:14: note: use '==' to turn this assignment into an equality comparison 478 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mix.c:481:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ~~^~~~~~~~~~~~~~~~ mix.c:481:16: note: place parentheses around the assignment to silence this warning 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ^ | ( ) mix.c:481:16: note: use '==' to turn this assignment into an equality comparison 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ^ | == mix.c:527: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] 527 | if (compare_cstring (old,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:527: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] 527 | if (compare_cstring (old,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:529:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 529 | if (s = strrchr (tmp1,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~ mix.c:529:13: note: place parentheses around the assignment to silence this warning 529 | if (s = strrchr (tmp1,'/')) { | ^ | ( ) mix.c:529:13: note: use '==' to turn this assignment into an equality comparison 529 | if (s = strrchr (tmp1,'/')) { | ^ | == mix.c:567:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 567 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:567:13: note: place parentheses around the assignment to silence this warning 567 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:567:13: note: use '==' to turn this assignment into an equality comparison 567 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:590:26: warning: passing 'const char[256]' to parameter of type 'char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 590 | return mix_dirfmttest (name->d_name); | ^~~~~~~~~~~~ mix.c:285:28: note: passing argument to parameter 'name' here 285 | long mix_dirfmttest (char *name) | ^ mix.c:606: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] 606 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:606: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] 606 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:608: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] 608 | LOCAL->buf = (char *) fs_get (CHUNKSIZE); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:611: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] 611 | mix_dir (LOCAL->buf,stream->mailbox); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:163:22: note: passing argument to parameter 'dst' here 163 | char *mix_dir (char *dst,char *name); | ^ mix.c:613: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] 613 | stream->mailbox = cpystr (LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ mix.c:616: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] 616 | ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:619: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] 619 | ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:627: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] 627 | LOCAL->index = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXINDEX)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:628: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] 628 | LOCAL->status = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXSTATUS)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:629:42: 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] 629 | LOCAL->sortcache = cpystr (mix_file (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:634:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 634 | if (silent = stream->silent) LOCAL->internal = T; | ~~~~~~~^~~~~~~~~~~~~~~~ mix.c:634:16: note: place parentheses around the assignment to silence this warning 634 | if (silent = stream->silent) LOCAL->internal = T; | ^ | ( ) mix.c:634:16: note: use '==' to turn this assignment into an equality comparison 634 | if (silent = stream->silent) LOCAL->internal = T; | ^ | == mix.c:718:46: 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] 718 | if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:730: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] 730 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = j) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:735: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] 735 | !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:105:26: note: passing argument to parameter here 105 | int strncmp(const char *, const char *, size_t) __pure; | ^ mix.c:752: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] 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:114:27: note: passing argument to parameter here 114 | char *strpbrk(const char *, const char *) __pure; | ^ mix.c:752:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:752:11: note: place parentheses around the assignment to silence this warning 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^ | ( ) mix.c:752:11: note: use '==' to turn this assignment into an equality comparison 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^ | == mix.c:781:46: 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 ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:805: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] 805 | d.chunk = LOCAL->buf; /* initial buffer chunk */ | ^ ~~~~~~~~~~ mix.c:830: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] 830 | if (((flags & ST_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:831: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] 831 | mail_sequence (stream,sequence)) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:963:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:963:16: note: place parentheses around the assignment to silence this warning 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ^ | ( ) mix.c:963:16: note: use '==' to turn this assignment into an equality comparison 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ^ | == mix.c:973: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] 973 | sprintf (LOCAL->buf,"Can't copy new mail at message: %lu",i - 1); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:974: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] 974 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:988:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 989 | (LOCAL->internal ? NIL : LONGT))) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:988:13: note: place parentheses around the assignment to silence this warning 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ^ | ( 989 | (LOCAL->internal ? NIL : LONGT))) { | | ) mix.c:988:13: note: use '==' to turn this assignment into an equality comparison 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ^ | == mix.c:1033: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] 1033 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1034: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] 1034 | mail_sequence (stream,sequence))) || stream->rdonly); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1036:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1037 | LOCAL->internal ? NIL : LONGT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1036:18: note: place parentheses around the assignment to silence this warning 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ^ | ( 1037 | LOCAL->internal ? NIL : LONGT)) { | | ) mix.c:1036:18: note: use '==' to turn this assignment into an equality comparison 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ^ | == mix.c:1085: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] 1085 | sprintf (LOCAL->buf,"Can't locate mix message file %.08lx", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1087: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] 1087 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1096: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] 1096 | else if (mix_file_data (LOCAL->buf,stream->mailbox,cur->fileno) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1098: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] 1098 | truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:447:27: note: passing argument to parameter here 447 | int truncate(const char *, __off_t); | ^ mix.c:1098: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] 1098 | truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mix.c:1099: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] 1099 | sprintf (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1102: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] 1102 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1114:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1114 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:1114:13: note: place parentheses around the assignment to silence this warning 1114 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:1114:13: note: use '==' to turn this assignment into an equality comparison 1114 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:1123:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1123:15: note: place parentheses around the assignment to silence this warning 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ^ | ( ) mix.c:1123:15: note: use '==' to turn this assignment into an equality comparison 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ^ | == mix.c:1135:26: 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] 1135 | if (nexp) sprintf (s = LOCAL->buf,"Expunged %lu messages",nexp); | ^ ~~~~~~~~~~ mix.c:1137: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] 1137 | sprintf (s=LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed); | ^~~~~~~~~~~ mix.c:1157:23: warning: passing 'const char[256]' to parameter of type 'char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1157 | if (mix_dirfmttest (name->d_name)) { | ^~~~~~~~~~~~ mix.c:285:28: note: passing argument to parameter 'name' here 285 | long mix_dirfmttest (char *name) | ^ mix.c:1158:18: warning: assigning to 'char *' from 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1158 | for (c = *(s = name->d_name + sizeof (MIXNAME) - 1); c && isxdigit (c); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1174:9: warning: initializing 'char *' with an expression of type 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1174 | char *n1 = (*d1)->d_name + sizeof (MIXNAME) - 1; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1175:9: warning: initializing 'char *' with an expression of type 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1175 | char *n2 = (*d2)->d_name + sizeof (MIXNAME) - 1; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1227: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] 1227 | mix_file_data (LOCAL->buf,stream->mailbox,burp->fileno); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1231: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] 1231 | if (stat (LOCAL->buf,&sbuf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/sys/stat.h:394:33: note: passing argument to parameter here 394 | int stat(const char * __restrict, struct stat * __restrict); | ^ mix.c:1232: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] 1232 | sprintf (LOCAL->buf,staterr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1233: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] 1233 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1236:54: 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] 1236 | else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:145:55: note: passing argument to parameter 'file' here 145 | long mix_burp_check (SEARCHSET *set,size_t size,char *file); | ^ mix.c:1240: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] 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:447:27: note: passing argument to parameter here 447 | int truncate(const char *, __off_t); | ^ mix.c:1240:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1240:20: note: place parentheses around the assignment to silence this warning 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^ | ( ) mix.c:1240:20: note: use '==' to turn this assignment into an equality comparison 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^ | == mix.c:1243: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] 1243 | sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1244: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] 1244 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1249: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] 1249 | else if (((fd = open (LOCAL->buf,O_RDWR,NIL)) < 0) || | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mix.c:1251: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] 1251 | sprintf (LOCAL->buf,"Error opening mix message file %.80s: %.80s", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1253: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] 1253 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1257: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] 1257 | sprintf (LOCAL->buf,staterr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1258: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] 1258 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1263:52: 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] 1263 | else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:145:55: note: passing argument to parameter 'file' here 145 | long mix_burp_check (SEARCHSET *set,size_t size,char *file); | ^ mix.c:1268: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] 1268 | strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:105:26: note: passing argument to parameter here 105 | int strncmp(const char *, const char *, size_t) __pure; | ^ mix.c:1269: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] 1269 | sprintf (LOCAL->buf,"Bad message token in mix message file at %lu", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1271: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] 1271 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1311: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] 1311 | sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1312: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] 1312 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1344:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1344 | } while (set = set->next); | ~~~~^~~~~~~~~~~ mix.c:1344:16: note: place parentheses around the assignment to silence this warning 1344 | } while (set = set->next); | ^ | ( ) mix.c:1344:16: note: use '==' to turn this assignment into an equality comparison 1344 | } while (set = set->next); | ^ | == mix.c:1361: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] 1361 | long ret = mix_isvalid (mailbox,LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:234:36: note: passing argument to parameter 'meta' here 234 | long mix_isvalid (char *name,char *meta) | ^ mix.c:1379:68: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign] 1379 | else if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1380: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] 1380 | mail_sequence (stream,sequence)))); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1382:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1383 | !astream->rdonly && | ~~~~~~~~~~~~~~~~~~~ 1384 | (((MIXLOCAL *) astream->local)->expok = T) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1385 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1386 | LONGT : NIL) { | ~~~~~~~~~~~ mix.c:1382:16: note: place parentheses around the assignment to silence this warning 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | ( 1383 | !astream->rdonly && 1384 | (((MIXLOCAL *) astream->local)->expok = T) && 1385 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? 1386 | LONGT : NIL) { | | ) mix.c:1382:16: note: use '==' to turn this assignment into an equality comparison 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | == mix.c:1397: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] 1397 | sprintf (local->buf,MSRFMT,MSGTOK,(unsigned long) 0,0,0,0,0,0,0,'+',0,0, | ^~~~~~~~~~ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1399: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] 1399 | hdrsize = strlen (local->buf); | ^~~~~~~~~~ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:1408:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^~~~~ mix.c:157:55: note: passing argument to parameter 'size' here 157 | FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size, | ^ mix.c:1408:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1408:14: note: place parentheses around the assignment to silence this warning 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^ | ( ) mix.c:1408:14: note: use '==' to turn this assignment into an equality comparison 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^ | == mix.c:1420: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] 1420 | if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1432: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] 1432 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mix.c:1437:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1437 | if (j = elt->user_flags) do | ~~^~~~~~~~~~~~~~~~~ mix.c:1437:12: note: place parentheses around the assignment to silence this warning 1437 | if (j = elt->user_flags) do | ^ | ( ) mix.c:1437:12: note: use '==' to turn this assignment into an equality comparison 1437 | if (j = elt->user_flags) do | ^ | == mix.c:1460:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1460 | if (ret = (mix_meta_update (astream) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1461 | mix_index_update (astream,idxf,LONGT))) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1460:10: note: place parentheses around the assignment to silence this warning 1460 | if (ret = (mix_meta_update (astream) && | ^ | ( 1461 | mix_index_update (astream,idxf,LONGT))) { | | ) mix.c:1460:10: note: use '==' to turn this assignment into an equality comparison 1460 | if (ret = (mix_meta_update (astream) && | ^ | == mix.c:1524: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] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:1524:40: 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] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:1524:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1525 | NIL : mix_create (NIL,"INBOX")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1524:13: note: place parentheses around the assignment to silence this warning 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^ | ( 1525 | NIL : mix_create (NIL,"INBOX")) | | ) mix.c:1524:13: note: use '==' to turn this assignment into an equality comparison 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^ | == mix.c:1541:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1542 | !astream->rdonly && | ~~~~~~~~~~~~~~~~~~~ 1543 | (((MIXLOCAL *) astream->local)->expok = T) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1544 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1545 | LONGT : NIL) { | ~~~~~~~~~~~ mix.c:1541:13: note: place parentheses around the assignment to silence this warning 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | ( 1542 | !astream->rdonly && 1543 | (((MIXLOCAL *) astream->local)->expok = T) && 1544 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? 1545 | LONGT : NIL) { | | ) mix.c:1541:13: note: use '==' to turn this assignment into an equality comparison 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | == mix.c:1555: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] 1555 | sprintf (local->buf,MSRFMT,MSGTOK,(unsigned long) 0,0,0,0,0,0,0,'+',0,0, | ^~~~~~~~~~ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1557: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] 1557 | hdrsize = strlen (local->buf); | ^~~~~~~~~~ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:1561:45: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^~~~~ mix.c:157:55: note: passing argument to parameter 'size' here 157 | FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size, | ^ mix.c:1561:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1561:16: note: place parentheses around the assignment to silence this warning 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^ | ( ) mix.c:1561:16: note: use '==' to turn this assignment into an equality comparison 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^ | == mix.c:1569: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] 1569 | else if (date && !(ret = mail_parse_date (&elt,date))) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mix.c:1576: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] 1576 | mail_parse_date (&elt,tmp); | ^~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mix.c:1750:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1750:14: note: place parentheses around the assignment to silence this warning 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ^ | ( ) mix.c:1750:14: note: use '==' to turn this assignment into an equality comparison 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ^ | == mix.c:1757:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1757 | if (s = strstr (t = s,"\015\012")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1757:8: note: place parentheses around the assignment to silence this warning 1757 | if (s = strstr (t = s,"\015\012")) { | ^ | ( ) mix.c:1757:8: note: use '==' to turn this assignment into an equality comparison 1757 | if (s = strstr (t = s,"\015\012")) { | ^ | == mix.c:1786:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~ mix.c:1786:14: note: place parentheses around the assignment to silence this warning 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ^ | ( ) mix.c:1786:14: note: use '==' to turn this assignment into an equality comparison 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ^ | == mix.c:1831:42: 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] 1831 | while ((s = mix_read_record (*idxf,LOCAL->buf,LOCAL->buflen,"index")) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:1973: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] 1973 | if (stat (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2055: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] 2055 | sprintf (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2058: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] 2058 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:2068:43: 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] 2068 | while ((t = s = mix_read_record (statf,LOCAL->buf,LOCAL->buflen, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:2164: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] 2164 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = sbuf.st_size) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2169: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] 2169 | (read (LOCAL->mfd,s = LOCAL->buf,sbuf.st_size) != sbuf.st_size)) | ^ ~~~~~~~~~~ mix.c:2204: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] 2204 | sprintf (LOCAL->buf,SEQFMT,LOCAL->metaseq = mix_modseq (LOCAL->metaseq)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2205: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] 2205 | sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:2205: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] 2205 | sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2207:56: 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] 2207 | for (i = 0, c = 'K', s = ss = LOCAL->buf + strlen (LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:2208: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] 2208 | (i < NUSERFLAGS) && (t = stream->user_flags[i]); ++i) { | ^ ~~~~~~~~~~~~~~~~~~~~~ mix.c:2222: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] 2222 | ret = (write (LOCAL->mfd,LOCAL->buf,i) == i) ? LONGT : NIL; | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./env_unix.h:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ mix.c:2417: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] 2417 | if ((*fd = open (mix_file_data (LOCAL->buf,stream->mailbox,LOCAL->newmsg), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2434:7: 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 | (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2458:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ~~~~~^~~~~~~~~~~~~~~~~~~~ mix.c:2458:14: note: place parentheses around the assignment to silence this warning 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ^ | ( ) mix.c:2458:14: note: use '==' to turn this assignment into an equality comparison 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ^ | == mix.c:2499:44: 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] 2499 | while ((s = t = mix_read_record (srtcf,LOCAL->buf,LOCAL->buflen, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:2522:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2522 | if (i = mail_msgno (stream,uid)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2522:15: note: place parentheses around the assignment to silence this warning 2522 | if (i = mail_msgno (stream,uid)) { | ^ | ( ) mix.c:2522:15: note: use '==' to turn this assignment into an equality comparison 2522 | if (i = mail_msgno (stream,uid)) { | ^ | == mix.c:2598: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] 2598 | LOCAL->buf = (char *) | ^ ~~~~~~~~ 2599 | fs_get ((LOCAL->buflen = reflen) + 1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2610: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] 2610 | for (s = LOCAL->buf,sl = NIL, | ^ ~~~~~~~~~~ mix.c:2618: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] 2618 | sl->text.data = cpystr (s); | ^ ~~~~~~~~~~ mix.c:2701:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2701 | if (sl = s->references) /* count length of references */ | ~~~^~~~~~~~~~~~~~~ mix.c:2701:9: note: place parentheses around the assignment to silence this warning 2701 | if (sl = s->references) /* count length of references */ | ^ | ( ) mix.c:2701:9: note: use '==' to turn this assignment into an equality comparison 2701 | if (sl = s->references) /* count length of references */ | ^ | == mix.c:2756:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2756 | if (s = strchr (buf,'\012')) { | ~~^~~~~~~~~~~~~~~~~~~~~ mix.c:2756:11: note: place parentheses around the assignment to silence this warning 2756 | if (s = strchr (buf,'\012')) { | ^ | ( ) mix.c:2756:11: note: use '==' to turn this assignment into an equality comparison 2756 | if (s = strchr (buf,'\012')) { | ^ | == 119 warnings generated. sh -c 'rm -rf c-client.a || true' 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 `cat CCTYPE` `cat SHLIBFLAGS` `cat CFLAGS` `cat OSCFLAGS` -c osdep.c -o osdep.so In file included from osdep.c:45: ./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:46: In file included from ./env_unix.c:258: ./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:46: In file included from ./env_unix.c:262: 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:103:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 103 | if (challenge = (*challenger) (stream,&clen)) { | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:103:17: note: place parentheses around the assignment to silence this warning 103 | if (challenge = (*challenger) (stream,&clen)) { | ^ | ( ) ./auth_md5.c:103:17: note: use '==' to turn this assignment into an equality comparison 103 | if (challenge = (*challenger) (stream,&clen)) { | ^ | == ./auth_md5.c:118:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 118 | if (challenge = (*challenger) (stream,&clen)) | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:118:16: note: place parentheses around the assignment to silence this warning 118 | if (challenge = (*challenger) (stream,&clen)) | ^ | ( ) ./auth_md5.c:118:16: note: use '==' to turn this assignment into an equality comparison 118 | if (challenge = (*challenger) (stream,&clen)) | ^ | == ./auth_md5.c:153:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:153:12: note: place parentheses around the assignment to silence this warning 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ^ | ( ) ./auth_md5.c:153:12: note: use '==' to turn this assignment into an equality comparison 153 | if (user = (*responder) (chal,cl = strlen (chal),NIL)) { | ^ | == ./auth_md5.c:155:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 155 | if (hash = strrchr (user,' ')) { | ~~~~~^~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:155:14: note: place parentheses around the assignment to silence this warning 155 | if (hash = strrchr (user,' ')) { | ^ | ( ) ./auth_md5.c:155:14: note: use '==' to turn this assignment into an equality comparison 155 | if (hash = strrchr (user,' ')) { | ^ | == ./auth_md5.c:158:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ./auth_md5.c:158:20: note: place parentheses around the assignment to silence this warning 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | ( ) ./auth_md5.c:158:20: note: use '==' to turn this assignment into an equality comparison 158 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | == ./auth_md5.c:160:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:160:13: note: place parentheses around the assignment to silence this warning 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | ( ) ./auth_md5.c:160:13: note: use '==' to turn this assignment into an equality comparison 160 | if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | == ./auth_md5.c:194: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] 194 | read (fd,buf = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:196: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] 196 | for (s = user; *s && ((*s < 'A') || (*s > 'Z')); s++); | ^ ~~~~ ./auth_md5.c:198: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] 198 | lusr = *s ? lcase (cpystr (user)) : NIL; | ^~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:199: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] 199 | for (s = strtok_r ((char *) buf,"\015\012",&r),lret = NIL; s; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:200: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] 200 | s = ret ? NIL : strtok_r (NIL,"\015\012",&r)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:202: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] 202 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:202: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] 202 | if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) { | ^ ~~~~~~~~~~~~~~~ ./auth_md5.c:204: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] 204 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:204: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] 204 | if (!strcmp (s,user)) ret = cpystr (t); | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:205: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] 205 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:205: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] 205 | 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:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:208: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] 208 | if (!ret && lret) ret = cpystr (lret); | ^~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: In file included from ./env_unix.c:262: In file included from ./auths.c:2: ./auth_md5.c:237:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~ ./auth_md5.c:237:16: note: place parentheses around the assignment to silence this warning 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | ( ) ./auth_md5.c:237:16: note: use '==' to turn this assignment into an equality comparison 237 | if (authuser = strchr (user,'*')) *authuser++ = '\0'; | ^ | == ./auth_md5.c:239:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./auth_md5.c:239:9: note: place parentheses around the assignment to silence this warning 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | ( ) ./auth_md5.c:239:9: note: use '==' to turn this assignment into an equality comparison 239 | if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) { | ^ | == In file included from osdep.c:46: In file included from ./env_unix.c:262: 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:46: In file included from ./env_unix.c:262: 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:46: ./env_unix.c:541:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 541 | if (julian = t->tm_yday -julian) | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ ./env_unix.c:541:14: note: place parentheses around the assignment to silence this warning 541 | if (julian = t->tm_yday -julian) | ^ | ( ) ./env_unix.c:541:14: note: use '==' to turn this assignment into an equality comparison 541 | if (julian = t->tm_yday -julian) | ^ | == ./env_unix.c:671: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] 671 | 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:46: ./env_unix.c:675: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] 675 | pw = getpwnam (s = lcase (cpystr (user))); | ^~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ In file included from osdep.c:46: ./env_unix.c:675: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] 675 | pw = getpwnam (s = lcase (cpystr (user))); | ^~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:46: ./env_unix.c:675: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] 675 | 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:46: ./env_unix.c:699:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 699 | if (s = auth_md5_pwd (user)) { | ~~^~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:699:11: note: place parentheses around the assignment to silence this warning 699 | if (s = auth_md5_pwd (user)) { | ^ | ( ) ./env_unix.c:699:11: note: use '==' to turn this assignment into an equality comparison 699 | if (s = auth_md5_pwd (user)) { | ^ | == ./env_unix.c:701: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] 701 | ret = pwuser (user); /* validated, get passwd entry for user */ | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:706: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] 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:706:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 706 | else if (pw = pwuser (user)) {/* can get user? */ | ~~~^~~~~~~~~~~~~~~ ./env_unix.c:706:15: note: place parentheses around the assignment to silence this warning 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^ | ( ) ./env_unix.c:706:15: note: use '==' to turn this assignment into an equality comparison 706 | else if (pw = pwuser (user)) {/* can get user? */ | ^ | == ./env_unix.c:709: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] 709 | (*pwd == ' ') && pwd[1] && (ret = pwuser (s))) | ^ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:740: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] 740 | else if (valpwd (authuser,pwd,argc,argv)) pw = pwuser (user); | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:758: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] 758 | return pw_login (pwuser (user),authuser,user,NIL,argc,argv); | ^~~~ ./env_unix.c:668:46: note: passing argument to parameter 'user' here 668 | static struct passwd *pwuser (unsigned char *user) | ^ ./env_unix.c:797: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] 797 | if (user && auser && *auser && compare_cstring (auser,user)) { | ^~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:797: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] 797 | if (user && auser && *auser && compare_cstring (auser,user)) { | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:800: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] 800 | if (!compare_cstring (auser,*t++)) | ^~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:800: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] 800 | if (!compare_cstring (auser,*t++)) | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1096: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] 1096 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ? | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1096: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] 1096 | sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1106: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] 1106 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1106: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] 1106 | else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1130: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] 1130 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1130: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] 1130 | if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1144: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] 1144 | if (!compare_cstring (name,"INBOX")) name = "INBOX"; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1144: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] 1144 | if (!compare_cstring (name,"INBOX")) name = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1158: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] 1158 | if (!compare_cstring (name+1,"NBOX")) { | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1158: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] 1158 | if (!compare_cstring (name+1,"NBOX")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1294:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1294 | if (s = strrchr (base->lock,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1294:11: note: place parentheses around the assignment to silence this warning 1294 | if (s = strrchr (base->lock,'/')) { | ^ | ( ) ./env_unix.c:1294:11: note: use '==' to turn this assignment into an equality comparison 1294 | if (s = strrchr (base->lock,'/')) { | ^ | == ./env_unix.c:1608: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] 1608 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1608: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] 1608 | if (!compare_cstring (s,"set keywords") && !userFlags[0]) { | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1622: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] 1622 | if (!compare_cstring (s,"set new-mailbox-format") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1622: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] 1622 | if (!compare_cstring (s,"set new-mailbox-format") || | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1623: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] 1623 | !compare_cstring (s,"set new-folder-format")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1623: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] 1623 | !compare_cstring (s,"set new-folder-format")) { | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1624: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] 1624 | if (!compare_cstring (k,"same-as-inbox")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1624: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] 1624 | if (!compare_cstring (k,"same-as-inbox")) { | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1625:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1625:14: note: place parentheses around the assignment to silence this warning 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ^ | ( ) ./env_unix.c:1625:14: note: use '==' to turn this assignment into an equality comparison 1625 | if (d = mail_valid (NIL,"INBOX",NIL)) { | ^ | == ./env_unix.c:1626: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] 1626 | if (!compare_cstring (d->name,"mbox")) | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1626: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] 1626 | if (!compare_cstring (d->name,"mbox")) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1629: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] 1629 | else if (!compare_cstring (d->name,"dummy")) d = NIL; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1629: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] 1629 | else if (!compare_cstring (d->name,"dummy")) d = NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1633: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] 1633 | else if (!compare_cstring (k,"system-standard")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1633: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] 1633 | else if (!compare_cstring (k,"system-standard")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1636: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] 1636 | if (!compare_cstring (k,"mbox")) k = "unix"; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1636: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] 1636 | if (!compare_cstring (k,"mbox")) k = "unix"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1638:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./env_unix.c:1638:14: note: place parentheses around the assignment to silence this warning 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ^ | ( ) ./env_unix.c:1638:14: note: use '==' to turn this assignment into an equality comparison 1638 | if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k)) | ^ | == ./env_unix.c:1647: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] 1647 | if (!compare_cstring (s,"set empty-mailbox-format") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1647: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] 1647 | if (!compare_cstring (s,"set empty-mailbox-format") || | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1648: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] 1648 | !compare_cstring (s,"set empty-folder-format")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1648: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] 1648 | !compare_cstring (s,"set empty-folder-format")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1649: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] 1649 | if (!compare_cstring (k,"invalid")) appendProto = NIL; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1649: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] 1649 | if (!compare_cstring (k,"invalid")) appendProto = NIL; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1650: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] 1650 | else if (!compare_cstring (k,"same-as-inbox")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1650: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] 1650 | else if (!compare_cstring (k,"same-as-inbox")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1652: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] 1652 | compare_cstring (d->name,"dummy")) ? | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1652: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] 1652 | compare_cstring (d->name,"dummy")) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1654: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] 1654 | else if (!compare_cstring (k,"system-standard")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1654: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] 1654 | else if (!compare_cstring (k,"system-standard")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1658: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] 1658 | d && compare_cstring (d->name,k); d = d->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1658: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] 1658 | d && compare_cstring (d->name,k); d = d->next); | ^ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1669: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] 1669 | if (!compare_cstring (s,"set local-host")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1669: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] 1669 | if (!compare_cstring (s,"set local-host")) { | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-active-file")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1673: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] 1673 | else if (!compare_cstring (s,"set news-active-file")) { | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-spool-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1677: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] 1677 | else if (!compare_cstring (s,"set news-spool-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 mh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1681: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] 1681 | else if (!compare_cstring (s,"set mh-path")) | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 mh-allow-inbox")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1683: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] 1683 | else if (!compare_cstring (s,"set mh-allow-inbox")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 news-state-file")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1685: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] 1685 | else if (!compare_cstring (s,"set news-state-file")) { | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ftp-export-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ftp-export-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 public-home-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1693: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] 1693 | else if (!compare_cstring (s,"set public-home-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 shared-home-directory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1697: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] 1697 | else if (!compare_cstring (s,"set shared-home-directory")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 system-inbox")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1701: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] 1701 | else if (!compare_cstring (s,"set system-inbox")) { | ^~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1705: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] 1705 | else if (!compare_cstring (s,"set mail-subdirectory")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1705: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] 1705 | else if (!compare_cstring (s,"set mail-subdirectory")) { | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1709: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] 1709 | else if (!compare_cstring (s,"set from-widget")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1709: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] 1709 | else if (!compare_cstring (s,"set from-widget")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1711: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] 1711 | compare_cstring (k,"header-only") ? | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1711: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] 1711 | compare_cstring (k,"header-only") ? | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-command")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1714: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] 1714 | else if (!compare_cstring (s,"set rsh-command")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1716: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] 1716 | else if (!compare_cstring (s,"set rsh-path")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-command")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1718: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] 1718 | else if (!compare_cstring (s,"set ssh-command")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1720: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] 1720 | else if (!compare_cstring (s,"set ssh-path")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-open-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1722: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] 1722 | else if (!compare_cstring (s,"set tcp-open-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-read-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1724: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] 1724 | else if (!compare_cstring (s,"set tcp-read-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 tcp-write-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1726: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] 1726 | else if (!compare_cstring (s,"set tcp-write-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 rsh-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1728: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] 1728 | else if (!compare_cstring (s,"set rsh-timeout")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 ssh-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1730: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] 1730 | else if (!compare_cstring (s,"set ssh-timeout")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 maximum-login-trials")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1732: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] 1732 | else if (!compare_cstring (s,"set maximum-login-trials")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 lookahead")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1734: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] 1734 | else if (!compare_cstring (s,"set lookahead")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 prefetch")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1736: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] 1736 | else if (!compare_cstring (s,"set prefetch")) | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 close-on-error")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1738: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] 1738 | else if (!compare_cstring (s,"set close-on-error")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 imap-port")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1740: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] 1740 | else if (!compare_cstring (s,"set imap-port")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./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 pop3-port")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1742: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] 1742 | else if (!compare_cstring (s,"set pop3-port")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1744: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] 1744 | else if (!compare_cstring (s,"set uid-lookahead")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1744: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] 1744 | else if (!compare_cstring (s,"set uid-lookahead")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1746: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] 1746 | else if (!compare_cstring (s,"set try-ssl-first")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1746: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] 1746 | else if (!compare_cstring (s,"set try-ssl-first")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1749: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] 1749 | else if (!compare_cstring (s,"set mailbox-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1749: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] 1749 | else if (!compare_cstring (s,"set mailbox-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1751: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] 1751 | else if (!compare_cstring (s,"set directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1751: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] 1751 | else if (!compare_cstring (s,"set directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1753: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] 1753 | else if (!compare_cstring (s,"set lock-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1753: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] 1753 | else if (!compare_cstring (s,"set lock-protection")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1755: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] 1755 | else if (!compare_cstring (s,"set ftp-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1755: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] 1755 | else if (!compare_cstring (s,"set ftp-protection")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1757: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] 1757 | else if (!compare_cstring (s,"set public-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1757: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] 1757 | else if (!compare_cstring (s,"set public-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1759: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] 1759 | else if (!compare_cstring (s,"set shared-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1759: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] 1759 | else if (!compare_cstring (s,"set shared-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1761: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] 1761 | else if (!compare_cstring (s,"set ftp-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1761: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] 1761 | else if (!compare_cstring (s,"set ftp-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1763: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] 1763 | else if (!compare_cstring (s,"set public-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1763: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] 1763 | else if (!compare_cstring (s,"set public-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1765: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] 1765 | else if (!compare_cstring (s,"set shared-directory-protection")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1765: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] 1765 | else if (!compare_cstring (s,"set shared-directory-protection")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1767: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] 1767 | else if (!compare_cstring (s,"set dot-lock-file-timeout")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1767: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] 1767 | else if (!compare_cstring (s,"set dot-lock-file-timeout")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1769: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] 1769 | else if (!compare_cstring (s,"set disable-fcntl-locking")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1769: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] 1769 | else if (!compare_cstring (s,"set disable-fcntl-locking")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1771: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] 1771 | else if (!compare_cstring (s,"set disable-lock-warning")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1771: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] 1771 | else if (!compare_cstring (s,"set disable-lock-warning")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1773: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] 1773 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1773: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] 1773 | else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1775: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] 1775 | else if (!compare_cstring (s,"set hide-dot-files")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1775: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] 1775 | else if (!compare_cstring (s,"set hide-dot-files")) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1777: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] 1777 | else if (!compare_cstring (s,"set list-maximum-level")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1777: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] 1777 | else if (!compare_cstring (s,"set list-maximum-level")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1779: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] 1779 | else if (!compare_cstring (s,"set trust-dns")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1779: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] 1779 | else if (!compare_cstring (s,"set trust-dns")) | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1781: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] 1781 | else if (!compare_cstring (s,"set sasl-uses-ptr-name")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1781: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] 1781 | else if (!compare_cstring (s,"set sasl-uses-ptr-name")) | ^~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1783: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] 1783 | else if (!compare_cstring (s,"set network-filesystem-stat-bug")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1783: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] 1783 | else if (!compare_cstring (s,"set network-filesystem-stat-bug")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1785: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] 1785 | else if (!compare_cstring (s,"set nntp-range")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1785: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] 1785 | else if (!compare_cstring (s,"set nntp-range")) | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1789: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] 1789 | if (!compare_cstring (s,"set black-box-directory") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1789: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] 1789 | if (!compare_cstring (s,"set black-box-directory") && | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1791: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] 1791 | else if (!compare_cstring(s,"set black-box-default-home-directory")&& | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1791: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] 1791 | else if (!compare_cstring(s,"set black-box-default-home-directory")&& | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1794: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] 1794 | else if (!compare_cstring (s,"set anonymous-home-directory") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1794: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] 1794 | else if (!compare_cstring (s,"set anonymous-home-directory") && | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1801: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] 1801 | else if (!compare_cstring (s,"set CA-certificate-path")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1801: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] 1801 | else if (!compare_cstring (s,"set CA-certificate-path")) | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1803: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] 1803 | else if (!compare_cstring (s,"set ssl-cipher-list")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1803:33: 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] 1803 | else if (!compare_cstring (s,"set ssl-cipher-list")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1805: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] 1805 | else if (!compare_cstring (s,"set ssl-protocols")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1805: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] 1805 | else if (!compare_cstring (s,"set ssl-protocols")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1807: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] 1807 | else if (!compare_cstring (s,"set ssl-dh-parameters")) /* same use as Sendmail */ | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1807: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] 1807 | else if (!compare_cstring (s,"set ssl-dh-parameters")) /* same use as Sendmail */ | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1809: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] 1809 | else if (!compare_cstring (s,"set disable-plaintext")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1809: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] 1809 | else if (!compare_cstring (s,"set disable-plaintext")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1811: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] 1811 | else if (!compare_cstring (s,"set allowed-login-attempts")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1811: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] 1811 | else if (!compare_cstring (s,"set allowed-login-attempts")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1813: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] 1813 | else if (!compare_cstring (s,"set chroot-server")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1813: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] 1813 | else if (!compare_cstring (s,"set chroot-server")) | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1815: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] 1815 | else if (!compare_cstring (s,"set restrict-mailbox-access")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1815: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] 1815 | else if (!compare_cstring (s,"set restrict-mailbox-access")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1817: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] 1817 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1817: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] 1817 | if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1818: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] 1818 | else if (!compare_cstring (k,"otherusers")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1818: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] 1818 | else if (!compare_cstring (k,"otherusers")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1820: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] 1820 | else if (!compare_cstring (k,"all")) restrictBox = -1; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1820: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] 1820 | else if (!compare_cstring (k,"all")) restrictBox = -1; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1822: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] 1822 | else if (!compare_cstring (s,"set advertise-the-world")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1822: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] 1822 | else if (!compare_cstring (s,"set advertise-the-world")) | ^~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1824: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] 1824 | else if (!compare_cstring (s,"set limited-advertise")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1824: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] 1824 | else if (!compare_cstring (s,"set limited-advertise")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1827: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] 1827 | (s,"set disable-automatic-shared-namespaces")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1827: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] 1827 | (s,"set disable-automatic-shared-namespaces")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1829: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] 1829 | else if (!compare_cstring (s,"set allow-user-config")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1829: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] 1829 | else if (!compare_cstring (s,"set allow-user-config")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1831: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] 1831 | else if (!compare_cstring (s,"set allow-reverse-dns")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1831: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] 1831 | else if (!compare_cstring (s,"set allow-reverse-dns")) | ^~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1833: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] 1833 | else if (!compare_cstring (s,"set k5-cp-uses-service-name")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1833: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] 1833 | else if (!compare_cstring (s,"set k5-cp-uses-service-name")) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1837: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] 1837 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:46: ./env_unix.c:1837: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] 1837 | else if (!compare_cstring (s,"set plaintext-allowed-clients")) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:130: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] 130 | (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,&hints,&ai))) { | ^~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:130: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] 130 | (!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:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:248: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] 248 | (!getaddrinfo (lcase (strcpy (tmp,name)),NIL,&hints, | ^~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ In file included from osdep.c:49: In file included from ./tcp_unix.c:26: ./ip_unix.c:248: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] 248 | (!getaddrinfo (lcase (strcpy (tmp,name)),NIL,&hints, | ^~~~~~~~~~~~~~~~~~~~~~~~~ /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:49: ./tcp_unix.c:179:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:179:13: note: place parentheses around the assignment to silence this warning 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ^ | ( ) ./tcp_unix.c:179:13: note: use '==' to turn this assignment into an equality comparison 179 | if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) { | ^ | == ./tcp_unix.c:226:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ~~~~~~~~~~~~~^~~~~ ./tcp_unix.c:226:22: note: place parentheses around the assignment to silence this warning 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ^ | ( ) ./tcp_unix.c:226:22: note: use '==' to turn this assignment into an equality comparison 226 | if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0]; | ^ | == ./tcp_unix.c:374:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:374:13: note: place parentheses around the assignment to silence this warning 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ^ | ( ) ./tcp_unix.c:374:13: note: use '==' to turn this assignment into an equality comparison 374 | if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr); | ^ | == ./tcp_unix.c:477:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 477 | char *ret = tcp_getline_work (stream,&n,&contd); | ^~~~~~ ./tcp_unix.c:61:17: note: passing argument to parameter 'contd' here 61 | long *contd); | ^ ./tcp_unix.c:485:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 485 | ret = tcp_getline_work (stream,&n,&contd); | ^~~~~~ ./tcp_unix.c:61:17: note: passing argument to parameter 'contd' here 61 | long *contd); | ^ ./tcp_unix.c:553:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 553 | if (n = min (size,stream->ictr)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:553:9: note: place parentheses around the assignment to silence this warning 553 | if (n = min (size,stream->ictr)) { | ^ | ( ) ./tcp_unix.c:553:9: note: use '==' to turn this assignment into an equality comparison 553 | if (n = min (size,stream->ictr)) { | ^ | == ./tcp_unix.c:874:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 874 | if (v = strchr (s,' ')) *v = '\0'; | ~~^~~~~~~~~~~~~~~~ ./tcp_unix.c:874:8: note: place parentheses around the assignment to silence this warning 874 | if (v = strchr (s,' ')) *v = '\0'; | ^ | ( ) ./tcp_unix.c:874:8: note: use '==' to turn this assignment into an equality comparison 874 | if (v = strchr (s,' ')) *v = '\0'; | ^ | == ./tcp_unix.c:1003:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./tcp_unix.c:1003:11: note: place parentheses around the assignment to silence this warning 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ^ | ( ) ./tcp_unix.c:1003:11: note: use '==' to turn this assignment into an equality comparison 1003 | if (t = tcp_name_valid (ip_sockaddrtoname (sadr,buf))) { | ^ | == osdep.c:159:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 160 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 161 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 162 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 163 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 164 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 165 | getpwnam (name) : NIL) { | ~~~~~~~~~~~~~~~~~~~~~ osdep.c:159:10: note: place parentheses around the assignment to silence this warning 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ^ | ( 160 | pw->pw_name,&conv,&hdl) == PAM_SUCCESS) && 161 | (pam_set_item (hdl,PAM_RHOST,tcp_clientaddr ()) == PAM_SUCCESS) && 162 | (pam_authenticate (hdl,NIL) == PAM_SUCCESS) && 163 | (pam_acct_mgmt (hdl,NIL) == PAM_SUCCESS) && 164 | (pam_setcred (hdl,PAM_ESTABLISH_CRED) == PAM_SUCCESS)) ? 165 | getpwnam (name) : NIL) { | | ) osdep.c:159:10: note: use '==' to turn this assignment into an equality comparison 159 | if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL), | ^ | == osdep.c:472:12: warning: 'TLSv1_client_method' is deprecated [-Wdeprecated-declarations] 472 | TLSv1_client_method () : | ^ /usr/include/openssl/ssl.h:1893:1: note: 'TLSv1_client_method' has been explicitly marked deprecated here 1893 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void)) | ^ /usr/include/openssl/opensslconf.h:154:34: note: expanded from macro 'DEPRECATEDIN_1_1_0' 154 | # define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f) | ^ /usr/include/openssl/opensslconf.h:112:55: note: expanded from macro 'DECLARE_DEPRECATED' 112 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); | ^ osdep.c:490:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osdep.c:490:9: note: place parentheses around the assignment to silence this warning 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ^ | ( ) osdep.c:490:9: note: use '==' to turn this assignment into an equality comparison 490 | if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL)) | ^ | == osdep.c:494:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osdep.c:494:14: note: place parentheses around the assignment to silence this warning 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ^ | ( ) osdep.c:494:14: note: use '==' to turn this assignment into an equality comparison 494 | if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) { | ^ | == osdep.c:503:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 504 | NIL,NIL,"")) { | ~~~~~~~~~~~ osdep.c:503:15: note: place parentheses around the assignment to silence this warning 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ^ | ( 504 | NIL,NIL,"")) { | | ) osdep.c:503:15: note: use '==' to turn this assignment into an equality comparison 503 | if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl), | ^ | == osdep.c:641:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 641 | char *ret = ssl_getline_work (stream,&n,&contd); | ^~~~~~ osdep.c:314:17: note: passing argument to parameter 'contd' here 314 | long *contd); | ^ osdep.c:649:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 649 | ret = ssl_getline_work (stream,&n,&contd); | ^~~~~~ osdep.c:314:17: note: passing argument to parameter 'contd' here 314 | long *contd); | ^ osdep.c:1253:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ~~^~~~~~~~~~~~~~~~~~ osdep.c:1253:12: note: place parentheses around the assignment to silence this warning 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ^ | ( ) osdep.c:1253:12: note: use '==' to turn this assignment into an equality comparison 1253 | while (i = ERR_get_error ()) /* SSL failure */ | ^ | == osdep.c:1272:17: warning: 'RSA_generate_key' is deprecated [-Wdeprecated-declarations] 1272 | 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:166:34: note: expanded from macro 'DEPRECATEDIN_0_9_8' 166 | # define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f) | ^ /usr/include/openssl/opensslconf.h:112:55: note: expanded from macro 'DECLARE_DEPRECATED' 112 | # define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); | ^ osdep.c:1275:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1275 | while (i = ERR_get_error ()) | ~~^~~~~~~~~~~~~~~~~~ osdep.c:1275:16: note: place parentheses around the assignment to silence this warning 1275 | while (i = ERR_get_error ()) | ^ | ( ) osdep.c:1275:16: note: use '==' to turn this assignment into an equality comparison 1275 | while (i = ERR_get_error ()) | ^ | == 253 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mail.c -o mail.so mail.c:213:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 213 | if (stream->cache[i] = stream->cache[msgno]) | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:213:28: note: place parentheses around the assignment to silence this warning 213 | if (stream->cache[i] = stream->cache[msgno]) | ^ | ( ) mail.c:213:28: note: use '==' to turn this assignment into an equality comparison 213 | if (stream->cache[i] = stream->cache[msgno]) | ^ | == mail.c:384: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] 384 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:384: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] 384 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:389: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] 389 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:389: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] 389 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:391:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:391:13: note: place parentheses around the assignment to silence this warning 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ^ | ( ) mail.c:391:13: note: use '==' to turn this assignment into an equality comparison 391 | if (ret = (void *) d) d->flags &= ~DR_DISABLE; | ^ | == mail.c:394: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] 394 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:394: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] 394 | for (d = maildrivers; d && compare_cstring (d->name,(char *) value); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:396:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:396:13: note: place parentheses around the assignment to silence this warning 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ^ | ( ) mail.c:396:13: note: use '==' to turn this assignment into an equality comparison 396 | if (ret = (void *) d) d->flags |= DR_DISABLE; | ^ | == mail.c:400: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] 400 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:400: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] 400 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:401:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:401:13: note: place parentheses around the assignment to silence this warning 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ^ | ( ) mail.c:401:13: note: use '==' to turn this assignment into an equality comparison 401 | if (ret = (void *) a) a->flags &= ~AU_DISABLE; | ^ | == mail.c:405: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] 405 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:405: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] 405 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:406:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ~~~~^~~~~~~~~~~~ mail.c:406:13: note: place parentheses around the assignment to silence this warning 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ^ | ( ) mail.c:406:13: note: use '==' to turn this assignment into an equality comparison 406 | if (ret = (void *) a) a->flags |= AU_DISABLE; | ^ | == mail.c:410: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] 410 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:410: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] 410 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:411:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ~~~~^~~~~~~~~~~~ mail.c:411:13: note: place parentheses around the assignment to silence this warning 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ^ | ( ) mail.c:411:13: note: use '==' to turn this assignment into an equality comparison 411 | if (ret = (void *) a) a->flags &= ~AU_HIDE; | ^ | == mail.c:415: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] 415 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:415: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] 415 | a && compare_cstring (a->name,(char *) value); a = a->next); | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:416:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ~~~~^~~~~~~~~~~~ mail.c:416:13: note: place parentheses around the assignment to silence this warning 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ^ | ( ) mail.c:416:13: note: use '==' to turn this assignment into an equality comparison 416 | if (ret = (void *) a) a->flags |= AU_HIDE; | ^ | == mail.c:650:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 650 | if (r = smtp_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:650:11: note: place parentheses around the assignment to silence this warning 650 | if (r = smtp_parameters (function,value)) ret = r; | ^ | ( ) mail.c:650:11: note: use '==' to turn this assignment into an equality comparison 650 | if (r = smtp_parameters (function,value)) ret = r; | ^ | == mail.c:651:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 651 | if (r = env_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:651:11: note: place parentheses around the assignment to silence this warning 651 | if (r = env_parameters (function,value)) ret = r; | ^ | ( ) mail.c:651:11: note: use '==' to turn this assignment into an equality comparison 651 | if (r = env_parameters (function,value)) ret = r; | ^ | == mail.c:652:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 652 | if (r = tcp_parameters (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:652:11: note: place parentheses around the assignment to silence this warning 652 | if (r = tcp_parameters (function,value)) ret = r; | ^ | ( ) mail.c:652:11: note: use '==' to turn this assignment into an equality comparison 652 | if (r = tcp_parameters (function,value)) ret = r; | ^ | == mail.c:654:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:654:13: note: place parentheses around the assignment to silence this warning 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ^ | ( ) mail.c:654:13: note: use '==' to turn this assignment into an equality comparison 654 | if (r = (*stream->dtb->parameters) (function,value)) ret = r; | ^ | == mail.c:658:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 658 | if (r = (d->parameters) (function,value)) ret = r; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:658:13: note: place parentheses around the assignment to silence this warning 658 | if (r = (d->parameters) (function,value)) ret = r; | ^ | ( ) mail.c:658:13: note: use '==' to turn this assignment into an equality comparison 658 | if (r = (d->parameters) (function,value)) ret = r; | ^ | == mail.c:772:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 772 | if (t = strpbrk (s = t,"/:=")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ mail.c:772:13: note: place parentheses around the assignment to silence this warning 772 | if (t = strpbrk (s = t,"/:=")) { | ^ | ( ) mail.c:772:13: note: use '==' to turn this assignment into an equality comparison 772 | if (t = strpbrk (s = t,"/:=")) { | ^ | == mail.c:790:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 790 | if (t = strpbrk (v = t,"/:")) { | ~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:790:10: note: place parentheses around the assignment to silence this warning 790 | if (t = strpbrk (v = t,"/:")) { | ^ | ( ) mail.c:790:10: note: use '==' to turn this assignment into an equality comparison 790 | if (t = strpbrk (v = t,"/:")) { | ^ | == mail.c:797: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] 797 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:797: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] 797 | if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:798: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] 798 | lcase (strcpy (mb->service,v)); | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:799: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] 799 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:799: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] 799 | else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:801: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] 801 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:801: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] 801 | else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) && | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:807: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] 807 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:807: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] 807 | if (!compare_cstring (s,"anonymous")) mb->anoflag = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:808: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] 808 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:808: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] 808 | else if (!compare_cstring (s,"debug")) mb->dbgflag = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"readonly")) mb->readonlyflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:809: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] 809 | else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:810: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] 810 | else if (!compare_cstring (s,"secure")) mb->secflag = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:810: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] 810 | else if (!compare_cstring (s,"secure")) mb->secflag = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"norsh")) mb->norsh = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"norsh")) mb->norsh = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:812: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] 812 | else if (!compare_cstring (s,"loser")) mb->loser = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:812: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] 812 | else if (!compare_cstring (s,"loser")) mb->loser = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"tls") && !mb->notlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:813: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] 813 | else if (!compare_cstring (s,"tls") && !mb->notlsflag) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:815: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] 815 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:815: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] 815 | else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:817: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] 817 | else if (!compare_cstring (s,"notls") && !mb->tlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:817: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] 817 | else if (!compare_cstring (s,"notls") && !mb->tlsflag) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:819: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] 819 | else if (!compare_cstring (s,"tryssl")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:819: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] 819 | else if (!compare_cstring (s,"tryssl")) | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:821: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] 821 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:821: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] 821 | else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:823: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] 823 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:823: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] 823 | else if (mailssldriver && !compare_cstring (s,"novalidate-cert")) | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:826: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] 826 | else if (mailssldriver && !compare_cstring (s,"validate-cert")); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:826: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] 826 | else if (mailssldriver && !compare_cstring (s,"validate-cert")); | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ 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,"imap") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:829: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] 829 | else if (!compare_cstring (s,"imap") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"nntp") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:830: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] 830 | !compare_cstring (s,"nntp") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"pop3") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:831: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] 831 | !compare_cstring (s,"pop3") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"smtp") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:832: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] 832 | !compare_cstring (s,"smtp") || | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:833: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] 833 | !compare_cstring (s,"submit")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:833: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] 833 | !compare_cstring (s,"submit")) | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:834: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] 834 | lcase (strcpy (mb->service,s)); | ^~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:835: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] 835 | else if (!compare_cstring (s,"imap2") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:835: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] 835 | else if (!compare_cstring (s,"imap2") || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:836: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] 836 | !compare_cstring (s,"imap2bis") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:836: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] 836 | !compare_cstring (s,"imap2bis") || | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:837: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] 837 | !compare_cstring (s,"imap4") || | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:837: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] 837 | !compare_cstring (s,"imap4") || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:838: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] 838 | !compare_cstring (s,"imap4rev1")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:838: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] 838 | !compare_cstring (s,"imap4rev1")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:840: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] 840 | else if (!compare_cstring (s,"pop")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:840: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] 840 | else if (!compare_cstring (s,"pop")) | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:925:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 925 | while (d = d->next); /* until at the end */ | ~~^~~~~~~~~ mail.c:925:12: note: place parentheses around the assignment to silence this warning 925 | while (d = d->next); /* until at the end */ | ^ | ( ) mail.c:925:12: note: use '==' to turn this assignment into an equality comparison 925 | while (d = d->next); /* until at the end */ | ^ | == mail.c:958:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 958 | while (d = d->next); /* until at the end */ | ~~^~~~~~~~~ mail.c:958:12: note: place parentheses around the assignment to silence this warning 958 | while (d = d->next); /* until at the end */ | ^ | ( ) mail.c:958:12: note: use '==' to turn this assignment into an equality comparison 958 | while (d = d->next); /* until at the end */ | ^ | == mail.c:1002:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1002:9: note: place parentheses around the assignment to silence this warning 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ^ | ( ) mail.c:1002:9: note: use '==' to turn this assignment into an equality comparison 1002 | if (s = strpbrk (mailbox,"\015\012")) { | ^ | == mail.c:1013: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] 1013 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1013: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] 1013 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1018:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1018 | if (s = mail_utf7_valid (mailbox)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1018:9: note: place parentheses around the assignment to silence this warning 1018 | if (s = mail_utf7_valid (mailbox)) { | ^ | ( ) mail.c:1018:9: note: use '==' to turn this assignment into an equality comparison 1018 | if (s = mail_utf7_valid (mailbox)) { | ^ | == mail.c:1098:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1098 | if (s = mail_utf7_valid (newname)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1098:9: note: place parentheses around the assignment to silence this warning 1098 | if (s = mail_utf7_valid (newname)) { | ^ | ( ) mail.c:1098:9: note: use '==' to turn this assignment into an equality comparison 1098 | if (s = mail_utf7_valid (newname)) { | ^ | == mail.c:1205:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1205 | if (stream = mail_open (stream,s+1,options)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1205:18: note: place parentheses around the assignment to silence this warning 1205 | if (stream = mail_open (stream,s+1,options)) { | ^ | ( ) mail.c:1205:18: note: use '==' to turn this assignment into an equality comparison 1205 | if (stream = mail_open (stream,s+1,options)) { | ^ | == mail.c:1222:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1222:18: note: place parentheses around the assignment to silence this warning 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ^ | ( ) mail.c:1222:18: note: use '==' to turn this assignment into an equality comparison 1222 | if (stream = mail_open (stream,mb.mailbox,options)) { | ^ | == mail.c:1249:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:1249:13: note: place parentheses around the assignment to silence this warning 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ^ | ( ) mail.c:1249:13: note: use '==' to turn this assignment into an equality comparison 1249 | if (s = strpbrk (tmp,"/\\:")) *s++ = '\0'; | ^ | == mail.c:1255: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] 1255 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1255: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] 1255 | for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next); | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:1477: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] 1477 | if (stream->dtb && mail_uid_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:1493: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] 1493 | if (stream->dtb && mail_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:1518: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] 1518 | ov.date = env->date; | ^ ~~~~~~~~~ mail.c:1549:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1549:15: note: place parentheses around the assignment to silence this warning 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1549:15: note: use '==' to turn this assignment into an equality comparison 1549 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1661:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1661:15: note: place parentheses around the assignment to silence this warning 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1661:15: note: use '==' to turn this assignment into an equality comparison 1661 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1731:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1731:15: note: place parentheses around the assignment to silence this warning 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1731:15: note: use '==' to turn this assignment into an equality comparison 1731 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1736: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] 1736 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1784:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1784 | if (rt.data = (unsigned char *) | ~~~~~~~~^~~~~~~~~~~~~~~~~~~ 1785 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1784:19: note: place parentheses around the assignment to silence this warning 1784 | if (rt.data = (unsigned char *) | ^ | ( 1785 | (*stream->dtb->header) (stream,msgno,&rt.size,flags)) { | | ) mail.c:1784:19: note: use '==' to turn this assignment into an equality comparison 1784 | if (rt.data = (unsigned char *) | ^ | == mail.c:1822:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1822:15: note: place parentheses around the assignment to silence this warning 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1822:15: note: use '==' to turn this assignment into an equality comparison 1822 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1827: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] 1827 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1877:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1877:15: note: place parentheses around the assignment to silence this warning 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1877:15: note: use '==' to turn this assignment into an equality comparison 1877 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1881: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] 1881 | if (!(section && *section && (b = mail_body (stream,msgno,section)))) | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:1960:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:1960:15: note: place parentheses around the assignment to silence this warning 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:1960:15: note: use '==' to turn this assignment into an equality comparison 1960 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:1964: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] 1964 | if (!(b = mail_body (stream,msgno,section))) return ""; | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2018:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2018:15: note: place parentheses around the assignment to silence this warning 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:2018:15: note: use '==' to turn this assignment into an equality comparison 2018 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:2024: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] 2024 | if (!((b = mail_body (stream,msgno,section)) && | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2088:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2088:15: note: place parentheses around the assignment to silence this warning 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | ( ) mail.c:2088:15: note: use '==' to turn this assignment into an equality comparison 2088 | if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID; | ^ | == mail.c:2092: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] 2092 | if (!(b = mail_body (stream,msgno,section))) return NIL; | ^~~~~~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ mail.c:2238:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2238 | if (delta = ((last - first) / 2)) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~ mail.c:2238:12: note: place parentheses around the assignment to silence this warning 2238 | if (delta = ((last - first) / 2)) { | ^ | ( ) mail.c:2238:12: note: use '==' to turn this assignment into an equality comparison 2238 | if (delta = ((last - first) / 2)) { | ^ | == mail.c:2314: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] 2314 | ((flags & ST_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:2315: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] 2315 | mail_sequence (stream,sequence)) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mail.c:2392:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2392 | if (msg = utf8_badcharset (charset)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2392:11: note: place parentheses around the assignment to silence this warning 2392 | if (msg = utf8_badcharset (charset)) { | ^ | ( ) mail.c:2392:11: note: use '==' to turn this assignment into an equality comparison 2392 | if (msg = utf8_badcharset (charset)) { | ^ | == mail.c:2604: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] 2604 | else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) { | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ mail.c:2604: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] 2604 | 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:2618:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2618:14: note: place parentheses around the assignment to silence this warning 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ^ | ( ) mail.c:2618:14: note: use '==' to turn this assignment into an equality comparison 2618 | else if (d = mail_valid (stream,mailbox,NIL)) | ^ | == mail.c:2656:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:2656:13: note: place parentheses around the assignment to silence this warning 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ^ | ( ) mail.c:2656:13: note: use '==' to turn this assignment into an equality comparison 2656 | if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT)) | ^ | == mail.c:2726: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] 2726 | if (!(i = strtoul (section,(char **) §ion,10)) || | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2731:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ~~~^~~~~~~~~~~~~~~~ mail.c:2731:11: note: place parentheses around the assignment to silence this warning 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ^ | ( ) mail.c:2731:11: note: use '==' to turn this assignment into an equality comparison 2731 | if (pt = b->nested.part) while (--i && (pt = pt->next)); | ^ | == mail.c:2858: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] 2858 | 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:2858: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] 2858 | 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:2858: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] 2858 | if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s)); | ^~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ mail.c:2864: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] 2864 | if (!(m = strtoul (s,(char **) &s,10))) return NIL; | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2868: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] 2868 | if (isdigit (*++s) && (d = strtoul (s,(char **) &s,10)) && | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2870: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] 2870 | y = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2880: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] 2880 | if ((m = strtoul (s+1,(char **) &s,10)) && (*s++ == '-') && | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2881: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] 2881 | (d = strtoul (s,(char **) &s,10)) && !*s) break; | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2886: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] 2886 | 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:2914: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] 2914 | y = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2938: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] 2938 | d = strtoul (s+1,(char **) &s,10); | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2940: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] 2940 | m = strtoul (++s,(char **) &s,10); | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:2941: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] 2941 | y = (*s == ':') ? strtoul (++s,(char **) &s,10) : 0; | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3091:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ~~^~~~~~~~~~~~~~ mail.c:3091:11: note: place parentheses around the assignment to silence this warning 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ^ | ( ) mail.c:3091:11: note: use '==' to turn this assignment into an equality comparison 3091 | if (t = gmtime (&tn)) { /* minus UTC minutes since midnight */ | ^ | == mail.c:3271: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] 3271 | else if (!(i = strtoul (sequence,(char **) &sequence,10))) { | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3282: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] 3282 | else if (!(j = strtoul (sequence,(char **) &sequence,10))) { | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:3312:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ~~^~~~~~~~~~~~~~~~~~~~~~~ mail.c:3312:13: note: place parentheses around the assignment to silence this warning 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ^ | ( ) mail.c:3312:13: note: use '==' to turn this assignment into an equality comparison 3312 | if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T; | ^ | == mail.c:3345:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3345 | while (lines = lines->next); | ~~~~~~^~~~~~~~~~~~~ mail.c:3345:16: note: place parentheses around the assignment to silence this warning 3345 | while (lines = lines->next); | ^ | ( ) mail.c:3345:16: note: use '==' to turn this assignment into an equality comparison 3345 | while (lines = lines->next); | ^ | == mail.c:3377:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3377 | if (i = t - tmp) /* see if found in header */ | ~~^~~~~~~~~ mail.c:3377:11: note: place parentheses around the assignment to silence this warning 3377 | if (i = t - tmp) /* see if found in header */ | ^ | ( ) mail.c:3377:11: note: use '==' to turn this assignment into an equality comparison 3377 | if (i = t - tmp) /* see if found in header */ | ^ | == mail.c:3379: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] 3379 | if ((hdrs->text.size == i) && !compare_csizedtext (tmp,&hdrs->text)) | ^~~ ./misc.h:107:40: note: passing argument to parameter 's1' here 107 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2); | ^ mail.c:3523: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] 3523 | BODY *body = mail_body (stream,msgno,section); | ^~~~~~~ mail.c:2716:72: note: passing argument to parameter 'section' here 2716 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section) | ^ mail.c:3629:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3629 | if (h.data = (unsigned char *) s) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~ mail.c:3629:14: note: place parentheses around the assignment to silence this warning 3629 | if (h.data = (unsigned char *) s) { | ^ | ( ) mail.c:3629:14: note: use '==' to turn this assignment into an equality comparison 3629 | if (h.data = (unsigned char *) s) { | ^ | == mail.c:3680:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ~~~^~~~~~~~~~ mail.c:3680:12: note: place parentheses around the assignment to silence this warning 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ^ | ( ) mail.c:3680:12: note: use '==' to turn this assignment into an equality comparison 3680 | if (st = st->next) s = s->next = mail_newstringlist (); | ^ | == mail.c:3695: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] 3695 | else if ((body = mail_body (stream,msgno,section)) && | ^~~~~~~ mail.c:2716:72: note: passing argument to parameter 'section' here 2716 | BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section) | ^ mail.c:3762:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3762 | if (body = body->nested.msg->body) | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3762:16: note: place parentheses around the assignment to silence this warning 3762 | if (body = body->nested.msg->body) | ^ | ( ) mail.c:3762:16: note: use '==' to turn this assignment into an equality comparison 3762 | if (body = body->nested.msg->body) | ^ | == mail.c:3779:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3779 | if (st.data = (unsigned char *) | ~~~~~~~~^~~~~~~~~~~~~~~~~~~ 3780 | rfc822_base64 ((unsigned char *) s,i,&st.size)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3779:14: note: place parentheses around the assignment to silence this warning 3779 | if (st.data = (unsigned char *) | ^ | ( 3780 | rfc822_base64 ((unsigned char *) s,i,&st.size)) { | | ) mail.c:3779:14: note: use '==' to turn this assignment into an equality comparison 3779 | if (st.data = (unsigned char *) | ^ | == mail.c:3786:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:3786:14: note: place parentheses around the assignment to silence this warning 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ^ | ( ) mail.c:3786:14: note: use '==' to turn this assignment into an equality comparison 3786 | if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) { | ^ | == mail.c:3862: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] 3862 | if (!compare_csizedtext (stream->user_flags[i],&st->text)) { | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:107:40: note: passing argument to parameter 's1' here 107 | int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2); | ^ mail.c:3867:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3867 | } while (st = st->next); | ~~~^~~~~~~~~~ mail.c:3867:15: note: place parentheses around the assignment to silence this warning 3867 | } while (st = st->next); | ^ | ( ) mail.c:3867:15: note: use '==' to turn this assignment into an equality comparison 3867 | } while (st = st->next); | ^ | == mail.c:3896:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~ mail.c:3896:25: note: place parentheses around the assignment to silence this warning 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ^ | ( ) mail.c:3896:25: note: use '==' to turn this assignment into an equality comparison 3896 | if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal); | ^ | == mail.c:3897:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ~~~~~~~~~^~~~~~~~ mail.c:3897:20: note: place parentheses around the assignment to silence this warning 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ^ | ( ) mail.c:3897:20: note: use '==' to turn this assignment into an equality comparison 3897 | if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl); | ^ | == mail.c:3898:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ~~~~~~~~~~^~~~~~~~~ mail.c:3898:21: note: place parentheses around the assignment to silence this warning 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ^ | ( ) mail.c:3898:21: note: use '==' to turn this assignment into an equality comparison 3898 | if (tadr.host = a->host) k += 3 + 2*strlen (a->host); | ^ | == mail.c:3993: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] 3993 | switch (*ucase (criterion)) { | ^~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ mail.c:4084: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] 4084 | mail_parse_date (&elt,(char *) s->text.data) && | ^~~~~~~~~~~~~~~~~~~~~ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:4133:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ~~^~~~~~~~~~~~~~~~~~~~ mail.c:4133:11: note: place parentheses around the assignment to silence this warning 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ^ | ( ) mail.c:4133:11: note: use '==' to turn this assignment into an equality comparison 4133 | if (d = strtok_r (c,end,r)) n = strlen (d); | ^ | == mail.c:4340: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] 4340 | if (env) t = env->date; | ^ ~~~~~~~~~ mail.c:4344:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4344:22: note: place parentheses around the assignment to silence this warning 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4344:22: note: use '==' to turn this assignment into an equality comparison 4344 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4356: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] 4356 | if (!(t && mail_parse_date (&telt,t) && | ^ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:4380:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4380:22: note: place parentheses around the assignment to silence this warning 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4380:22: note: use '==' to turn this assignment into an equality comparison 4380 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4388:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4388 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4388:9: note: place parentheses around the assignment to silence this warning 4388 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4388:9: note: use '==' to turn this assignment into an equality comparison 4388 | if (v = strchr (v,':')) { | ^ | == mail.c:4414:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4414:22: note: place parentheses around the assignment to silence this warning 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4414:22: note: use '==' to turn this assignment into an equality comparison 4414 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4422:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4422 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4422:9: note: place parentheses around the assignment to silence this warning 4422 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4422:9: note: use '==' to turn this assignment into an equality comparison 4422 | if (v = strchr (v,':')) { | ^ | == mail.c:4448:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4448:22: note: place parentheses around the assignment to silence this warning 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4448:22: note: use '==' to turn this assignment into an equality comparison 4448 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4456:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4456 | if (v = strchr (v,':')) { | ~~^~~~~~~~~~~~~~~~ mail.c:4456:9: note: place parentheses around the assignment to silence this warning 4456 | if (v = strchr (v,':')) { | ^ | ( ) mail.c:4456:9: note: use '==' to turn this assignment into an equality comparison 4456 | if (v = strchr (v,':')) { | ^ | == mail.c:4483:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ~~^~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4483:22: note: place parentheses around the assignment to silence this warning 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | ( ) mail.c:4483:22: note: use '==' to turn this assignment into an equality comparison 4483 | for (x = ++t; x = strpbrk (x,"\012\015"); x++) | ^ | == mail.c:4517:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ~~~~~~~~~^~~~~~~~~~~~ mail.c:4517:16: note: place parentheses around the assignment to silence this warning 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ^ | ( ) mail.c:4517:16: note: use '==' to turn this assignment into an equality comparison 4517 | if (src.size = strlen (t)) { /* have non-empty subject? */ | ^ | == mail.c:4659: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] 4659 | i = compare_string (s1->from,s2->from); | ^~~~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4659: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] 4659 | i = compare_string (s1->from,s2->from); | ^~~~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4662: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] 4662 | i = compare_string (s1->to,s2->to); | ^~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4662: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] 4662 | i = compare_string (s1->to,s2->to); | ^~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4665: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] 4665 | i = compare_string (s1->cc,s2->cc); | ^~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4665: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] 4665 | i = compare_string (s1->cc,s2->cc); | ^~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4668: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] 4668 | i = compare_string (s1->subject,s2->subject); | ^~~~~~~~~~~ ./misc.h:105:36: note: passing argument to parameter 's1' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4668: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] 4668 | i = compare_string (s1->subject,s2->subject); | ^~~~~~~~~~~ ./misc.h:105:54: note: passing argument to parameter 's2' here 105 | int compare_string (unsigned char *s1,unsigned char *s2); | ^ mail.c:4673:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4673 | while (pgm = i ? NIL : pgm->next); | ~~~~^~~~~~~~~~~~~~~~~~~~~ mail.c:4673:14: note: place parentheses around the assignment to silence this warning 4673 | while (pgm = i ? NIL : pgm->next); | ^ | ( ) mail.c:4673:14: note: use '==' to turn this assignment into an equality comparison 4673 | while (pgm = i ? NIL : pgm->next); | ^ | == mail.c:4767: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] 4767 | if (!compare_cstring (type,t->name)) { | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4767: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] 4767 | if (!compare_cstring (type,t->name)) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4800:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4800:11: note: place parentheses around the assignment to silence this warning 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ^ | ( ) mail.c:4800:11: note: use '==' to turn this assignment into an equality comparison 4800 | if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){ | ^ | == mail.c:4811: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] 4811 | if (compare_cstring (top->sc->subject,s->subject)) { | ^~~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4811: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] 4811 | if (compare_cstring (top->sc->subject,s->subject)) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:4914:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:4914:10: note: place parentheses around the assignment to silence this warning 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ^ | ( ) mail.c:4914:10: note: use '==' to turn this assignment into an equality comparison 4914 | if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) { | ^ | == mail.c:4962:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4962 | THREADLINKS); st = st->next; con = nxc) { | ~~~^~~~~~~~~~ mail.c:4962:28: note: place parentheses around the assignment to silence this warning 4962 | THREADLINKS); st = st->next; con = nxc) { | ^ | ( ) mail.c:4962:28: note: use '==' to turn this assignment into an equality comparison 4962 | THREADLINKS); st = st->next; con = nxc) { | ^ | == mail.c:5132: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] 5132 | if (!s->date && ov->date && mail_parse_date (&telt,ov->date)) { | ^~~~~~~~ mail.c:2840:56: note: passing argument to parameter 's' here 2840 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *s) | ^ mail.c:5194:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:5194:9: note: place parentheses around the assignment to silence this warning 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ^ | ( ) mail.c:5194:9: note: use '==' to turn this assignment into an equality comparison 5194 | if (t = mail_thread_parse_msgid (s,&s)) { | ^ | == mail.c:5198:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:5198:25: note: place parentheses around the assignment to silence this warning 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ^ | ( ) mail.c:5198:25: note: use '==' to turn this assignment into an equality comparison 5198 | for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) { | ^ | == mail.c:5300:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ~~~~^~~~~~~~~~~~~ mail.c:5300:13: note: place parentheses around the assignment to silence this warning 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ^ | ( ) mail.c:5300:13: note: use '==' to turn this assignment into an equality comparison 5300 | if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags); | ^ | == mail.c:5382: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] 5382 | else if (!(i = strtoul (sequence,(char **) &sequence,10)) || | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:5398: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] 5398 | else if (!(j = strtoul (sequence,(char **) &sequence,10)) || | ^~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ mail.c:5451:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ~~^~~~~~~~~~~~~~~~ mail.c:5451:13: note: place parentheses around the assignment to silence this warning 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ^ | ( ) mail.c:5451:13: note: use '==' to turn this assignment into an equality comparison 5451 | if (n = strchr (t,' ')) *n++ = '\0'; | ^ | == mail.c:5453: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] 5453 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5453: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] 5453 | if (!compare_cstring (t+1,"SEEN")) f |= fSEEN; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5454: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] 5454 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5454: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] 5454 | else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5455: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] 5455 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5455: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] 5455 | else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5456: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] 5456 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5456: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] 5456 | else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5457: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] 5457 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5457: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] 5457 | else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5467: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] 5467 | if (!compare_cstring (t,s)) *uf |= i = 1 << j; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5467: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] 5467 | if (!compare_cstring (t,s)) *uf |= i = 1 << j; | ^ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5517:27: 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] 5517 | ((!compare_cstring (smb.host,trustdns ? | ^~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5517: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] 5517 | ((!compare_cstring (smb.host,trustdns ? | ^~~~~~~~~~ 5518 | (s = tcp_canonical (nmb.host)) : nmb.host) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5523:27: 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] 5523 | (!compare_cstring (omb.host,nmb.host) && | ^~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:5523: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] 5523 | (!compare_cstring (omb.host,nmb.host) && | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6095: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] 6095 | if (auth->server && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6095: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] 6095 | if (auth->server && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6128: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] 6128 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6128: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] 6128 | !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism)) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mail.c:6215:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:6215:15: note: place parentheses around the assignment to silence this warning 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ^ | ( ) mail.c:6215:15: note: use '==' to turn this assignment into an equality comparison 6215 | if (tstream = (*dv->open) (host,service,port | flags)) { | ^ | == mail.c:6237:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mail.c:6237:15: note: place parentheses around the assignment to silence this warning 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ^ | ( ) mail.c:6237:15: note: use '==' to turn this assignment into an equality comparison 6237 | if (tstream = (*dv->aopen) (mb,service,user)) { | ^ | == 213 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` misc.c -o misc.so misc.c:272:41: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ~~^~~~~~~~~ misc.c:272:41: note: remove extraneous parentheses around the comparison to silence this warning 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ~ ^ ~ misc.c:272:41: note: use '=' to turn this equality comparison into an assignment 272 | for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k]) | ^~ | = misc.c:314:47: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ~~~~^~~~~~~~~~~~~~~~~~~ misc.c:314:47: note: place parentheses around the assignment to silence this warning 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ^ | ( ) misc.c:314:47: note: use '==' to turn this assignment into an equality comparison 314 | for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i]) | ^ | == misc.c:331:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ~~^~~~~~~~~~~~~~~~~~~~~~~ misc.c:331:19: note: place parentheses around the assignment to silence this warning 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ^ | ( ) misc.c:331:19: note: use '==' to turn this assignment into an equality comparison 331 | for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT; | ^ | == misc.c:450:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:450:39: note: place parentheses around the assignment to silence this warning 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ^ | ( ) misc.c:450:39: note: use '==' to turn this assignment into an equality comparison 450 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_ulong (*s1,*s2))) return i; | ^ | == misc.c:469:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:469:39: note: place parentheses around the assignment to silence this warning 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ^ | ( ) misc.c:469:39: note: use '==' to turn this assignment into an equality comparison 469 | for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i; | ^ | == misc.c:488: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] 488 | for (s = (char *) s2->data,j = s2->size; *s1 && j; ++s1,++s,--j) | ^ ~~~~~~~~~~~~~~~~~ misc.c:489:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 489 | if (i = (compare_uchar (*s1,*s))) return i; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ misc.c:489:11: note: place parentheses around the assignment to silence this warning 489 | if (i = (compare_uchar (*s1,*s))) return i; | ^ | ( ) misc.c:489:11: note: use '==' to turn this assignment into an equality comparison 489 | if (i = (compare_uchar (*s1,*s))) return i; | ^ | == 7 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` newsrc.c -o newsrc.so 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. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` smanager.c -o smanager.so smanager.c:42: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] 42 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:42: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] 42 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:44:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ~~^~~~~~~~~~~~~~~~ smanager.c:44:9: note: place parentheses around the assignment to silence this warning 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ^ | ( ) smanager.c:44:9: note: use '==' to turn this assignment into an equality comparison 44 | if (f = fopen (db,"r")) { /* make sure not already there */ | ^ | == smanager.c:46:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ smanager.c:46:13: note: place parentheses around the assignment to silence this warning 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | ( ) smanager.c:46:13: note: use '==' to turn this assignment into an equality comparison 46 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | == smanager.c:75: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] 75 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:75: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] 75 | if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX"; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smanager.c:86:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ smanager.c:86:13: note: place parentheses around the assignment to silence this warning 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | ( ) smanager.c:86:13: note: use '==' to turn this assignment into an equality comparison 86 | if (s = strchr (tmp,'\n')) *s = '\0'; | ^ | == smanager.c:116:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ~~^~~~~~~~~~~~~~~~~~~~ smanager.c:116:11: note: place parentheses around the assignment to silence this warning 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ^ | ( ) smanager.c:116:11: note: use '==' to turn this assignment into an equality comparison 116 | if (f = fopen (sbname,"r")) *sdb = (void *) f; | ^ | == smanager.c:120:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~ smanager.c:120:11: note: place parentheses around the assignment to silence this warning 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ^ | ( ) smanager.c:120:11: note: use '==' to turn this assignment into an equality comparison 120 | if (s = strchr (sbname,'\n')) *s = '\0'; | ^ | == 9 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` utf8.c -o utf8.so utf8.c:380: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] 380 | if (!compare_cstring (script,utf8_scvalid[i].name)) | ^~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:380: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] 380 | if (!compare_cstring (script,utf8_scvalid[i].name)) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:397: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] 397 | if (!compare_cstring (charset,utf8_csvalid[i].name)) | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:397: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] 397 | if (!compare_cstring (charset,utf8_csvalid[i].name)) | ^~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:583: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] 583 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP"); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:583: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] 583 | short iso2022jp = !compare_cstring (charset,"ISO-2022-JP"); | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:610: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] 610 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ? | ^~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:610: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] 610 | !compare_cstring (dcs->name,"ISO-2022-JP"))) ? | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:644: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] 644 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap : | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:644: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] 644 | return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap : | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:659:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:659:16: note: place parentheses around the assignment to silence this warning 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ^ | ( ) utf8.c:659:16: note: use '==' to turn this assignment into an equality comparison 659 | else if (ret = utf8_rmap_gen (cs,currmap)) { | ^ | == utf8.c:791:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:791:9: note: place parentheses around the assignment to silence this warning 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ^ | ( ) utf8.c:791:9: note: use '==' to turn this assignment into an equality comparison 791 | if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) { | ^ | == utf8.c:1320: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] 1320 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP"; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:1320: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] 1320 | if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP"; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ utf8.c:1322:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1322 | if (cs = utf8_charset (s)) { | ~~~^~~~~~~~~~~~~~~~~~ utf8.c:1322:12: note: place parentheses around the assignment to silence this warning 1322 | if (cs = utf8_charset (s)) { | ^ | ( ) utf8.c:1322:12: note: use '==' to turn this assignment into an equality comparison 1322 | if (cs = utf8_charset (s)) { | ^ | == utf8.c:2424:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2424:11: note: place parentheses around the assignment to silence this warning 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ^ | ( ) utf8.c:2424:11: note: use '==' to turn this assignment into an equality comparison 2424 | if (m = (struct decomposemore *) *more) switch (m->type) { | ^ | == utf8.c:2447:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2447:13: note: place parentheses around the assignment to silence this warning 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ^ | ( ) utf8.c:2447:13: note: use '==' to turn this assignment into an equality comparison 2447 | if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) { | ^ | == utf8.c:2477:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2477:13: note: place parentheses around the assignment to silence this warning 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ^ | ( ) utf8.c:2477:13: note: use '==' to turn this assignment into an equality comparison 2477 | if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) { | ^ | == utf8.c:2542:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~ utf8.c:2542:12: note: place parentheses around the assignment to silence this warning 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ^ | ( ) utf8.c:2542:12: note: use '==' to turn this assignment into an equality comparison 2542 | if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) { | ^ | == utf8.c:2562:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2562 | if (mr = mn) { /* did this value recurse on us? */ | ~~~^~~~ utf8.c:2562:12: note: place parentheses around the assignment to silence this warning 2562 | if (mr = mn) { /* did this value recurse on us? */ | ^ | ( ) utf8.c:2562:12: note: use '==' to turn this assignment into an equality comparison 2562 | if (mr = mn) { /* did this value recurse on us? */ | ^ | == 20 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` utf8aux.c -o utf8aux.so 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:1630:30: note: passing argument to parameter 'mailbox' here 1630 | 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:85:36: note: passing argument to parameter 'text' here 85 | 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. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` siglocal.c -o siglocal.so `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` dummy.c -o dummy.so dummy.c:121: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] 121 | else if (!compare_cstring (name,"INBOX")) return &dummydriver; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:121: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] 121 | else if (!compare_cstring (name,"INBOX")) return &dummydriver; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:159:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 159 | if (s = strchr (test,'/')) *++s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ dummy.c:159:13: note: place parentheses around the assignment to silence this warning 159 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | ( ) dummy.c:159:13: note: use '==' to turn this assignment into an equality comparison 159 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | == dummy.c:167:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 167 | if (s = strpbrk (test,"%*")) { | ~~^~~~~~~~~~~~~~~~~~~~~ dummy.c:167:11: note: place parentheses around the assignment to silence this warning 167 | if (s = strpbrk (test,"%*")) { | ^ | ( ) dummy.c:167:11: note: use '==' to turn this assignment into an equality comparison 167 | if (s = strpbrk (test,"%*")) { | ^ | == dummy.c:173:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 173 | if (s = strrchr (file,'/')){/* find directory name */ | ~~^~~~~~~~~~~~~~~~~~~~ dummy.c:173:11: note: place parentheses around the assignment to silence this warning 173 | if (s = strrchr (file,'/')){/* find directory name */ | ^ | ( ) dummy.c:173:11: note: use '==' to turn this assignment into an equality comparison 173 | if (s = strrchr (file,'/')){/* find directory name */ | ^ | == dummy.c:182: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] 182 | if (pmatch ("INBOX",ucase (test))) { | ^~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | pmatch_full (s,pat,NIL) | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ dummy.c:182: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] 182 | if (pmatch ("INBOX",ucase (test))) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:221: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] 221 | if (!compare_cstring (s,"INBOX") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:221: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] 221 | if (!compare_cstring (s,"INBOX") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:222: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] 222 | pmatch ("INBOX",ucase (strcpy (tmp,test)))) | ^~~~~~~~~~~~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | pmatch_full (s,pat,NIL) | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ dummy.c:222: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] 222 | pmatch ("INBOX",ucase (strcpy (tmp,test)))) | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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 | 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:224: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] 224 | 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:227: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] 227 | 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:227: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] 227 | 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:231:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 231 | while (s = sm_read (tmpx,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~~ dummy.c:231:12: note: place parentheses around the assignment to silence this warning 231 | while (s = sm_read (tmpx,&sdb)); | ^ | ( ) dummy.c:231:12: note: use '==' to turn this assignment into an equality comparison 231 | while (s = sm_read (tmpx,&sdb)); | ^ | == dummy.c:280:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ~~~^~~~~~~~~~~~~~~ dummy.c:280:10: note: place parentheses around the assignment to silence this warning 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ^ | ( ) dummy.c:280:10: note: use '==' to turn this assignment into an equality comparison 280 | if (dp = opendir (tmp)) { /* do nothing if can't open directory */ | ^ | == dummy.c:288: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] 288 | 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:288: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] 288 | 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:288: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] 288 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX")) | ^~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:288: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] 288 | if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX")) | ^~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:292:64: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ~~^~~~~~~~~~~~~~ dummy.c:292:64: note: place parentheses around the assignment to silence this warning 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ^ | ( ) dummy.c:292:64: note: use '==' to turn this assignment into an equality comparison 292 | if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp)) | ^ | == dummy.c:302: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] 302 | 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:302: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] 302 | 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:303: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] 303 | 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:303: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] 303 | 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:304: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] 304 | 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: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 | 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:313: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] 313 | if (!pmatch (tmp,"INBOX")) { | ^~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:313: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] 313 | if (!pmatch (tmp,"INBOX")) { | ^~~~~~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:314: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] 314 | 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:314: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] 314 | 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:319: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] 319 | 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:319: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] 319 | 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:323: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] 323 | 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:323: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] 323 | 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:329: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] 329 | 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:329: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] 329 | 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:329: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] 329 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX")) | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:329: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] 329 | if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:456: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] 456 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:456: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] 456 | if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:483:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ~~^~~~~~~~~~~~~~~~~~~~ dummy.c:483:9: note: place parentheses around the assignment to silence this warning 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ^ | ( ) dummy.c:483:9: note: use '==' to turn this assignment into an equality comparison 483 | if (s = strrchr (path,'/')) { /* found superior to this name? */ | ^ | == dummy.c:566: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] 566 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf)) | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:566: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] 566 | if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf)) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:595: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] 595 | if (compare_cstring (stream->mailbox,"INBOX")) | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:595: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] 595 | if (compare_cstring (stream->mailbox,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:702: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] 702 | if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ dummy.c:703: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] 703 | mail_sequence (stream,sequence)) fatal ("Impossible dummy_copy"); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ dummy.c:724: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] 724 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:724: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] 724 | if (!compare_cstring (mailbox,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ dummy.c:726:23: warning: unsequenced modification and access to 'ts' [-Wunsequenced] 726 | if (!ts && !(*(ts = default_proto (NIL))->dtb->create) (ts,"INBOX")) | ^ ~~ dummy.c:801:28: warning: expression result unused [-Wunused-value] 801 | for (i = 0, s = tmp; *s; *s++) if ((*s == '*') || (*s == '%')) ++i; | ^~~~ 53 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` pseudo.c -o pseudo.so `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` netmsg.c -o netmsg.so 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. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` flstring.c -o flstring.so `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` fdstring.c -o fdstring.so 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. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` rfc822.c -o rfc822.so rfc822.c:153:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 153 | if (t = d = strchr (tmp,':')) { | ~~^~~~~~~~~~~~~~~~~~~~~~ rfc822.c:153:11: note: place parentheses around the assignment to silence this warning 153 | if (t = d = strchr (tmp,':')) { | ^ | ( ) rfc822.c:153:11: note: use '==' to turn this assignment into an equality comparison 153 | if (t = d = strchr (tmp,':')) { | ^ | == rfc822.c:157: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] 157 | ucase (tmp); /* coerce to uppercase */ | ^~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:196: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] 196 | if (!env->date && !strcmp (tmp+1,"ATE")) env->date = cpystr (d); | ^ ~~~~~~~~~~ rfc822.c:202:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 202 | while (c = *d++) if (c != ' ') *t++ = c; | ~~^~~~~~ rfc822.c:202:13: note: place parentheses around the assignment to silence this warning 202 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | ( ) rfc822.c:202:13: note: use '==' to turn this assignment into an equality comparison 202 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | == rfc822.c:216:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:216:10: note: place parentheses around the assignment to silence this warning 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ^ | ( ) rfc822.c:216:10: note: use '==' to turn this assignment into an equality comparison 216 | if (t = rfc822_parse_phrase (d)) *t = '\0'; | ^ | == rfc822.c:227:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 227 | while (c = *d++) if (c != ' ') *t++ = c; | ~~^~~~~~ rfc822.c:227:13: note: place parentheses around the assignment to silence this warning 227 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | ( ) rfc822.c:227:13: note: use '==' to turn this assignment into an equality comparison 227 | while (c = *d++) if (c != ' ') *t++ = c; | ^ | == rfc822.c:388:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ~~^~~~~~~~~~~~~ rfc822.c:388:13: note: place parentheses around the assignment to silence this warning 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ^ | ( ) rfc822.c:388:13: note: use '==' to turn this assignment into an equality comparison 388 | if (m = GETPOS (bs)) m--; /* get position in front of character */ | ^ | == rfc822.c:398:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ~~^~~~~~~ rfc822.c:398:8: note: place parentheses around the assignment to silence this warning 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ^ | ( ) rfc822.c:398:8: note: use '==' to turn this assignment into an equality comparison 398 | if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;); | ^ | == rfc822.c:454:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 454 | if (i = part->body.mime.text.size) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:454:13: note: place parentheses around the assignment to silence this warning 454 | if (i = part->body.mime.text.size) { | ^ | ( ) rfc822.c:454:13: note: use '==' to turn this assignment into an equality comparison 454 | if (i = part->body.mime.text.size) { | ^ | == rfc822.c:497: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] 497 | rfc822_parse_content_header (&part->body,ucase (s1+8),s); | ^~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:497: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] 497 | 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:555:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 555 | if (t = strchr (name,' ')) *t = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ rfc822.c:555:9: note: place parentheses around the assignment to silence this warning 555 | if (t = strchr (name,' ')) *t = '\0'; | ^ | ( ) rfc822.c:555:9: note: use '==' to turn this assignment into an equality comparison 555 | if (t = strchr (name,' ')) *t = '\0'; | ^ | == rfc822.c:568: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] 568 | body->disposition.type = ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:568: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] 568 | body->disposition.type = ucase (cpystr (s)); | ^ ~~~~~~~~~~~~~~~~~~ rfc822.c:582: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] 582 | stl->text.data = (unsigned char *) ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:609: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] 609 | compare_cstring (s,body_types[i]); i++); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:609: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] 609 | compare_cstring (s,body_types[i]); i++); | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:620: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] 620 | body_types[body->type] = ucase (s); | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:620: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] 620 | body_types[body->type] = ucase (s); | ^ ~~~~~~~~~ rfc822.c:632: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] 632 | if (s) body->subtype = ucase (rfc822_cpy (s)); | ^~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:632: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] 632 | if (s) body->subtype = ucase (rfc822_cpy (s)); | ^ ~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:650: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] 650 | compare_cstring (s,body_encodings[i]); i++); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:650: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] 650 | compare_cstring (s,body_encodings[i]); i++); | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ rfc822.c:661: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] 661 | body_encodings[body->encoding] = ucase (s); | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:661: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] 661 | body_encodings[body->encoding] = ucase (s); | ^ ~~~~~~~~~ rfc822.c:694: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] 694 | param->attribute = ucase (cpystr (s)); | ^~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ rfc822.c:694: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] 694 | param->attribute = ucase (cpystr (s)); | ^ ~~~~~~~~~~~~~~~~~~ rfc822.c:745:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:745:18: note: place parentheses around the assignment to silence this warning 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ^ | ( ) rfc822.c:745:18: note: use '==' to turn this assignment into an equality comparison 745 | else if (adr = rfc822_parse_address (lst,last,&string,host,0)) { | ^ | == rfc822.c:799:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:799:11: note: place parentheses around the assignment to silence this warning 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ^ | ( ) rfc822.c:799:11: note: use '==' to turn this assignment into an equality comparison 799 | if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr; | ^ | == rfc822.c:801:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:801:16: note: place parentheses around the assignment to silence this warning 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ^ | ( ) rfc822.c:801:16: note: use '==' to turn this assignment into an equality comparison 801 | else if (adr = rfc822_parse_mailbox (string,defaulthost)) { | ^ | == rfc822.c:847:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:847:13: note: place parentheses around the assignment to silence this warning 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ^ | ( ) rfc822.c:847:13: note: use '==' to turn this assignment into an equality comparison 847 | if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) { | ^ | == rfc822.c:906:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 906 | else if (end = rfc822_parse_phrase (s)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:906:16: note: place parentheses around the assignment to silence this warning 906 | else if (end = rfc822_parse_phrase (s)) { | ^ | ( ) rfc822.c:906:16: note: use '==' to turn this assignment into an equality comparison 906 | else if (end = rfc822_parse_phrase (s)) { | ^ | == rfc822.c:1035:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1035:11: note: place parentheses around the assignment to silence this warning 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ^ | ( ) rfc822.c:1035:11: note: use '==' to turn this assignment into an equality comparison 1035 | if (t = rfc822_parse_word (string,wspecials)) { | ^ | == rfc822.c:1103:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1103:14: note: place parentheses around the assignment to silence this warning 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ^ | ( ) rfc822.c:1103:14: note: use '==' to turn this assignment into an equality comparison 1103 | else if (t = rfc822_parse_word (string,wspecials)) { | ^ | == rfc822.c:1113:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1113 | if (string = rfc822_parse_domain (string,&t)) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1113:18: note: place parentheses around the assignment to silence this warning 1113 | if (string = rfc822_parse_domain (string,&t)) { | ^ | ( ) rfc822.c:1113:18: note: use '==' to turn this assignment into an equality comparison 1113 | if (string = rfc822_parse_domain (string,&t)) { | ^ | == rfc822.c:1180:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1180 | while (st = strchr (st,I2C_ESC)) | ~~~^~~~~~~~~~~~~~~~~~~~~ rfc822.c:1180:14: note: place parentheses around the assignment to silence this warning 1180 | while (st = strchr (st,I2C_ESC)) | ^ | ( ) rfc822.c:1180:14: note: use '==' to turn this assignment into an equality comparison 1180 | while (st = strchr (st,I2C_ESC)) | ^ | == rfc822.c:1379:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1379 | if (i = min (len,buf->end - buf->cur)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1379:11: note: place parentheses around the assignment to silence this warning 1379 | if (i = min (len,buf->end - buf->cur)) { | ^ | ( ) rfc822.c:1379:11: note: use '==' to turn this assignment into an equality comparison 1379 | if (i = min (len,buf->end - buf->cur)) { | ^ | == rfc822.c:1470: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] 1470 | 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:1627:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1627:14: note: place parentheses around the assignment to silence this warning 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ^ | ( ) rfc822.c:1627:14: note: use '==' to turn this assignment into an equality comparison 1627 | for (; s = strpbrk (src,"\\\""); src = s + 1) { | ^ | == rfc822.c:1745:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1745 | while (part = part->next); /* until done */ | ~~~~~^~~~~~~~~~~~ rfc822.c:1745:17: note: place parentheses around the assignment to silence this warning 1745 | while (part = part->next); /* until done */ | ^ | ( ) rfc822.c:1745:17: note: use '==' to turn this assignment into an equality comparison 1745 | while (part = part->next); /* until done */ | ^ | == rfc822.c:1813:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1813 | while (part = part->next); /* until done */ | ~~~~~^~~~~~~~~~~~ rfc822.c:1813:17: note: place parentheses around the assignment to silence this warning 1813 | while (part = part->next); /* until done */ | ^ | ( ) rfc822.c:1813:17: note: use '==' to turn this assignment into an equality comparison 1813 | while (part = part->next); /* until done */ | ^ | == rfc822.c:1969:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ rfc822.c:1969:8: note: place parentheses around the assignment to silence this warning 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ^ | ( ) rfc822.c:1969:8: note: use '==' to turn this assignment into an equality comparison 1969 | if (s = strpbrk (tmp,"\015\012")) *s = NIL; | ^ | == 42 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` nntp.c -o nntp.so nntp.c:351:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:351:14: note: place parentheses around the assignment to silence this warning 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ^ | ( ) nntp.c:351:14: note: use '==' to turn this assignment into an equality comparison 351 | while (s = net_getline (LOCAL->nntpstream->netstream)) { | ^ | == nntp.c:356:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ~~^~~~~~~~~~~~~~~~ nntp.c:356:13: note: place parentheses around the assignment to silence this warning 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ^ | ( ) nntp.c:356:13: note: use '==' to turn this assignment into an equality comparison 356 | if (t = strchr (s,' ')) { /* tie off after newsgroup name */ | ^ | == nntp.c:360: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] 360 | 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:360: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] 360 | 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:363: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] 363 | 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:363: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] 363 | 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:395:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ nntp.c:395:9: note: place parentheses around the assignment to silence this warning 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ | ( ) nntp.c:395:9: note: use '==' to turn this assignment into an equality comparison 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ | == nntp.c:395: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] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:395:66: 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] 395 | if (s = sm_read (tmp,&sdb)) do if (nntp_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:398:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ nntp.c:398:12: note: place parentheses around the assignment to silence this warning 398 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) nntp.c:398:12: note: use '==' to turn this assignment into an equality comparison 398 | while (s = sm_read (tmp,&sdb)); | ^ | == nntp.c:429:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ~~^~~~~~~~~~~~~~~~ nntp.c:429:25: note: place parentheses around the assignment to silence this warning 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ^ | ( ) nntp.c:429:25: note: use '==' to turn this assignment into an equality comparison 429 | for (s = wildmat; s = strchr (s,'%'); *s = '*'); | ^ | == nntp.c:555:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 555 | else if (state = newsrc_state (stream,name)) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:555:20: note: place parentheses around the assignment to silence this warning 555 | else if (state = newsrc_state (stream,name)) { | ^ | ( ) nntp.c:555:20: note: use '==' to turn this assignment into an equality comparison 555 | else if (state = newsrc_state (stream,name)) { | ^ | == nntp.c:565: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] 565 | 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:574: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] 574 | 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:733: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] 733 | lcase (strcpy (s,(long) mail_parameters (NIL,GET_NEWSRCCANONHOST,NIL) ? | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 734 | net_host (nstream->netstream) : mb.host)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:83:38: note: passing argument to parameter 'string' here 83 | unsigned char *lcase (unsigned char *string); | ^ nntp.c:852: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] 852 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:853: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] 853 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:895: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] 895 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:895: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] 895 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ nntp.c:928:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 928 | for (t = v = s; c = *v++;) | ~~^~~~~~ nntp.c:928:22: note: place parentheses around the assignment to silence this warning 928 | for (t = v = s; c = *v++;) | ^ | ( ) nntp.c:928:22: note: use '==' to turn this assignment into an equality comparison 928 | for (t = v = s; c = *v++;) | ^ | == nntp.c:998: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] 998 | while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:998: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] 998 | 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:1038:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1038 | if (t = strchr (ov->subject,'\t')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1038:9: note: place parentheses around the assignment to silence this warning 1038 | if (t = strchr (ov->subject,'\t')) { | ^ | ( ) nntp.c:1038:9: note: use '==' to turn this assignment into an equality comparison 1038 | if (t = strchr (ov->subject,'\t')) { | ^ | == nntp.c:1041:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1041 | if (ov->date = strchr (t,'\t')) { | ~~~~~~~~~^~~~~~~~~~~~~~~~~ nntp.c:1041:18: note: place parentheses around the assignment to silence this warning 1041 | if (ov->date = strchr (t,'\t')) { | ^ | ( ) nntp.c:1041:18: note: use '==' to turn this assignment into an equality comparison 1041 | if (ov->date = strchr (t,'\t')) { | ^ | == nntp.c:1044: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] 1044 | if (!elt->day) mail_parse_date (elt,ov->date); | ^~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1048:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1048:26: note: place parentheses around the assignment to silence this warning 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ^ | ( ) nntp.c:1048:26: note: use '==' to turn this assignment into an equality comparison 1048 | if (ov->message_id = strchr (ov->date,'\t')) { | ^ | == nntp.c:1052:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1052:21: note: place parentheses around the assignment to silence this warning 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ^ | ( ) nntp.c:1052:21: note: use '==' to turn this assignment into an equality comparison 1052 | if (ov->references = strchr (ov->message_id,'\t')) { | ^ | == nntp.c:1056:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1056 | if (t = strchr (ov->references,'\t')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1056:10: note: place parentheses around the assignment to silence this warning 1056 | if (t = strchr (ov->references,'\t')) { | ^ | ( ) nntp.c:1056:10: note: use '==' to turn this assignment into an equality comparison 1056 | if (t = strchr (ov->references,'\t')) { | ^ | == nntp.c:1061:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1061 | if (t = strchr (t,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1061:12: note: place parentheses around the assignment to silence this warning 1061 | if (t = strchr (t,'\t')) { | ^ | ( ) nntp.c:1061:12: note: use '==' to turn this assignment into an equality comparison 1061 | if (t = strchr (t,'\t')) { | ^ | == nntp.c:1065:30: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1065 | if (ov->optional.xref = strchr (t,'\t')) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ nntp.c:1065:30: note: place parentheses around the assignment to silence this warning 1065 | if (ov->optional.xref = strchr (t,'\t')) | ^ | ( ) nntp.c:1065:30: note: use '==' to turn this assignment into an equality comparison 1065 | if (ov->optional.xref = strchr (t,'\t')) | ^ | == nntp.c:1098:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1098:13: note: place parentheses around the assignment to silence this warning 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ^ | ( ) nntp.c:1098:13: note: use '==' to turn this assignment into an equality comparison 1098 | if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) { | ^ | == nntp.c:1150:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1151 | &LOCAL->txtsize,NIL)) break; | ~~~~~~~~~~~~~~~~~~~~ nntp.c:1150:22: note: place parentheses around the assignment to silence this warning 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ^ | ( 1151 | &LOCAL->txtsize,NIL)) break; | | ) nntp.c:1150:22: note: use '==' to turn this assignment into an equality comparison 1150 | if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream, | ^ | == nntp.c:1215:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1215 | if (msg = utf8_badcharset (charset)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1215:11: note: place parentheses around the assignment to silence this warning 1215 | if (msg = utf8_badcharset (charset)) { | ^ | ( ) nntp.c:1215:11: note: use '==' to turn this assignment into an equality comparison 1215 | if (msg = utf8_badcharset (charset)) { | ^ | == nntp.c:1260:39: warning: call to undeclared function 'time'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 1260 | unsigned long now = (unsigned long) time (0); | ^ nntp.c:1268:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ~~~~^~~~~~~~~~~~ nntp.c:1268:13: note: place parentheses around the assignment to silence this warning 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ^ | ( ) nntp.c:1268:13: note: use '==' to turn this assignment into an equality comparison 1268 | if (set = pgm->msgno) { /* must be inside this sequence */ | ^ | == nntp.c:1276:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ~~~~^~~~~~~~~~ nntp.c:1276:13: note: place parentheses around the assignment to silence this warning 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ^ | ( ) nntp.c:1276:13: note: use '==' to turn this assignment into an equality comparison 1276 | if (set = pgm->uid) { /* must be inside this sequence */ | ^ | == nntp.c:1313: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] 1313 | (!mail_parse_date (&delt,ov->date) || | ^~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1512:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ~~^~~~~~ nntp.c:1512:25: note: place parentheses around the assignment to silence this warning 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ^ | ( ) nntp.c:1512:25: note: use '==' to turn this assignment into an equality comparison 1512 | for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c; | ^ | == nntp.c:1521:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1521 | if (t = strchr (v,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1521:8: note: place parentheses around the assignment to silence this warning 1521 | if (t = strchr (v,'\t')) { | ^ | ( ) nntp.c:1521:8: note: use '==' to turn this assignment into an equality comparison 1521 | if (t = strchr (v,'\t')) { | ^ | == nntp.c:1523:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1523:12: note: place parentheses around the assignment to silence this warning 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ^ | ( ) nntp.c:1523:12: note: use '==' to turn this assignment into an equality comparison 1523 | if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) { | ^ | == nntp.c:1528:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1528 | if (v = strchr (t,'\t')) { | ~~^~~~~~~~~~~~~~~~~ nntp.c:1528:10: note: place parentheses around the assignment to silence this warning 1528 | if (v = strchr (t,'\t')) { | ^ | ( ) nntp.c:1528:10: note: use '==' to turn this assignment into an equality comparison 1528 | if (v = strchr (t,'\t')) { | ^ | == nntp.c:1530: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] 1530 | if (mail_parse_date (&telt,t)) r->date = mail_longdate (&telt); | ^ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ nntp.c:1678:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1678 | if (netstream = /* try to open ordinary connection */ | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1679 | net_open (&mb,dv,port, | ~~~~~~~~~~~~~~~~~~~~~~ 1680 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1681 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1678:21: note: place parentheses around the assignment to silence this warning 1678 | if (netstream = /* try to open ordinary connection */ | ^ | ( 1679 | net_open (&mb,dv,port, 1680 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), 1681 | "*nntps",nntp_sslport ? nntp_sslport : NNTPSSLPORT)) { | | ) nntp.c:1678:21: note: use '==' to turn this assignment into an equality comparison 1678 | if (netstream = /* try to open ordinary connection */ | ^ | == nntp.c:1719:35: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1719 | if (stream->netstream->stream = | ~~~~~~~~~~~~~~~~~~~~~~~~~~^ 1720 | (*stls) (stream->netstream->stream,mb.host, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1721 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1722 | (mb.novalidate ? NET_NOVALIDATECERT:NIL))) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1719:35: note: place parentheses around the assignment to silence this warning 1719 | if (stream->netstream->stream = | ^ | ( 1720 | (*stls) (stream->netstream->stream,mb.host, 1721 | (mb.tlssslv23 ? NIL : NET_TLSCLIENT) | 1722 | (mb.novalidate ? NET_NOVALIDATECERT:NIL))) | | ) nntp.c:1719:35: note: use '==' to turn this assignment into an equality comparison 1719 | if (stream->netstream->stream = | ^ | == nntp.c:1816:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ~~~~~^~~~~~~~~~~~~~~~ nntp.c:1816:14: note: place parentheses around the assignment to silence this warning 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | ( ) nntp.c:1816:14: note: use '==' to turn this assignment into an equality comparison 1816 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | == nntp.c:1817: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] 1817 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1817: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] 1817 | if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1818: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] 1818 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1818: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] 1818 | else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"HDR")) NNTP.ext.hdr = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1819: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] 1819 | else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"PAT")) NNTP.ext.pat = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"PAT")) NNTP.ext.pat = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"STARTTLS")) NNTP.ext.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1821: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] 1821 | else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"MULTIDOMAIN")) NNTP.ext.multidomain = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1822: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] 1822 | else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1824: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] 1824 | else if (!compare_cstring (t,"AUTHINFO") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1824: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] 1824 | else if (!compare_cstring (t,"AUTHINFO") && args) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1827: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] 1827 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1827: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] 1827 | if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ nntp.c:1915: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] 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^~~~~~~~~ /usr/include/string.h:123:26: note: passing argument to parameter here 123 | char *strstr(const char *, const char *) __pure; | ^ nntp.c:1915:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1915 | if (s = strstr (env->date," (")) *s = NIL; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:1915:9: note: place parentheses around the assignment to silence this warning 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^ | ( ) nntp.c:1915:9: note: use '==' to turn this assignment into an equality comparison 1915 | if (s = strstr (env->date," (")) *s = NIL; | ^ | == nntp.c:2213:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2213 | while (t = strstr (s,"\015\012.")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ nntp.c:2213:12: note: place parentheses around the assignment to silence this warning 2213 | while (t = strstr (s,"\015\012.")) { | ^ | ( ) nntp.c:2213:12: note: use '==' to turn this assignment into an equality comparison 2213 | while (t = strstr (s,"\015\012.")) { | ^ | == 64 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` smtp.c -o smtp.so smtp.c:162: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] 162 | else if (!compare_cstring (mb.service,"submit")) { | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:162: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] 162 | else if (!compare_cstring (mb.service,"submit")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:168:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 168 | if (netstream = /* try to open ordinary connection */ | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 169 | net_open (&mb,dv,port, | ~~~~~~~~~~~~~~~~~~~~~~ 170 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 171 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ smtp.c:168:21: note: place parentheses around the assignment to silence this warning 168 | if (netstream = /* try to open ordinary connection */ | ^ | ( 169 | net_open (&mb,dv,port, 170 | (NETDRIVER *) mail_parameters (NIL,GET_SSLDRIVER,NIL), 171 | "*smtps",smtp_sslport ? smtp_sslport : SMTPSSLPORT)) { | | ) smtp.c:168:21: note: use '==' to turn this assignment into an equality comparison 168 | if (netstream = /* try to open ordinary connection */ | ^ | == smtp.c:180: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] 180 | s = compare_cstring ("localhost",mb.host) ? | ^~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:180: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] 180 | s = compare_cstring ("localhost",mb.host) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:693: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] 693 | if (!compare_cstring (s,"SIZE")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:693: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] 693 | if (!compare_cstring (s,"SIZE")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:697: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] 697 | else if (!compare_cstring (s,"DELIVERBY")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:697: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] 697 | else if (!compare_cstring (s,"DELIVERBY")) { | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:701: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] 701 | else if (!compare_cstring (s,"ATRN")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:701: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] 701 | else if (!compare_cstring (s,"ATRN")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:705: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] 705 | else if (!compare_cstring (s,"AUTH")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:705: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] 705 | else if (!compare_cstring (s,"AUTH")) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SIZE")) ESMTP.size.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SIZE")) ESMTP.size.ok = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"8BITMIME")) ESMTP.eightbit.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:712: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] 712 | else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"DSN")) ESMTP.dsn.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:713: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] 713 | else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ATRN")) ESMTP.atrn.ok = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"ATRN")) ESMTP.atrn.ok = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SEND")) ESMTP.service.send = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SEND")) ESMTP.service.send = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SOML")) ESMTP.service.soml = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SOML")) ESMTP.service.soml = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SAML")) ESMTP.service.saml = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"SAML")) ESMTP.service.saml = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"EXPN")) ESMTP.service.expn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"EXPN")) ESMTP.service.expn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"HELP")) ESMTP.service.help = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:719: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] 719 | else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"TURN")) ESMTP.service.turn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:720: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] 720 | else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ETRN")) ESMTP.service.etrn = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:721: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] 721 | else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"STARTTLS")) ESMTP.service.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:722: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] 722 | else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:723: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] 723 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:723: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] 723 | else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"PIPELINING")) ESMTP.service.pipe = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | 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,"PIPELINING")) ESMTP.service.pipe = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"ENHANCEDSTATUSCODES")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:725: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] 725 | else if (!compare_cstring (s,"ENHANCEDSTATUSCODES")) | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:727: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] 727 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:727: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] 727 | else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:728: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] 728 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:728: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] 728 | else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ smtp.c:786:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 786 | while (t = strstr (s,"\015\012.")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ smtp.c:786:12: note: place parentheses around the assignment to silence this warning 786 | while (t = strstr (s,"\015\012.")) { | ^ | ( ) smtp.c:786:12: note: use '==' to turn this assignment into an equality comparison 786 | while (t = strstr (s,"\015\012.")) { | ^ | == 48 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` imap4r1.c -o imap4r1.so imap4r1.c:503:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:503:9: note: place parentheses around the assignment to silence this warning 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ | ( ) imap4r1.c:503:9: note: use '==' to turn this assignment into an equality comparison 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ | == imap4r1.c:503: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] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:503:66: 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] 503 | if (s = sm_read (tmp,&sdb)) do if (imap_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:506:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 506 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:506:12: note: place parentheses around the assignment to silence this warning 506 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) imap4r1.c:506:12: note: use '==' to turn this assignment into an equality comparison 506 | while (s = sm_read (tmp,&sdb)); | ^ | == imap4r1.c:563: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] 563 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST"; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:563: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] 563 | if (!compare_cstring (cmd,"LIST")) cmd = "RLIST"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:565: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] 565 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB"; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:565: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] 565 | else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB"; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:577: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] 577 | 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:578: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] 578 | !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:701: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] 701 | mm_log (reply->text,ret ? NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:848:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:848:20: note: place parentheses around the assignment to silence this warning 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ^ | ( ) imap4r1.c:848:20: note: use '==' to turn this assignment into an equality comparison 848 | else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp)); | ^ | == imap4r1.c:869: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] 869 | 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:870: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] 870 | (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:870: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] 870 | (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: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] 871 | if (reply) mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:876: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] 876 | 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:984: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] 984 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX"); | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:984: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] 984 | stream->inbox = !compare_cstring (mb.mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:994: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] 994 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1040: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] 1040 | !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:1044: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] 1044 | 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:1044: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] 1044 | 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:1080: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] 1080 | if (compare_cstring (reply->tag,tag)) { | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1082: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] 1082 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1097: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] 1097 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1147: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] 1147 | else if (compare_cstring (reply->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1148: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] 1148 | while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag)) | ^~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:1157: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] 1157 | lsterr = cpystr (reply->text); | ^~~~~~~~~~~ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ imap4r1.c:1209: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] 1209 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1239: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] 1239 | !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:1244: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] 1244 | 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:1301: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] 1301 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1316:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1316:13: note: place parentheses around the assignment to silence this warning 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:1316:13: note: use '==' to turn this assignment into an equality comparison 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:1316:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~^~~~~ imap4r1.c:1316:45: note: place parentheses around the assignment to silence this warning 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:1316:45: note: use '==' to turn this assignment into an equality comparison 1316 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:1341: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] 1341 | if (!imap_OK (stream,reply)) mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1362: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] 1362 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1415: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] 1415 | ov.date = env->date; | ^ ~~~~~~~~~ imap4r1.c:1463: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] 1463 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1498:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1499 | min (set->last,stream->nmsgs)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1498:10: note: place parentheses around the assignment to silence this warning 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ^ | ( 1499 | min (set->last,stream->nmsgs)) { | | ) imap4r1.c:1498:10: note: use '==' to turn this assignment into an equality comparison 1498 | if (j = (set->last == 0xffffffff) ? stream->nmsgs : | ^ | == imap4r1.c:1521:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1521 | if (k = (k > i) ? k - i : 0) | ~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1521:9: note: place parentheses around the assignment to silence this warning 1521 | if (k = (k > i) ? k - i : 0) | ^ | ( ) imap4r1.c:1521:9: note: use '==' to turn this assignment into an equality comparison 1521 | if (k = (k > i) ? k - i : 0) | ^ | == imap4r1.c:1590: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] 1590 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1592: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] 1592 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1699:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1699 | else if (t = strstr (section,".HEADER")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:1699:16: note: place parentheses around the assignment to silence this warning 1699 | else if (t = strstr (section,".HEADER")) { | ^ | ( ) imap4r1.c:1699:16: note: use '==' to turn this assignment into an equality comparison 1699 | else if (t = strstr (section,".HEADER")) { | ^ | == imap4r1.c:1822: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] 1822 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1832: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] 1832 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1841: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] 1841 | mm_log (reply->text,WARN); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1845: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] 1845 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1883:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ~~^~~~~~~~~~~~~~~~~~~ imap4r1.c:1883:11: note: place parentheses around the assignment to silence this warning 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ^ | ( ) imap4r1.c:1883:11: note: use '==' to turn this assignment into an equality comparison 1883 | if (k = imap_uidlookahead) {/* build UID list */ | ^ | == imap4r1.c:1898: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] 1898 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1934: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] 1934 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:1975: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] 1975 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2043: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] 2043 | !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:2047:50: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ~~^~~~~~~~~~~~ imap4r1.c:2047:50: note: place parentheses around the assignment to silence this warning 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ^ | ( ) imap4r1.c:2047:50: note: use '==' to turn this assignment into an equality comparison 2047 | for (set = ss; set; set = set->next) if (i = set->first) { | ^ | == imap4r1.c:2062: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] 2062 | 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:2068: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] 2068 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2104: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] 2104 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2167: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] 2167 | 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:2174: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] 2174 | 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:2183: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] 2183 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2270: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] 2270 | if (!compare_cstring (thr->name,type)) | ^~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2270: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] 2270 | if (!compare_cstring (thr->name,type)) | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2330: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] 2330 | 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:2337: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] 2337 | 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:2345: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] 2345 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2369: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] 2369 | mm_log (reply->text,imap_OK (stream,reply) ? (long) NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2394: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] 2394 | else if (mail_sequence (stream,sequence)) { | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ imap4r1.c:2422: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] 2422 | if (reply) mm_log (reply->text,ret ? (long) NIL : ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2460: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] 2460 | else if (ir && pc && LOCAL->referral && mail_sequence (stream,sequence) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ imap4r1.c:2464: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] 2464 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2517: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] 2517 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2580: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] 2580 | mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2610: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] 2610 | if (!mail_parse_date (&elt,date)) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:2614: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] 2614 | LOCAL->reply.tag = LOCAL->reply.line = cpystr ("*"); | ^ ~~~~~~~~~~~~ imap4r1.c:2615: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] 2615 | LOCAL->reply.key = "BAD"; | ^ ~~~~~ imap4r1.c:2616: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] 2616 | LOCAL->reply.text = "Bad date in append"; | ^ ~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2649:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2649:15: note: place parentheses around the assignment to silence this warning 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ^ | ( ) imap4r1.c:2649:15: note: use '==' to turn this assignment into an equality comparison 2649 | if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT)) | ^ | == imap4r1.c:2704:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2704:13: note: place parentheses around the assignment to silence this warning 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:2704:13: note: use '==' to turn this assignment into an equality comparison 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:2704:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ~~^~~~~ imap4r1.c:2704:45: note: place parentheses around the assignment to silence this warning 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | ( ) imap4r1.c:2704:45: note: use '==' to turn this assignment into an equality comparison 2704 | if (thr = LOCAL->cap.threader) while (t = thr) { | ^ | == imap4r1.c:2812: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] 2812 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2836: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] 2836 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2858: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] 2858 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2881: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] 2881 | else mm_log (reply->text,ERROR); | ^~~~~~~~~~~ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ imap4r1.c:2918: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] 2918 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") && | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2918: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] 2918 | (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2919: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] 2919 | compare_cstring (cmd,"STORE") && | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2919: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] 2919 | compare_cstring (cmd,"STORE") && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"SEARCH")) ? | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2920: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] 2920 | compare_cstring (cmd,"SEARCH")) ? | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:2926:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2926 | if (arglst = args) while (arg = *arglst++) { | ~~~~~~~^~~~~~ imap4r1.c:2926:14: note: place parentheses around the assignment to silence this warning 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | ( ) imap4r1.c:2926:14: note: use '==' to turn this assignment into an equality comparison 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | == imap4r1.c:2926:33: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2926 | if (arglst = args) while (arg = *arglst++) { | ~~~~^~~~~~~~~~~ imap4r1.c:2926:33: note: place parentheses around the assignment to silence this warning 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | ( ) imap4r1.c:2926:33: note: use '==' to turn this assignment into an equality comparison 2926 | if (arglst = args) while (arg = *arglst++) { | ^ | == imap4r1.c:2946:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2946:17: note: place parentheses around the assignment to silence this warning 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ^ | ( ) imap4r1.c:2946:17: note: use '==' to turn this assignment into an equality comparison 2946 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND)) | ^ | == imap4r1.c:2950:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:2950:17: note: place parentheses around the assignment to silence this warning 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ^ | ( ) imap4r1.c:2950:17: note: use '==' to turn this assignment into an equality comparison 2950 | if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply; | ^ | == imap4r1.c:2958:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2959 | CMDBASE+MAXCOMMAND)) return reply; | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:2958:12: note: place parentheses around the assignment to silence this warning 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ^ | ( 2959 | CMDBASE+MAXCOMMAND)) return reply; | | ) imap4r1.c:2958:12: note: use '==' to turn this assignment into an equality comparison 2958 | if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL, | ^ | == imap4r1.c:2962:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2962 | while (list = list->next); | ~~~~~^~~~~~~~~~~~ imap4r1.c:2962:19: note: place parentheses around the assignment to silence this warning 2962 | while (list = list->next); | ^ | ( ) imap4r1.c:2962:19: note: use '==' to turn this assignment into an equality comparison 2962 | while (list = list->next); | ^ | == imap4r1.c:2966:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2967 | CMDBASE+MAXCOMMAND)) | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:2966:17: note: place parentheses around the assignment to silence this warning 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ^ | ( 2967 | CMDBASE+MAXCOMMAND)) | | ) imap4r1.c:2966:17: note: use '==' to turn this assignment into an equality comparison 2966 | if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text, | ^ | == imap4r1.c:3052:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3052:17: note: place parentheses around the assignment to silence this warning 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ^ | ( ) imap4r1.c:3052:17: note: use '==' to turn this assignment into an equality comparison 3052 | if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND)) | ^ | == imap4r1.c:3073: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] 3073 | if (!map->date || mail_parse_date (&elt,map->date)) { | ^~~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:3074:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3074 | if (t = map->flags) { /* flags given? */ | ~~^~~~~~~~~~~~ imap4r1.c:3074:10: note: place parentheses around the assignment to silence this warning 3074 | if (t = map->flags) { /* flags given? */ | ^ | ( ) imap4r1.c:3074:10: note: use '==' to turn this assignment into an equality comparison 3074 | if (t = map->flags) { /* flags given? */ | ^ | == imap4r1.c:3086:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3087 | CMDBASE+MAXCOMMAND)) return reply; | ~~~~~~~~~~~~~~~~~~~ imap4r1.c:3086:16: note: place parentheses around the assignment to silence this warning 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ^ | ( 3087 | CMDBASE+MAXCOMMAND)) return reply; | | ) imap4r1.c:3086:16: note: use '==' to turn this assignment into an equality comparison 3086 | if (reply = imap_send_astring (stream,tag,&s,&st,NIL, | ^ | == imap4r1.c:3090:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3090:14: note: place parentheses around the assignment to silence this warning 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ^ | ( ) imap4r1.c:3090:14: note: use '==' to turn this assignment into an equality comparison 3090 | if (reply = imap_send_literal (stream,tag,&s,map->message)) | ^ | == imap4r1.c:3120:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3120 | while (list = list->next); | ~~~~~^~~~~~~~~~~~ imap4r1.c:3120:19: note: place parentheses around the assignment to silence this warning 3120 | while (list = list->next); | ^ | ( ) imap4r1.c:3120:19: note: use '==' to turn this assignment into an equality comparison 3120 | while (list = list->next); | ^ | == imap4r1.c:3199: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] 3199 | 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:3354:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3354 | if (hdr = pgm->header) do { | ~~~~^~~~~~~~~~~~~ imap4r1.c:3354:11: note: place parentheses around the assignment to silence this warning 3354 | if (hdr = pgm->header) do { | ^ | ( ) imap4r1.c:3354:11: note: use '==' to turn this assignment into an equality comparison 3354 | if (hdr = pgm->header) do { | ^ | == imap4r1.c:3356:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3356:15: note: place parentheses around the assignment to silence this warning 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ^ | ( ) imap4r1.c:3356:15: note: use '==' to turn this assignment into an equality comparison 3356 | if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit)) | ^ | == imap4r1.c:3359:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3359:15: note: place parentheses around the assignment to silence this warning 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ^ | ( ) imap4r1.c:3359:15: note: use '==' to turn this assignment into an equality comparison 3359 | if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit)) | ^ | == imap4r1.c:3361:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3361 | } while (hdr = hdr->next); | ~~~~^~~~~~~~~~~ imap4r1.c:3361:16: note: place parentheses around the assignment to silence this warning 3361 | } while (hdr = hdr->next); | ^ | ( ) imap4r1.c:3361:16: note: use '==' to turn this assignment into an equality comparison 3361 | } while (hdr = hdr->next); | ^ | == imap4r1.c:3364:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3364:15: note: place parentheses around the assignment to silence this warning 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ^ | ( ) imap4r1.c:3364:15: note: use '==' to turn this assignment into an equality comparison 3364 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit)) | ^ | == imap4r1.c:3367:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3367:15: note: place parentheses around the assignment to silence this warning 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ^ | ( ) imap4r1.c:3367:15: note: use '==' to turn this assignment into an equality comparison 3367 | if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit)) | ^ | == imap4r1.c:3373:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3373:15: note: place parentheses around the assignment to silence this warning 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ^ | ( ) imap4r1.c:3373:15: note: use '==' to turn this assignment into an equality comparison 3373 | if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit)) | ^ | == imap4r1.c:3451:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3451:15: note: place parentheses around the assignment to silence this warning 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ^ | ( ) imap4r1.c:3451:15: note: use '==' to turn this assignment into an equality comparison 3451 | if (reply = imap_send_literal (stream,tag,s,&st)) return reply; | ^ | == imap4r1.c:3453:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3453:15: note: place parentheses around the assignment to silence this warning 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ^ | ( ) imap4r1.c:3453:15: note: use '==' to turn this assignment into an equality comparison 3453 | if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit)) | ^ | == imap4r1.c:3554:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3554:15: note: place parentheses around the assignment to silence this warning 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ^ | ( ) imap4r1.c:3554:15: note: use '==' to turn this assignment into an equality comparison 3554 | if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) { | ^ | == imap4r1.c:3556: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] 3556 | 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:3558: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] 3558 | 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:3563: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] 3563 | if (tag && !compare_cstring (tag,reply->tag)) return reply; | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3589: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] 3589 | if (!(LOCAL->reply.line = text)) { | ^ ~~~~ imap4r1.c:3595: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] 3595 | if (stream->debug) mm_dlog (LOCAL->reply.line); | ^~~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #define LOCAL ((IMAPLOCAL *) stream->local) | ^ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:3596: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] 3596 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) { | ^~~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #define LOCAL ((IMAPLOCAL *) stream->local) | ^ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3596: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] 3596 | if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3602: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] 3602 | if (strcmp (LOCAL->reply.tag,"+")) { | ^~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #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:3604: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] 3604 | if (!(LOCAL->reply.key = strtok_r (NIL," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3614: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] 3614 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3615: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] 3615 | LOCAL->reply.text = LOCAL->reply.key + strlen (LOCAL->reply.key); | ^~~~~~~~~~~~~~~~ imap4r1.c:106:15: note: expanded from macro 'LOCAL' 106 | #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:3618: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] 3618 | LOCAL->reply.key = "BAD"; /* so it barfs if not expecting continuation */ | ^ ~~~~~ imap4r1.c:3619: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] 3619 | if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3620: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] 3620 | LOCAL->reply.text = ""; | ^ ~~ imap4r1.c:3640: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] 3640 | LOCAL->reply.tag = LOCAL->reply.line = cpystr (tag ? tag : "*"); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3641: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] 3641 | LOCAL->reply.key = "NO"; | ^ ~~~~ imap4r1.c:3642: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] 3642 | LOCAL->reply.text = text; | ^ ~~~~ imap4r1.c:3657: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] 3657 | 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:3658: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] 3658 | imap_parse_response (stream,reply->text,NIL,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3662: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] 3662 | 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:3663: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] 3663 | imap_parse_response (stream,reply->text,WARN,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3665: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] 3665 | 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:3666: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] 3666 | imap_parse_response (stream,reply->text,ERROR,NIL); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:3690: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] 3690 | msgno = strtoul (reply->key,(char **) &s,10); | ^~~~~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3704: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] 3704 | s = ucase (strtok_r (reply->text," ",&r)); | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3704: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] 3704 | s = ucase (strtok_r (reply->text," ",&r)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:3705: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] 3705 | t = strtok_r (NIL,"\n",&r); /* and locate the text after it */ | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3708: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] 3708 | 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:3710: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] 3710 | 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: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,"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:3720: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] 3720 | else if (t && (!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:3720:52: 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] 3720 | else if (t && (!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:3731: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] 3731 | while ((prop = (strtok_r (t," )",&r))) && (t = strtok_r (NIL,"\n",&r))) { | ^ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3731:52: 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] 3731 | while ((prop = (strtok_r (t," )",&r))) && (t = strtok_r (NIL,"\n",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3735: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] 3735 | if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t); | ^~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:3735: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] 3735 | 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:3743: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] 3743 | mail_parse_date (elt,"01-Jan-1970 00:00:00 +0000"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ imap4r1.c:3749: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] 3749 | LOCAL->lastuid.uid = elt->private.uid = strtoul (t,(char **) &t,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3790: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] 3790 | if (!(s = strchr (md.what,']'))) { | ^ ~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3792: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] 3792 | for (s = md.what; *s && (isdigit (*s) || (*s == '.')); s++); | ^ ~~~~~~~ imap4r1.c:3794: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] 3794 | 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:3795: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] 3795 | (!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:3805: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] 3805 | 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:3805: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] 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ ~~~~~~~~~~~~~~~~~~ imap4r1.c:3805:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:3805:19: note: place parentheses around the assignment to silence this warning 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ | ( ) imap4r1.c:3805:19: note: use '==' to turn this assignment into an equality comparison 3805 | else if (t = strchr (s = t,' ')) *t++ = '\0'; | ^ | == imap4r1.c:3810: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] 3810 | md.first = strtoul (s+1,(char **) &s,10) + 1; | ^~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3853: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] 3853 | elt->rfc822_size = strtoul (t,(char **) &t,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3889: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] 3889 | 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:3896: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] 3896 | 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:3898: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] 3898 | (s = strtok_r (reply->text+1," )",&r))) | ^~~~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3898: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] 3898 | (s = strtok_r (reply->text+1," )",&r))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3901: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] 3901 | compare_cstring (s,stream->user_flags[i]); i++); | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3907: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] 3907 | else if (!stream->user_flags[i]) stream->user_flags[i++] = cpystr (s); | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ imap4r1.c:3909: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] 3909 | while (s = strtok_r (NIL," )",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3909:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3909 | while (s = strtok_r (NIL," )",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3909:14: note: place parentheses around the assignment to silence this warning 3909 | while (s = strtok_r (NIL," )",&r)); | ^ | ( ) imap4r1.c:3909:14: note: use '==' to turn this assignment into an equality comparison 3909 | while (s = strtok_r (NIL," )",&r)); | ^ | == imap4r1.c:3910: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] 3910 | 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:3912: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] 3912 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3912: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] 3912 | if (reply->text && (t = strtok_r (reply->text," ",&r))) do | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3913: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] 3913 | if (i = strtoul (t,NIL,10)) { | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3913:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3913 | if (i = strtoul (t,NIL,10)) { | ~~^~~~~~~~~~~~~~~~~~~~ imap4r1.c:3913:13: note: place parentheses around the assignment to silence this warning 3913 | if (i = strtoul (t,NIL,10)) { | ^ | ( ) imap4r1.c:3913:13: note: use '==' to turn this assignment into an equality comparison 3913 | if (i = strtoul (t,NIL,10)) { | ^ | == imap4r1.c:3922: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] 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3922:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3922 | } while (t = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3922:18: note: place parentheses around the assignment to silence this warning 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:3922:18: note: use '==' to turn this assignment into an equality comparison 3922 | } while (t = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:3924: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] 3924 | 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:3932: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] 3932 | if (reply->text && (t = strtok_r (reply->text," ",&r))) { | ^~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:3932: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] 3932 | if (reply->text && (t = strtok_r (reply->text," ",&r))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3933: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] 3933 | 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:3936: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] 3936 | while ((t = strtok_r (NIL," ",&r)) && (LOCAL->sortsize < stream->nmsgs)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:3942: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] 3942 | 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:3946:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 3946 | if (s = reply->text) { | ~~^~~~~~~~~~~~~ imap4r1.c:3946:11: note: place parentheses around the assignment to silence this warning 3946 | if (s = reply->text) { | ^ | ( ) imap4r1.c:3946:11: note: use '==' to turn this assignment into an equality comparison 3946 | if (s = reply->text) { | ^ | == imap4r1.c:3957: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] 3957 | 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:3961: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] 3961 | (*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:3961: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] 3961 | (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) && | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:3967: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] 3967 | 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:3967: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] 3967 | while (*txt && (s = strchr (txt,' '))) { | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:3970: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] 3970 | i = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:3971: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] 3971 | if (!compare_cstring (txt,"MESSAGES")) { | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3975: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] 3975 | else if (!compare_cstring (txt,"RECENT")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3979: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] 3979 | else if (!compare_cstring (txt,"UNSEEN")) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3983: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] 3983 | else if (!compare_cstring (txt,"UIDNEXT")) { | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3987: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] 3987 | else if (!compare_cstring (txt,"UIDVALIDITY")) { | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:3996: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] 3996 | 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:4004: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] 4004 | 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: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] 4004 | 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:4006: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] 4006 | (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:4006: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] 4006 | (s = strchr (reply->text,')')) && (s[1] == ' ')) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010: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] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^~~~~~~~~~~~~ /usr/include/string.h:126:22: note: passing argument to parameter here 126 | char *strtok_r(char *, const char *, char **); | ^ imap4r1.c:4010: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] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4010:11: note: place parentheses around the assignment to silence this warning 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ | ( ) imap4r1.c:4010:11: note: use '==' to turn this assignment into an equality comparison 4010 | if (t = strtok_r (reply->text+1," ",&r)) do { | ^ | == imap4r1.c:4011: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] 4011 | if (!compare_cstring (t,"\\NoInferiors")) i |= LATT_NOINFERIORS; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"\\NoSelect")) i |= LATT_NOSELECT; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4013: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] 4013 | else if (!compare_cstring (t,"\\Marked")) i |= LATT_MARKED; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4014: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] 4014 | else if (!compare_cstring (t,"\\Unmarked")) i |= LATT_UNMARKED; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4015: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] 4015 | else if (!compare_cstring (t,"\\HasChildren")) i |= LATT_HASCHILDREN; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4016: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] 4016 | else if (!compare_cstring (t,"\\HasNoChildren")) i |= LATT_HASNOCHILDREN; | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4019: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] 4019 | while (t = strtok_r (NIL," ",&r)); | ^ ~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4019:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4019 | while (t = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4019:14: note: place parentheses around the assignment to silence this warning 4019 | while (t = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:4019:14: note: use '==' to turn this assignment into an equality comparison 4019 | while (t = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:4030:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4030:11: note: place parentheses around the assignment to silence this warning 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ^ | ( ) imap4r1.c:4030:11: note: use '==' to turn this assignment into an equality comparison 4030 | if (t = imap_parse_astring (stream,&s,reply,&j)) { | ^ | == imap4r1.c:4033: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] 4033 | sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t); | ^ ~~~~~~~~~~ imap4r1.c:4033: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] 4033 | 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:4036: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] 4036 | if (reply->key[1] == 'S') mm_lsub (stream,delimiter,s,i); | ^ ./mail.h:1603:54: note: passing argument to parameter 'name' here 1603 | void mm_lsub (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4037: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] 4037 | else mm_list (stream,delimiter,s,i); | ^ ./mail.h:1602:54: note: passing argument to parameter 'name' here 1602 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4041: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] 4041 | 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:4048:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4048 | if (s = reply->text) { /* parse namespace results */ | ~~^~~~~~~~~~~~~ imap4r1.c:4048:11: note: place parentheses around the assignment to silence this warning 4048 | if (s = reply->text) { /* parse namespace results */ | ^ | ( ) imap4r1.c:4048:11: note: use '==' to turn this assignment into an equality comparison 4048 | if (s = reply->text) { /* parse namespace results */ | ^ | == imap4r1.c:4064: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] 4064 | 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:4070: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] 4070 | do if ((ac->identifier = imap_parse_astring (stream,&s,reply,NIL)) && | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4072: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] 4072 | ac->rights = imap_parse_astring (stream,&s,reply,NIL); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4081: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] 4081 | else if (ar) (*ar) (stream,t,al); | ^ imap4r1.c:4085: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] 4085 | else if (ar) (*ar) (stream,t,NIL); | ^ imap4r1.c:4089: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] 4089 | 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:4093: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] 4093 | if (s && (*s++ == ' ') && (id = imap_parse_astring (stream,&s,reply,NIL))){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4095: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] 4095 | (r = imap_parse_astring (stream,&s,reply,NIL))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4109: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] 4109 | else if (lr) (*lr) (stream,t,id,r,rl); | ^ imap4r1.c:4114: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] 4114 | else if (lr) (*lr) (stream,t,id,r,NIL); | ^ imap4r1.c:4132: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] 4132 | 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:4136: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] 4136 | if (s && (*s++ == ' ') && (r = imap_parse_astring (stream,&s,reply,NIL))) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4142: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] 4142 | else if (mr) (*mr) (stream,t,r); | ^ imap4r1.c:4154: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] 4154 | 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:4165: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] 4165 | if ((qc->name = imap_parse_astring (stream,&s,reply,NIL)) && s && | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4167: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] 4167 | if (isdigit (*s)) qc->usage = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4168: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] 4168 | 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:4168: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] 4168 | else if (t = strchr (s,' ')) t = s; | ^ ~~~~~~~~~~~~~~ imap4r1.c:4168:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4168 | else if (t = strchr (s,' ')) t = s; | ~~^~~~~~~~~~~~~~~~ imap4r1.c:4168:15: note: place parentheses around the assignment to silence this warning 4168 | else if (t = strchr (s,' ')) t = s; | ^ | ( ) imap4r1.c:4168:15: note: use '==' to turn this assignment into an equality comparison 4168 | else if (t = strchr (s,' ')) t = s; | ^ | == imap4r1.c:4170: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] 4170 | if (isdigit (*s)) qc->limit = strtoul (s,(char **) &s,10); | ^ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4171: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] 4171 | else if (t = strpbrk (s," )")) t = s; | ^ /usr/include/string.h:114:27: note: passing argument to parameter here 114 | char *strpbrk(const char *, const char *) __pure; | ^ imap4r1.c:4171: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] 4171 | else if (t = strpbrk (s," )")) t = s; | ^ ~~~~~~~~~~~~~~~~ imap4r1.c:4171:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4171 | else if (t = strpbrk (s," )")) t = s; | ~~^~~~~~~~~~~~~~~~~~ imap4r1.c:4171:17: note: place parentheses around the assignment to silence this warning 4171 | else if (t = strpbrk (s," )")) t = s; | ^ | ( ) imap4r1.c:4171:17: note: use '==' to turn this assignment into an equality comparison 4171 | else if (t = strpbrk (s," )")) t = s; | ^ | == imap4r1.c:4176: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] 4176 | if (qt) (*qt) (stream,t,ql); | ^ imap4r1.c:4195: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] 4195 | 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:4210: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] 4210 | else if (qr) (*qr) (stream,t,rl); | ^ 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,"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:4221: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] 4221 | 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: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,NIL,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | 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,"NO")) | ^~~~~~~~~~ /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,WARN,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | 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,"BAD")) | ^~~~~~~~~~ /usr/include/string.h:85:25: note: passing argument to parameter here 85 | int strcmp(const char *, const char *) __pure; | ^ imap4r1.c:4226: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] 4226 | imap_parse_response (stream,reply->text,ERROR,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ imap4r1.c:4227: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] 4227 | 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:4229: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] 4229 | imap_parse_response (stream,reply->text,BYE,T); | ^~~~~~~~~~~ imap4r1.c:227:52: note: passing argument to parameter 'text' here 227 | void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy); | ^ 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,"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:4232: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] 4232 | imap_parse_capabilities (stream,reply->text); | ^~~~~~~~~~~ imap4r1.c:262:56: note: passing argument to parameter 't' here 262 | void imap_parse_capabilities (MAILSTREAM *stream,char *t); | ^ imap4r1.c:4233: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] 4233 | 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:4235: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] 4235 | ((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:4236: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] 4236 | sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text); | ^ ~~~~~~~~~~ imap4r1.c:4236: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] 4236 | 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:4238: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] 4238 | mm_list (stream,NIL,t,NIL); | ^ ./mail.h:1602:54: note: passing argument to parameter 'name' here 1602 | void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes); | ^ imap4r1.c:4268:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4268:11: note: place parentheses around the assignment to silence this warning 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ^ | ( ) imap4r1.c:4268:11: note: use '==' to turn this assignment into an equality comparison 4268 | if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0'; | ^ | == imap4r1.c:4271: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] 4271 | if (!compare_cstring (t,"CAPABILITY")) imap_parse_capabilities(stream,s); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4271: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] 4271 | if (!compare_cstring (t,"CAPABILITY")) imap_parse_capabilities(stream,s); | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4272: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] 4272 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4272: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] 4272 | else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') && | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4278:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4278 | if (s = strtok_r (s+1," ",&r)) do { | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4278:8: note: place parentheses around the assignment to silence this warning 4278 | if (s = strtok_r (s+1," ",&r)) do { | ^ | ( ) imap4r1.c:4278:8: note: use '==' to turn this assignment into an equality comparison 4278 | if (s = strtok_r (s+1," ",&r)) do { | ^ | == imap4r1.c:4280: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] 4280 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4280: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] 4280 | if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4281: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] 4281 | else if (!compare_cstring (s,"\\Deleted")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4281: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] 4281 | else if (!compare_cstring (s,"\\Deleted")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4283: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] 4283 | else if (!compare_cstring (s,"\\Flagged")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4283: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] 4283 | else if (!compare_cstring (s,"\\Flagged")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4285: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] 4285 | else if (!compare_cstring (s,"\\Answered")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4285: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] 4285 | else if (!compare_cstring (s,"\\Answered")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4287: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] 4287 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4287: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] 4287 | else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4292:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4292 | while (s = strtok_r (NIL," ",&r)); | ~~^~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4292:11: note: place parentheses around the assignment to silence this warning 4292 | while (s = strtok_r (NIL," ",&r)); | ^ | ( ) imap4r1.c:4292:11: note: use '==' to turn this assignment into an equality comparison 4292 | while (s = strtok_r (NIL," ",&r)); | ^ | == imap4r1.c:4295: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] 4295 | else if (!compare_cstring (t,"UIDVALIDITY") && (j = strtoul (s,NIL,10))){ | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4295: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] 4295 | else if (!compare_cstring (t,"UIDVALIDITY") && (j = strtoul (s,NIL,10))){ | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4302:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4302:14: note: place parentheses around the assignment to silence this warning 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ^ | ( ) imap4r1.c:4302:14: note: use '==' to turn this assignment into an equality comparison 4302 | if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT)) | ^ | == imap4r1.c:4306: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] 4306 | else if (!compare_cstring (t,"UIDNEXT")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4306: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] 4306 | else if (!compare_cstring (t,"UIDNEXT")) | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4309: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] 4309 | !compare_cstring (t,"COPYUID") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4309: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] 4309 | !compare_cstring (t,"COPYUID") && | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4315: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] 4315 | else if (j && !compare_cstring (t,"APPENDUID") && | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4315: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] 4315 | else if (j && !compare_cstring (t,"APPENDUID") && | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4322: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] 4322 | if (!compare_cstring (t,"REFERRAL")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4322: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] 4322 | if (!compare_cstring (t,"REFERRAL")) | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4329: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] 4329 | if (!compare_cstring (t,"UIDNOTSTICKY")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4329: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] 4329 | if (!compare_cstring (t,"UIDNOTSTICKY")) { | ^~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"READ-ONLY")) stream->rdonly = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4333: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] 4333 | else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4334: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] 4334 | else if (!compare_cstring (t,"READ-WRITE")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4334: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] 4334 | else if (!compare_cstring (t,"READ-WRITE")) | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4336: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] 4336 | else if (!compare_cstring (t,"PARSE") && !errflg) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4336: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] 4336 | else if (!compare_cstring (t,"PARSE") && !errflg) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4378: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] 4378 | nam->name = imap_parse_string (stream,txtptr,reply,NIL,NIL,NIL); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4403: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] 4403 | if (!(par->attribute = imap_parse_string (stream,txtptr,reply,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4404 | NIL,NIL))) { | ~~~~~~~~ imap4r1.c:4415: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] 4415 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4416 | NIL,LONGT))) { | ~~~~~~~~~~ imap4r1.c:4488: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] 4488 | 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:4490: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] 4490 | strtoul (*txtptr,(char **) txtptr,10))) { | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4575: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] 4575 | (*env)->subject = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4582: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] 4582 | (*env)->in_reply_to = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4583 | LONGT); | ~~~~~~ imap4r1.c:4584: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] 4584 | (*env)->message_id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4681: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] 4681 | adr->personal = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4682: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] 4682 | adr->adl = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4683: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] 4683 | adr->mailbox = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4684: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] 4684 | adr->host = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4781: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] 4781 | while (*(flag = ++*txtptr) == ' '); | ^ ~~~~~~~~~ imap4r1.c:4789: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] 4789 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4789: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] 4789 | if (!compare_cstring (flag,"\\Seen")) elt->seen = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"\\Deleted")) elt->deleted = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4790: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] 4790 | else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4791: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] 4791 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4791: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] 4791 | else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4792: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] 4792 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4792: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] 4792 | else if (!compare_cstring (flag,"\\Answered")) elt->answered = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4793: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] 4793 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4793: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] 4793 | else if (!compare_cstring (flag,"\\Recent")) elt->recent = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4794: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] 4794 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4794: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] 4794 | else if (!compare_cstring (flag,"\\Draft")) elt->draft = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4822: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] 4822 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i); | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4822: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] 4822 | if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i); | ^~~~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:4853:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ~~^~~~~~~~~~~~~ imap4r1.c:4853:11: note: place parentheses around the assignment to silence this warning 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ^ | ( ) imap4r1.c:4853:11: note: use '==' to turn this assignment into an equality comparison 4853 | if (i = *txtptr - s) { /* atom ends at atom_special */ | ^ | == imap4r1.c:4855: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] 4855 | 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:4855: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] 4855 | ret = strncpy ((char *) fs_get (i + 1),s,i); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4896: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] 4896 | if (c) st = ++*txtptr; /* remember start of string */ | ^ ~~~~~~~~~ imap4r1.c:4951: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] 4951 | else if ((i = strtoul (*txtptr,(char **) txtptr,10)) > MAXSERVERLIT) { | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:4973:29: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4973:29: note: place parentheses around the assignment to silence this warning 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ^ | ( ) imap4r1.c:4973:29: note: use '==' to turn this assignment into an equality comparison 4973 | if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) { | ^ | == imap4r1.c:4981:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4981:28: note: place parentheses around the assignment to silence this warning 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ^ | ( ) imap4r1.c:4981:28: note: use '==' to turn this assignment into an equality comparison 4981 | for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' '); | ^ | == imap4r1.c:4983: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] 4983 | if (!(reply->line = net_getline (LOCAL->netstream))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:4984: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] 4984 | reply->line = cpystr (""); | ^ ~~~~~~~~~~~ imap4r1.c:4985: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] 4985 | if (stream->debug) mm_dlog (reply->line); | ^~~~~~~~~~~ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:5053: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] 5053 | if (!(b = mail_body (stream,msgno,seg))) { | ^~~ ./mail.h:1693:19: note: passing argument to parameter 'section' here 1693 | unsigned char *section); | ^ imap4r1.c:5131: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] 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5131:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5131:25: note: place parentheses around the assignment to silence this warning 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | ( ) imap4r1.c:5131:25: note: use '==' to turn this assignment into an equality comparison 5131 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | == imap4r1.c:5132: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] 5132 | ucase (body->subtype); | ^~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5150: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] 5150 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171: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] 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5171:13: note: place parentheses around the assignment to silence this warning 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | ( ) imap4r1.c:5171:13: note: use '==' to turn this assignment into an equality comparison 5171 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | == imap4r1.c:5172: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] 5172 | ucase (s); /* application always gets uppercase form */ | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5184: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] 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5184:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5184:25: note: place parentheses around the assignment to silence this warning 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | ( ) imap4r1.c:5184:25: note: use '==' to turn this assignment into an equality comparison 5184 | if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT)) | ^ | == imap4r1.c:5185: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] 5185 | ucase (body->subtype); /* parse subtype */ | ^~~~~~~~~~~~~ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5192: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] 5192 | body->id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5193: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] 5193 | body->description = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5194 | LONGT); | ~~~~~~ imap4r1.c:5195: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] 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5195:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5195:13: note: place parentheses around the assignment to silence this warning 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | ( ) imap4r1.c:5195:13: note: use '==' to turn this assignment into an equality comparison 5195 | if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) { | ^ | == imap4r1.c:5196: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] 5196 | ucase (s); /* application always gets uppercase form */ | ^ ./misc.h:82:38: note: passing argument to parameter 'string' here 82 | unsigned char *ucase (unsigned char *string); | ^ imap4r1.c:5212: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] 5212 | body->size.bytes = strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5233: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] 5233 | body->size.lines = strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5240: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] 5240 | body->md5 = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5253: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] 5253 | body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5300: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] 5300 | if(!(par->attribute=imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5301 | LONGT))) { | ~~~~~~ imap4r1.c:5306: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] 5306 | if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT))){ | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5332: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] 5332 | ((*(s = *txtptr) == 'I') || (*s == 'i')) && | ^ ~~~~~~~ imap4r1.c:5356: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] 5356 | body->disposition.type = imap_parse_string (stream,txtptr,reply,NIL,NIL, | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5357 | LONGT); | ~~~~~~ imap4r1.c:5399: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] 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5399:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5399:14: note: place parentheses around the assignment to silence this warning 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ | ( ) imap4r1.c:5399:14: note: use '==' to turn this assignment into an equality comparison 5399 | else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) { | ^ | == imap4r1.c:5468: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] 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5468:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5468:11: note: place parentheses around the assignment to silence this warning 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^ | ( ) imap4r1.c:5468:11: note: use '==' to turn this assignment into an equality comparison 5468 | if (i = strtoul (*txtptr,(char **) txtptr,10)) do | ^ | == imap4r1.c:5473: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] 5473 | if (!(reply->line = net_getline (LOCAL->netstream))) | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5474: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] 5474 | reply->line = cpystr (""); | ^ ~~~~~~~~~~~ imap4r1.c:5475: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] 5475 | if (stream->debug) mm_dlog (reply->line); | ^~~~~~~~~~~ ./mail.h:1606:21: note: passing argument to parameter 'string' here 1606 | void mm_dlog (char *string); | ^ imap4r1.c:5480: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] 5480 | strtoul (*txtptr,(char **) txtptr,10); | ^~~~~~~ /usr/include/stdlib.h:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ imap4r1.c:5504:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ~~~~^~~~~~~~~~~~~~~~~~~~~ imap4r1.c:5504:13: note: place parentheses around the assignment to silence this warning 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | ( ) imap4r1.c:5504:13: note: use '==' to turn this assignment into an equality comparison 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | == imap4r1.c:5504:46: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ~~~^~~~~ imap4r1.c:5504:46: note: place parentheses around the assignment to silence this warning 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | ( ) imap4r1.c:5504:46: note: use '==' to turn this assignment into an equality comparison 5504 | if (thr = LOCAL->cap.threader) while (th = thr) { | ^ | == imap4r1.c:5514: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] 5514 | if (!compare_cstring (t,"IMAP4")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5514: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] 5514 | if (!compare_cstring (t,"IMAP4")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5516: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] 5516 | else if (!compare_cstring (t,"IMAP4rev1")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5516: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] 5516 | else if (!compare_cstring (t,"IMAP4rev1")) | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5518: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] 5518 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5518: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] 5518 | else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5519: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] 5519 | else if (!compare_cstring (t,"IMAP2bis")) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5519: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] 5519 | else if (!compare_cstring (t,"IMAP2bis")) | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5521: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] 5521 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5521: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] 5521 | else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5522: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] 5522 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5522: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] 5522 | else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5523: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] 5523 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5523: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] 5523 | else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5524: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] 5524 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5524: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] 5524 | else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5525: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] 5525 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5525: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] 5525 | else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T; | ^~~~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5526: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] 5526 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5526: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] 5526 | else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T; | ^~~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5527: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] 5527 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5527: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] 5527 | else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5528: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] 5528 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5528: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] 5528 | else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5529: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] 5529 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5529: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] 5529 | else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5530: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] 5530 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5530: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] 5530 | else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T; | ^~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5531: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] 5531 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5531: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] 5531 | else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T; | ^~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5532: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] 5532 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5532: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] 5532 | else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5533: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] 5533 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5533: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] 5533 | else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T; | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5534: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] 5534 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5534: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] 5534 | else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T; | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5535: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] 5535 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5535: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] 5535 | else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5536: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] 5536 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5536: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] 5536 | else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5537: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] 5537 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5537: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] 5537 | else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5538: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] 5538 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5538: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] 5538 | else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5539: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] 5539 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5539: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] 5539 | else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T; | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5540: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] 5540 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5540: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] 5540 | else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5541: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] 5541 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5541: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] 5541 | else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T; | ^~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5547:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5547 | else if (s = strchr (t,'=')) { | ~~^~~~~~~~~~~~~~~~ imap4r1.c:5547:16: note: place parentheses around the assignment to silence this warning 5547 | else if (s = strchr (t,'=')) { | ^ | ( ) imap4r1.c:5547:16: note: use '==' to turn this assignment into an equality comparison 5547 | else if (s = strchr (t,'=')) { | ^ | == imap4r1.c:5549: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] 5549 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5549: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] 5549 | if (!compare_cstring (t,"THREAD") && !LOCAL->loser) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5556: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] 5556 | else if (!compare_cstring (t,"AUTH")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5556: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] 5556 | else if (!compare_cstring (t,"AUTH")) { | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5559: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] 5559 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5559: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] 5559 | else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T; | ^~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ imap4r1.c:5636:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ~~^~~~~~~~~~~~~~~~~~ imap4r1.c:5636:24: note: place parentheses around the assignment to silence this warning 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ^ | ( ) imap4r1.c:5636:24: note: use '==' to turn this assignment into an equality comparison 5636 | for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) { | ^ | == 423 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` pop3.c -o pop3.so pop3.c:177: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] 177 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL; | ^~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:177: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] 177 | !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:229: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] 229 | (pop3_valid (ref) && pmatch ("INBOX",pat)) : | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:229: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] 229 | (pop3_valid (ref) && pmatch ("INBOX",pat)) : | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:230: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] 230 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp))) | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:230: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] 230 | (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp))) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:245: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] 245 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:245: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] 245 | if (pop3_valid (ref) && pmatch ("INBOX",pat)) { | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:250: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] 250 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) { | ^~~~~~~ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:250: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] 250 | else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) { | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:276:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ~~^~~~~~~~~~~~~~~~~~~~ pop3.c:276:9: note: place parentheses around the assignment to silence this warning 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ | ( ) pop3.c:276:9: note: use '==' to turn this assignment into an equality comparison 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ | == pop3.c:276: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] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^ ./misc.h:78:16: note: expanded from macro 'pmatch' 78 | 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:276:66: 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] 276 | if (s = sm_read (tmp,&sdb)) do if (pop3_valid (s) && pmatch (s,mbx)) | ^~~ ./misc.h:78:18: note: expanded from macro 'pmatch' 78 | 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:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 279 | while (s = sm_read (tmp,&sdb)); | ~~^~~~~~~~~~~~~~~~~~~~ pop3.c:279:12: note: place parentheses around the assignment to silence this warning 279 | while (s = sm_read (tmp,&sdb)); | ^ | ( ) pop3.c:279:12: note: use '==' to turn this assignment into an equality comparison 279 | while (s = sm_read (tmp,&sdb)); | ^ | == pop3.c:427:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ~~~~~~~~~~~~~^~~~~~~~~~ pop3.c:427:24: note: place parentheses around the assignment to silence this warning 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ^ | ( ) pop3.c:427:24: note: use '==' to turn this assignment into an equality comparison 427 | if (LOCAL->loser = mb.loser) strcat (tmp,"/loser"); | ^ | == pop3.c:497:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ~~~~~^~~~~~~~~~~~~~~~ pop3.c:497:14: note: place parentheses around the assignment to silence this warning 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | ( ) pop3.c:497:14: note: use '==' to turn this assignment into an equality comparison 497 | if (args = strchr (t,' ')) *args++ = '\0'; | ^ | == pop3.c:498: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] 498 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:498: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] 498 | if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:499: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] 499 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:499: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] 499 | else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:500: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] 500 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:500: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] 500 | else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T; | ^~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"TOP")) LOCAL->cap.top = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:501: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] 501 | else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T; | ^~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"UIDL")) LOCAL->cap.uidl = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:502: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] 502 | else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"USER")) LOCAL->cap.user = T; | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:503: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] 503 | else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T; | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"IMPLEMENTATION") && args) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:504: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] 504 | else if (!compare_cstring (t,"IMPLEMENTATION") && args) | ^~~~~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | 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,"EXPIRE") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:506: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] 506 | else if (!compare_cstring (t,"EXPIRE") && args) { | ^~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:508:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ~~^~~~~~~~~~~~~~~~~~ pop3.c:508:13: note: place parentheses around the assignment to silence this warning 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | ( ) pop3.c:508:13: note: use '==' to turn this assignment into an equality comparison 508 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | == pop3.c:514: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] 514 | (!compare_cstring (args,"NEVER")) ? 65535 : | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:514: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] 514 | (!compare_cstring (args,"NEVER")) ? 65535 : | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:515: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] 515 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args)); | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:515: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] 515 | ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args)); | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:517: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] 517 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:517: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] 517 | else if (!compare_cstring (t,"LOGIN-DELAY") && args) { | ^~~~~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:519:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ~~^~~~~~~~~~~~~~~~~~ pop3.c:519:13: note: place parentheses around the assignment to silence this warning 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | ( ) pop3.c:519:13: note: use '==' to turn this assignment into an equality comparison 519 | if (s = strchr(args,' ')){/* separate time from possible USER */ | ^ | == pop3.c:525: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] 525 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ? | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:525: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] 525 | LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ? | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:528: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] 528 | else if (!compare_cstring (t,"SASL") && args) | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:528: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] 528 | else if (!compare_cstring (t,"SASL") && args) | ^~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ pop3.c:782: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] 782 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:783: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] 783 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:841:48: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ pop3.c:841:48: note: place parentheses around the assignment to silence this warning 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ^ | ( ) pop3.c:841:48: note: use '==' to turn this assignment into an equality comparison 841 | else if (elt->private.msg.header.text.size = pop3_cache (stream,elt)) | ^ | == pop3.c:946: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] 946 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:947: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] 947 | mail_sequence (stream,sequence)) : | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ pop3.c:945:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 945 | if (ret = sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 946 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 947 | mail_sequence (stream,sequence)) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 948 | LONGT) { /* build selected sequence if needed */ | ~~~~~ pop3.c:945:11: note: place parentheses around the assignment to silence this warning 945 | if (ret = sequence ? ((options & EX_UID) ? | ^ | ( 946 | mail_uid_sequence (stream,sequence) : 947 | mail_sequence (stream,sequence)) : 948 | LONGT) { /* build selected sequence if needed */ | | ) pop3.c:945:11: note: use '==' to turn this assignment into an equality comparison 945 | if (ret = sequence ? ((options & EX_UID) ? | ^ | == 50 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` unix.c -o unix.so 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1706:34: note: passing argument to parameter 'text' here 1706 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:114:27: note: passing argument to parameter here 114 | 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:107:40: note: passing argument to parameter 's1' here 107 | 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:114:27: note: passing argument to parameter here 114 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 105 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mbx.c -o mbx.so 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:84:27: note: passing argument to parameter 'string' here 84 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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)) { | ^ | == 103 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mmdf.c -o mmdf.so 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1706:34: note: passing argument to parameter 'text' here 1706 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:114:27: note: passing argument to parameter here 114 | 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:107:40: note: passing argument to parameter 's1' here 107 | 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:114:27: note: passing argument to parameter here 114 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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: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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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)) { | ^ | == 96 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` tenex.c -o tenex.so 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 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)); | ^ ~~~~~~~~~~ 63 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mtx.c -o mtx.so 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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: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:1694:24: note: passing argument to parameter 'string' here 1694 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:1763:59: note: passing argument to parameter 'sequence' here 1763 | 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:1762:55: note: passing argument to parameter 'sequence' here 1762 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | 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:86:31: note: passing argument to parameter 'buf' here 86 | 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:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ 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:106:37: note: passing argument to parameter 's1' here 106 | 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:106:55: note: passing argument to parameter 's2' here 106 | 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:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:120:34: note: passing argument to parameter here 120 | strtoul(const char * __restrict, char ** __restrict, int); | ^ 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:120:34: note: passing argument to parameter here 120 | 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:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ 57 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` news.c -o news.so 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:408:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 408 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ 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:455: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] 455 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:456: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] 456 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:473: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] 473 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:473: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] 473 | mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ news.c:494: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] 494 | 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:499: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] 499 | ((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:503: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] 503 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ news.c:568:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~~~~~~~~~~^~~~~~~~~ news.c:568:21: note: remove extraneous parentheses around the comparison to silence this warning 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~ ^ ~ news.c:568:21: note: use '=' to turn this equality comparison into an assignment 568 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ^~ | = news.c:588:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~~~~~~~~~~^~~~~~~~~ news.c:588:21: note: remove extraneous parentheses around the comparison to silence this warning 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ~ ^ ~ news.c:588:21: note: use '=' to turn this equality comparison into an assignment 588 | if ((CHR (&bs) == '\012')) *t++ = SNX (&bs); | ^~ | = 21 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` phile.c -o phile.so phile.c:292:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ~~^~~~~~~~~~~~~~~~ phile.c:292:9: note: place parentheses around the assignment to silence this warning 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ^ | ( ) phile.c:292:9: note: use '==' to turn this assignment into an equality comparison 292 | if (k = t->tm_yday - k) i += ((k < 0) == (abs (k) == 1)) ? -24*60 : 24*60; | ^ | == phile.c:305:20: 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] 305 | LOCAL->env->date = cpystr (tmp); | ^ ~~~~~~~~~~~~ phile.c:309:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ~~~^~~~~~~~~~~~~~~~~~~~~~~~ phile.c:309:10: note: place parentheses around the assignment to silence this warning 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ^ | ( ) phile.c:309:10: note: use '==' to turn this assignment into an equality comparison 309 | if (pw = getpwuid (sbuf.st_uid)) strcpy (tmp,pw->pw_name); | ^ | == phile.c:321:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ phile.c:321:9: note: place parentheses around the assignment to silence this warning 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ^ | ( ) phile.c:321:9: note: use '==' to turn this assignment into an equality comparison 321 | if (i = phile_type (buf->data,buf->size,&j)) { | ^ | == phile.c:327: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] 327 | buf->size = strcrlfcpy (&buf->data,&m,s,buf->size); | ^ ./nl.h:33:21: note: passing argument to parameter 'src' here 33 | unsigned char *src,unsigned long srcl); | ^ 5 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mh.c -o mh.so mh.c:190: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] 190 | if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) || | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:190:49: 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] 190 | if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) || | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:191: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] 191 | !compare_cstring (name,MHINBOX) || | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:191:30: 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] 191 | !compare_cstring (name,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:195: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] 195 | ret = (synonly && compare_cstring (name,"INBOX")) ? | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:195: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] 195 | ret = (synonly && compare_cstring (name,"INBOX")) ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:254:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 254 | if (v = strpbrk (s," \t")) { | ~~^~~~~~~~~~~~~~~~~~~ mh.c:254:8: note: place parentheses around the assignment to silence this warning 254 | if (v = strpbrk (s," \t")) { | ^ | ( ) mh.c:254:8: note: use '==' to turn this assignment into an equality comparison 254 | if (v = strpbrk (s," \t")) { | ^ | == mh.c:256: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] 256 | if (!compare_cstring (s,"Path:")) { | ^ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:256:28: 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] 256 | if (!compare_cstring (s,"Path:")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:327:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mh.c:327:14: note: place parentheses around the assignment to silence this warning 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mh.c:327:14: note: use '==' to turn this assignment into an equality comparison 327 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mh.c:346:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 346 | if (s = strchr (test,'/')) *++s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~ mh.c:346:13: note: place parentheses around the assignment to silence this warning 346 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | ( ) mh.c:346:13: note: use '==' to turn this assignment into an equality comparison 346 | if (s = strchr (test,'/')) *++s = '\0'; | ^ | == mh.c:359:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 359 | if (s = strpbrk (test,"%*")) { | ~~^~~~~~~~~~~~~~~~~~~~~ mh.c:359:13: note: place parentheses around the assignment to silence this warning 359 | if (s = strpbrk (test,"%*")) { | ^ | ( ) mh.c:359:13: note: use '==' to turn this assignment into an equality comparison 359 | if (s = strpbrk (test,"%*")) { | ^ | == mh.c:366:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 366 | if (s = strrchr (file,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~ mh.c:366:13: note: place parentheses around the assignment to silence this warning 366 | if (s = strrchr (file,'/')) { | ^ | ( ) mh.c:366:13: note: use '==' to turn this assignment into an equality comparison 366 | if (s = strrchr (file,'/')) { | ^ | == mh.c:374:27: 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] 374 | if (!compare_cstring (test,MHINBOX)) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:374:32: 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] 374 | if (!compare_cstring (test,MHINBOX)) | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:403: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] 403 | do 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); | ^ mh.c:403:27: 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] 403 | do 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); | ^ mh.c:404:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ~~^~~~~~~~~~~~~~~~~~~~ mh.c:404:14: note: place parentheses around the assignment to silence this warning 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ^ | ( ) mh.c:404:14: note: use '==' to turn this assignment into an equality comparison 404 | while (s = sm_read (tmp,&sdb)); /* until no more subscriptions */ | ^ | == mh.c:428:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 428 | if (dp = opendir (curdir)) { /* open directory */ | ~~~^~~~~~~~~~~~~~~~~~ mh.c:428:10: note: place parentheses around the assignment to silence this warning 428 | if (dp = opendir (curdir)) { /* open directory */ | ^ | ( ) mh.c:428:10: note: use '==' to turn this assignment into an equality comparison 428 | if (dp = opendir (curdir)) { /* open directory */ | ^ | == mh.c:429:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ~~^~~~~~~~~~~~~~ mh.c:429:14: note: place parentheses around the assignment to silence this warning 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ^ | ( ) mh.c:429:14: note: use '==' to turn this assignment into an equality comparison 429 | while (d = readdir (dp)) /* scan, ignore . and numeric names */ | ^ | == mh.c:435: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] 435 | if (pmatch_full (name,pat,'/')) 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); | ^ mh.c:435: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] 435 | if (pmatch_full (name,pat,'/')) 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); | ^ mh.c:437:16: 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] 437 | if (dmatch (name,pat,'/') && | ^~~~ ./env.h:30:29: note: passing argument to parameter 's' here 30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | ^ mh.c:437: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] 437 | if (dmatch (name,pat,'/') && | ^~~ ./env.h:30:46: note: passing argument to parameter 'pat' here 30 | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | ^ mh.c:513:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 513 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mh.c:513:12: note: place parentheses around the assignment to silence this warning 513 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mh.c:513:12: note: use '==' to turn this assignment into an equality comparison 513 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mh.c:516:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ~~^~~~~~~~~~~~~~~~ mh.c:516:14: note: place parentheses around the assignment to silence this warning 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ^ | ( ) mh.c:516:14: note: use '==' to turn this assignment into an equality comparison 516 | while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) { | ^ | == mh.c:553:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mh.c:553:11: note: place parentheses around the assignment to silence this warning 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ^ | ( ) mh.c:553:11: note: use '==' to turn this assignment into an equality comparison 553 | if (s = strrchr (mh_file (tmp1,newname),'/')) { | ^ | == mh.c:587: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] 587 | (!compare_cstring (stream->mailbox,MHINBOX) || | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:587:40: 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] 587 | (!compare_cstring (stream->mailbox,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:592: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] 592 | !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL; | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:592:40: 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] 592 | !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:638: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] 638 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:639: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] 639 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:662: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] 662 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:667: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] 667 | ((fd = open (LOCAL->buf,O_RDONLY,NIL)) >= 0)) { | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:671: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] 671 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mh.c:737:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 737 | if ((CHR (&bs) == '\012')) { | ~~~~~~~~~~^~~~~~~~~ mh.c:737:21: note: remove extraneous parentheses around the comparison to silence this warning 737 | if ((CHR (&bs) == '\012')) { | ~ ^ ~ mh.c:737:21: note: use '=' to turn this equality comparison into an assignment 737 | if ((CHR (&bs) == '\012')) { | ^~ | = mh.c:763:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality] 763 | if ((CHR (&bs) == '\012')) { | ~~~~~~~~~~^~~~~~~~~ mh.c:763:21: note: remove extraneous parentheses around the comparison to silence this warning 763 | if ((CHR (&bs) == '\012')) { | ~ ^ ~ mh.c:763:21: note: use '=' to turn this equality comparison into an assignment 763 | if ((CHR (&bs) == '\012')) { | ^~ | = mh.c:886:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 886 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mh.c:886:11: note: place parentheses around the assignment to silence this warning 886 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mh.c:886:11: note: use '==' to turn this assignment into an equality comparison 886 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mh.c:899:11: 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] 899 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,++old); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:902:19: 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] 902 | if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL, | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:926:16: 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] 926 | mh_setdate (LOCAL->buf,elt); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ mh.c:107:24: note: passing argument to parameter 'file' here 107 | void mh_setdate (char *file,MESSAGECACHE *elt); | ^ mh.c:934:14: 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] 934 | unlink (LOCAL->buf);/* flush this file */ | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mh.c:981: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] 981 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:982: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] 982 | mail_sequence (stream,sequence)) : LONGT) { | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:980:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 980 | if (ret = sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 981 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 982 | mail_sequence (stream,sequence)) : LONGT) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mh.c:980:11: note: place parentheses around the assignment to silence this warning 980 | if (ret = sequence ? ((options & EX_UID) ? | ^ | ( 981 | mail_uid_sequence (stream,sequence) : 982 | mail_sequence (stream,sequence)) : LONGT) { | | ) mh.c:980:11: note: use '==' to turn this assignment into an equality comparison 980 | if (ret = sequence ? ((options & EX_UID) ? | ^ | == mh.c:987:11: 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] 987 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:988:14: 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] 988 | if (unlink (LOCAL->buf)) {/* try to delete the message */ | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mh.c:989:13: 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] 989 | sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i, | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:991: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] 991 | mm_log (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mh.c:1009:16: 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] 1009 | sprintf (LOCAL->buf,"Expunged %lu messages",n); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:1010:15: 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] 1010 | mm_log (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mh.c:1041: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] 1041 | if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:1042: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] 1042 | mail_sequence (stream,sequence)) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mh.c:1045:11: 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] 1045 | sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid); | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mh.c:1046:18: 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] 1046 | if ((fd = open (LOCAL->buf,O_RDONLY,NIL)) < 0) return NIL; | ^~~~~~~~~~ mh.c:69:15: note: expanded from macro 'LOCAL' 69 | #define LOCAL ((MHLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mh.c:1058:10: 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] 1058 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mh.c:1106: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] 1106 | if (!((!compare_cstring (mailbox,MHINBOX) || | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1106:38: 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] 1106 | if (!((!compare_cstring (mailbox,MHINBOX) || | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1107: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] 1107 | !compare_cstring (mailbox,"INBOX")) && | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1107: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] 1107 | !compare_cstring (mailbox,"INBOX")) && | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1135:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1135 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mh.c:1135:9: note: place parentheses around the assignment to silence this warning 1135 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mh.c:1135:9: note: use '==' to turn this assignment into an equality comparison 1135 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mh.c:1146: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] 1146 | if (!mail_parse_date (&elt,date)) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mh.c:1197:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1197 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ mh.c:1198:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mh.c:1198:12: note: place parentheses around the assignment to silence this warning 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mh.c:1198:12: note: use '==' to turn this assignment into an equality comparison 1198 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mh.c:1227: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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227:30: 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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~~~~ mh.c:43:17: note: expanded from macro 'MHINBOX' 43 | #define MHINBOX "#mhinbox" /* corresponds to namespace in env_unix.c */ | ^~~~~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227: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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1227:65: 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] 1227 | if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX")) | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mh.c:1260:34: warning: expression result unused [-Wunused-value] 1260 | for (i = 0, s = pattern; *s; *s++) if ((*s == '*') || (*s == '%')) ++i; | ^~~~ 70 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mx.c -o mx.so mx.c:186: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] 186 | else if (!compare_cstring (name,"INBOX")) errno = NIL; | ^~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:186: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] 186 | else if (!compare_cstring (name,"INBOX")) errno = NIL; | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:241:31: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int] 241 | if (strcmp (name,MXINDEXNAME+1)) | ~~~~~~~~~~~^~ mx.c:241:31: note: use array indexing to silence this warning 241 | if (strcmp (name,MXINDEXNAME+1)) | ^ | & [ ] mx.c:242:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ~~^~~~~~~~~ mx.c:242:14: note: place parentheses around the assignment to silence this warning 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ^ | ( ) mx.c:242:14: note: use '==' to turn this assignment into an equality comparison 242 | while (c = *name++) if (!isdigit (c)) return NIL; | ^ | == mx.c:289:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 289 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mx.c:289:9: note: place parentheses around the assignment to silence this warning 289 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mx.c:289:9: note: use '==' to turn this assignment into an equality comparison 289 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mx.c:395:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 395 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mx.c:395:14: note: place parentheses around the assignment to silence this warning 395 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mx.c:395:14: note: use '==' to turn this assignment into an equality comparison 395 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mx.c:398:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ~~^~~~~~~~~~~~~~~~ mx.c:398:16: note: place parentheses around the assignment to silence this warning 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ^ | ( ) mx.c:398:16: note: use '==' to turn this assignment into an equality comparison 398 | while (d = readdir (dirp)) if (mx_select (d)) { | ^ | == mx.c:439: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] 439 | if (compare_cstring (old,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:439: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] 439 | if (compare_cstring (old,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:441:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:441:13: note: place parentheses around the assignment to silence this warning 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ^ | ( ) mx.c:441:13: note: use '==' to turn this assignment into an equality comparison 441 | if (s = strrchr (mx_file (tmp1,newname),'/')) { | ^ | == mx.c:469:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 469 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mx.c:469:13: note: place parentheses around the assignment to silence this warning 469 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mx.c:469:13: note: use '==' to turn this assignment into an equality comparison 469 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mx.c:470:70: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int] 470 | if (lasterror || mx_rename_work (tmp,srcl,tmp1,dstl,MXINDEXNAME+1)) | ~~~~~~~~~~~^~ mx.c:470:70: note: use array indexing to silence this warning 470 | if (lasterror || mx_rename_work (tmp,srcl,tmp1,dstl,MXINDEXNAME+1)) | ^ | & [ ] mx.c:518: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] 518 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:518: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] 518 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:524: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] 524 | LOCAL->buf = (char *) fs_get (CHUNKSIZE); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:573: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] 573 | ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:574: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] 574 | mail_sequence (stream,sequence))) | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:591: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] 591 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:593: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] 593 | if (!elt->rfc822_size && !stat (LOCAL->buf,&sbuf)) { | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/sys/stat.h:394:33: note: passing argument to parameter here 394 | int stat(const char * __restrict, struct stat * __restrict); | ^ mx.c:633: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] 633 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = elt->rfc822_size) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:648:43: 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] 648 | cpytxt (&elt->private.msg.header.text,LOCAL->buf,i); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./misc.h:85:36: note: passing argument to parameter 'text' here 85 | char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size); | ^ mx.c:649:41: 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] 649 | cpytxt (&elt->private.msg.text.text,LOCAL->buf+i,elt->rfc822_size - i); | ^~~~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./misc.h:85:36: note: passing argument to parameter 'text' here 85 | char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size); | ^ mx.c:752:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 752 | if (s = (void *) names) fs_give ((void **) &s); | ~~^~~~~~~~~~~~~~~~ mx.c:752:11: note: place parentheses around the assignment to silence this warning 752 | if (s = (void *) names) fs_give ((void **) &s); | ^ | ( ) mx.c:752:11: note: use '==' to turn this assignment into an equality comparison 752 | if (s = (void *) names) fs_give ((void **) &s); | ^ | == mx.c:767: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] 767 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,++old); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:770: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] 770 | if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL, | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mx.c:794: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] 794 | mx_setdate (LOCAL->buf,elt); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ mx.c:106:24: note: passing argument to parameter 'file' here 106 | void mx_setdate (char *file,MESSAGECACHE *elt); | ^ mx.c:801: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] 801 | unlink (LOCAL->buf);/* flush this file */ | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mx.c:804:8: warning: data argument not used by format string [-Wformat-extra-args] 803 | sprintf (tmp,"Message copy to MX mailbox failed: %.80s", | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 804 | s,strerror (errno)); | ^ mx.c:848: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] 848 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:849: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] 849 | mail_sequence (stream,sequence)) : LONGT) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:847:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 847 | if (ret = (sequence ? ((options & EX_UID) ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 848 | mail_uid_sequence (stream,sequence) : | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 849 | mail_sequence (stream,sequence)) : LONGT) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 850 | mx_lockindex (stream)) { /* lock the index */ | ~~~~~~~~~~~~~~~~~~~~~ mx.c:847:11: note: place parentheses around the assignment to silence this warning 847 | if (ret = (sequence ? ((options & EX_UID) ? | ^ | ( 848 | mail_uid_sequence (stream,sequence) : 849 | mail_sequence (stream,sequence)) : LONGT) && 850 | mx_lockindex (stream)) { /* lock the index */ | | ) mx.c:847:11: note: use '==' to turn this assignment into an equality comparison 847 | if (ret = (sequence ? ((options & EX_UID) ? | ^ | == mx.c:855: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] 855 | sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:856: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] 856 | if (unlink (LOCAL->buf)) {/* try to delete the message */ | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mx.c:857: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] 857 | sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i, | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:859: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] 859 | MM_LOG (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:875: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] 875 | sprintf (LOCAL->buf,"Expunged %lu messages",n); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:876: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] 876 | MM_LOG (LOCAL->buf,(long) NIL); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:913: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] 913 | sprintf (LOCAL->buf,"Not a MX-format mailbox: %.80s",mailbox); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mx.c:914: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] 914 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mx.c:62:15: note: expanded from macro 'LOCAL' 62 | #define LOCAL ((MXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mx.c:921: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] 921 | if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:922: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] 922 | mail_sequence (stream,sequence)))); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mx.c:939:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 940 | >= 0)) { | ~~~~~ mx.c:939:10: note: place parentheses around the assignment to silence this warning 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ^ | ( 940 | >= 0)) { | | ) mx.c:939:10: note: use '==' to turn this assignment into an equality comparison 939 | if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL)) | ^ | == mx.c:944: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] 944 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mx.c:949:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 949 | if (j = elt->user_flags) do | ~~^~~~~~~~~~~~~~~~~ mx.c:949:10: note: place parentheses around the assignment to silence this warning 949 | if (j = elt->user_flags) do | ^ | ( ) mx.c:949:10: note: use '==' to turn this assignment into an equality comparison 949 | if (j = elt->user_flags) do | ^ | == mx.c:950:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:950:12: note: place parentheses around the assignment to silence this warning 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ^ | ( ) mx.c:950:12: note: use '==' to turn this assignment into an equality comparison 950 | if (t = stream->user_flags[find_rightmost_bit (&j)]) | ^ | == mx.c:960:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mx.c:960:12: note: place parentheses around the assignment to silence this warning 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ^ | ( ) mx.c:960:12: note: use '==' to turn this assignment into an equality comparison 960 | if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) { | ^ | == mx.c:1003: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] 1003 | if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX"); | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:1003: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] 1003 | if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mx.c:1038: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] 1038 | else if (date && !(ret = mail_parse_date (&elt,date))) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mx.c:1116:9: warning: initializing 'char *' with an expression of type 'const char[256]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1116 | char *s = name->d_name; | ^ ~~~~~~~~~~~~ mx.c:1117:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ~~^~~~~~ mx.c:1117:12: note: place parentheses around the assignment to silence this warning 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | ( ) mx.c:1117:12: note: use '==' to turn this assignment into an equality comparison 1117 | while (c = *s++) if (!isdigit (c)) return NIL; | ^ | == mx.c:1188:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1188 | if (s = strchr (t = ++s,'\n')) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ mx.c:1188:13: note: place parentheses around the assignment to silence this warning 1188 | if (s = strchr (t = ++s,'\n')) { | ^ | ( ) mx.c:1188:13: note: use '==' to turn this assignment into an equality comparison 1188 | if (s = strchr (t = ++s,'\n')) { | ^ | == 52 warnings generated. `cat CCTYPE` -fPIC -DPIC -c `cat SHLIBFLAGS` -c `cat CFLAGS` mix.c -o mix.so mix.c:334:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 334 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:334:9: note: place parentheses around the assignment to silence this warning 334 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:334:9: note: use '==' to turn this assignment into an equality comparison 334 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:478:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 478 | if (dirp = opendir (tmp)) { /* open directory */ | ~~~~~^~~~~~~~~~~~~~~ mix.c:478:14: note: place parentheses around the assignment to silence this warning 478 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | ( ) mix.c:478:14: note: use '==' to turn this assignment into an equality comparison 478 | if (dirp = opendir (tmp)) { /* open directory */ | ^ | == mix.c:481:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ~~^~~~~~~~~~~~~~~~ mix.c:481:16: note: place parentheses around the assignment to silence this warning 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ^ | ( ) mix.c:481:16: note: use '==' to turn this assignment into an equality comparison 481 | while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) { | ^ | == mix.c:527: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] 527 | if (compare_cstring (old,"INBOX")) { | ^~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:527: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] 527 | if (compare_cstring (old,"INBOX")) { | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:529:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 529 | if (s = strrchr (tmp1,'/')) { | ~~^~~~~~~~~~~~~~~~~~~~ mix.c:529:13: note: place parentheses around the assignment to silence this warning 529 | if (s = strrchr (tmp1,'/')) { | ^ | ( ) mix.c:529:13: note: use '==' to turn this assignment into an equality comparison 529 | if (s = strrchr (tmp1,'/')) { | ^ | == mix.c:567:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 567 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:567:13: note: place parentheses around the assignment to silence this warning 567 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:567:13: note: use '==' to turn this assignment into an equality comparison 567 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:590:26: warning: passing 'const char[256]' to parameter of type 'char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 590 | return mix_dirfmttest (name->d_name); | ^~~~~~~~~~~~ mix.c:285:28: note: passing argument to parameter 'name' here 285 | long mix_dirfmttest (char *name) | ^ mix.c:606: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] 606 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~~~~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:606: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] 606 | stream->inbox = !compare_cstring (stream->mailbox,"INBOX"); | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:608: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] 608 | LOCAL->buf = (char *) fs_get (CHUNKSIZE); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:611: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] 611 | mix_dir (LOCAL->buf,stream->mailbox); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:163:22: note: passing argument to parameter 'dst' here 163 | char *mix_dir (char *dst,char *name); | ^ mix.c:613: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] 613 | stream->mailbox = cpystr (LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./misc.h:84:27: note: passing argument to parameter 'string' here 84 | char *cpystr (const char *string); | ^ mix.c:616: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] 616 | ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:619: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] 619 | ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:627: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] 627 | LOCAL->index = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXINDEX)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:628: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] 628 | LOCAL->status = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXSTATUS)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:629:42: 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] 629 | LOCAL->sortcache = cpystr (mix_file (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:164:23: note: passing argument to parameter 'dst' here 164 | char *mix_file (char *dst,char *dir,char *name); | ^ mix.c:634:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 634 | if (silent = stream->silent) LOCAL->internal = T; | ~~~~~~~^~~~~~~~~~~~~~~~ mix.c:634:16: note: place parentheses around the assignment to silence this warning 634 | if (silent = stream->silent) LOCAL->internal = T; | ^ | ( ) mix.c:634:16: note: use '==' to turn this assignment into an equality comparison 634 | if (silent = stream->silent) LOCAL->internal = T; | ^ | == mix.c:718:46: 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] 718 | if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:730: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] 730 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = j) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:735: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] 735 | !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:105:26: note: passing argument to parameter here 105 | int strncmp(const char *, const char *, size_t) __pure; | ^ mix.c:752: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] 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:114:27: note: passing argument to parameter here 114 | char *strpbrk(const char *, const char *) __pure; | ^ mix.c:752:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:752:11: note: place parentheses around the assignment to silence this warning 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^ | ( ) mix.c:752:11: note: use '==' to turn this assignment into an equality comparison 752 | if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0'; | ^ | == mix.c:781:46: 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 ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:805: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] 805 | d.chunk = LOCAL->buf; /* initial buffer chunk */ | ^ ~~~~~~~~~~ mix.c:830: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] 830 | if (((flags & ST_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:831: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] 831 | mail_sequence (stream,sequence)) && | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:963:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:963:16: note: place parentheses around the assignment to silence this warning 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ^ | ( ) mix.c:963:16: note: use '==' to turn this assignment into an equality comparison 963 | if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) { | ^ | == mix.c:973: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] 973 | sprintf (LOCAL->buf,"Can't copy new mail at message: %lu",i - 1); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:974: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] 974 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:988:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 989 | (LOCAL->internal ? NIL : LONGT))) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:988:13: note: place parentheses around the assignment to silence this warning 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ^ | ( 989 | (LOCAL->internal ? NIL : LONGT))) { | | ) mix.c:988:13: note: use '==' to turn this assignment into an equality comparison 988 | if (statf = mix_parse (stream,&idxf,LONGT, | ^ | == mix.c:1033: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] 1033 | mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1034: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] 1034 | mail_sequence (stream,sequence))) || stream->rdonly); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1036:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1037 | LOCAL->internal ? NIL : LONGT)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1036:18: note: place parentheses around the assignment to silence this warning 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ^ | ( 1037 | LOCAL->internal ? NIL : LONGT)) { | | ) mix.c:1036:18: note: use '==' to turn this assignment into an equality comparison 1036 | else if (statf = mix_parse (stream,&idxf,LONGT, | ^ | == mix.c:1085: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] 1085 | sprintf (LOCAL->buf,"Can't locate mix message file %.08lx", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1087: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] 1087 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1096: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] 1096 | else if (mix_file_data (LOCAL->buf,stream->mailbox,cur->fileno) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1098: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] 1098 | truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:447:27: note: passing argument to parameter here 447 | int truncate(const char *, __off_t); | ^ mix.c:1098: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] 1098 | truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/unistd.h:370:25: note: passing argument to parameter here 370 | int unlink(const char *); | ^ mix.c:1099: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] 1099 | sprintf (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1102: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] 1102 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1114:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1114 | if (a = (void *) names) fs_give ((void **) &a); | ~~^~~~~~~~~~~~~~~~ mix.c:1114:13: note: place parentheses around the assignment to silence this warning 1114 | if (a = (void *) names) fs_give ((void **) &a); | ^ | ( ) mix.c:1114:13: note: use '==' to turn this assignment into an equality comparison 1114 | if (a = (void *) names) fs_give ((void **) &a); | ^ | == mix.c:1123:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1123:15: note: place parentheses around the assignment to silence this warning 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ^ | ( ) mix.c:1123:15: note: use '==' to turn this assignment into an equality comparison 1123 | if (ret = mix_index_update (stream,idxf,NIL)) { | ^ | == mix.c:1135:26: 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] 1135 | if (nexp) sprintf (s = LOCAL->buf,"Expunged %lu messages",nexp); | ^ ~~~~~~~~~~ mix.c:1137: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] 1137 | sprintf (s=LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed); | ^~~~~~~~~~~ mix.c:1157:23: warning: passing 'const char[256]' to parameter of type 'char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1157 | if (mix_dirfmttest (name->d_name)) { | ^~~~~~~~~~~~ mix.c:285:28: note: passing argument to parameter 'name' here 285 | long mix_dirfmttest (char *name) | ^ mix.c:1158:18: warning: assigning to 'char *' from 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1158 | for (c = *(s = name->d_name + sizeof (MIXNAME) - 1); c && isxdigit (c); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1174:9: warning: initializing 'char *' with an expression of type 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1174 | char *n1 = (*d1)->d_name + sizeof (MIXNAME) - 1; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1175:9: warning: initializing 'char *' with an expression of type 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 1175 | char *n2 = (*d2)->d_name + sizeof (MIXNAME) - 1; | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1227: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] 1227 | mix_file_data (LOCAL->buf,stream->mailbox,burp->fileno); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1231: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] 1231 | if (stat (LOCAL->buf,&sbuf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/sys/stat.h:394:33: note: passing argument to parameter here 394 | int stat(const char * __restrict, struct stat * __restrict); | ^ mix.c:1232: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] 1232 | sprintf (LOCAL->buf,staterr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1233: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] 1233 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1236:54: 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] 1236 | else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:145:55: note: passing argument to parameter 'file' here 145 | long mix_burp_check (SEARCHSET *set,size_t size,char *file); | ^ mix.c:1240: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] 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:447:27: note: passing argument to parameter here 447 | int truncate(const char *, __off_t); | ^ mix.c:1240:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1240:20: note: place parentheses around the assignment to silence this warning 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^ | ( ) mix.c:1240:20: note: use '==' to turn this assignment into an equality comparison 1240 | else if (ret = !truncate (LOCAL->buf,burp->set.last)) | ^ | == mix.c:1243: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] 1243 | sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1244: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] 1244 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1249: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] 1249 | else if (((fd = open (LOCAL->buf,O_RDWR,NIL)) < 0) || | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/fcntl.h:359:22: note: passing argument to parameter here 359 | int open(const char *, int, ...); | ^ mix.c:1251: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] 1251 | sprintf (LOCAL->buf,"Error opening mix message file %.80s: %.80s", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1253: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] 1253 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1257: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] 1257 | sprintf (LOCAL->buf,staterr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1258: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] 1258 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1263:52: 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] 1263 | else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:145:55: note: passing argument to parameter 'file' here 145 | long mix_burp_check (SEARCHSET *set,size_t size,char *file); | ^ mix.c:1268: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] 1268 | strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) { | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:105:26: note: passing argument to parameter here 105 | int strncmp(const char *, const char *, size_t) __pure; | ^ mix.c:1269: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] 1269 | sprintf (LOCAL->buf,"Bad message token in mix message file at %lu", | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1271: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] 1271 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1311: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] 1311 | sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1312: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] 1312 | MM_LOG (LOCAL->buf,WARN); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:1344:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1344 | } while (set = set->next); | ~~~~^~~~~~~~~~~ mix.c:1344:16: note: place parentheses around the assignment to silence this warning 1344 | } while (set = set->next); | ^ | ( ) mix.c:1344:16: note: use '==' to turn this assignment into an equality comparison 1344 | } while (set = set->next); | ^ | == mix.c:1361: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] 1361 | long ret = mix_isvalid (mailbox,LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:234:36: note: passing argument to parameter 'meta' here 234 | long mix_isvalid (char *name,char *meta) | ^ mix.c:1379:68: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign] 1379 | else if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) : | ^~~~~~~~ ./mail.h:1763:59: note: passing argument to parameter 'sequence' here 1763 | long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1380: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] 1380 | mail_sequence (stream,sequence)))); | ^~~~~~~~ ./mail.h:1762:55: note: passing argument to parameter 'sequence' here 1762 | long mail_sequence (MAILSTREAM *stream,unsigned char *sequence); | ^ mix.c:1382:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1383 | !astream->rdonly && | ~~~~~~~~~~~~~~~~~~~ 1384 | (((MIXLOCAL *) astream->local)->expok = T) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1385 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1386 | LONGT : NIL) { | ~~~~~~~~~~~ mix.c:1382:16: note: place parentheses around the assignment to silence this warning 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | ( 1383 | !astream->rdonly && 1384 | (((MIXLOCAL *) astream->local)->expok = T) && 1385 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? 1386 | LONGT : NIL) { | | ) mix.c:1382:16: note: use '==' to turn this assignment into an equality comparison 1382 | else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | == mix.c:1397: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] 1397 | sprintf (local->buf,MSRFMT,MSGTOK,(unsigned long) 0,0,0,0,0,0,0,'+',0,0, | ^~~~~~~~~~ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1399: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] 1399 | hdrsize = strlen (local->buf); | ^~~~~~~~~~ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:1408:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^~~~~ mix.c:157:55: note: passing argument to parameter 'size' here 157 | FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size, | ^ mix.c:1408:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1408:14: note: place parentheses around the assignment to silence this warning 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^ | ( ) mix.c:1408:14: note: use '==' to turn this assignment into an equality comparison 1408 | if (msgf = mix_data_open (astream,&fd,&size,newsize)) { | ^ | == mix.c:1420: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] 1420 | if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:1432: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] 1432 | d.chunk = LOCAL->buf; | ^ ~~~~~~~~~~ mix.c:1437:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1437 | if (j = elt->user_flags) do | ~~^~~~~~~~~~~~~~~~~ mix.c:1437:12: note: place parentheses around the assignment to silence this warning 1437 | if (j = elt->user_flags) do | ^ | ( ) mix.c:1437:12: note: use '==' to turn this assignment into an equality comparison 1437 | if (j = elt->user_flags) do | ^ | == mix.c:1460:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1460 | if (ret = (mix_meta_update (astream) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1461 | mix_index_update (astream,idxf,LONGT))) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1460:10: note: place parentheses around the assignment to silence this warning 1460 | if (ret = (mix_meta_update (astream) && | ^ | ( 1461 | mix_index_update (astream,idxf,LONGT))) { | | ) mix.c:1460:10: note: use '==' to turn this assignment into an equality comparison 1460 | if (ret = (mix_meta_update (astream) && | ^ | == mix.c:1524: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] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^~~~~~~ ./misc.h:106:37: note: passing argument to parameter 's1' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:1524:40: 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] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^~~~~~~ ./misc.h:106:55: note: passing argument to parameter 's2' here 106 | int compare_cstring (unsigned char *s1,unsigned char *s2); | ^ mix.c:1524:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1525 | NIL : mix_create (NIL,"INBOX")) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1524:13: note: place parentheses around the assignment to silence this warning 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^ | ( 1525 | NIL : mix_create (NIL,"INBOX")) | | ) mix.c:1524:13: note: use '==' to turn this assignment into an equality comparison 1524 | if (ret = compare_cstring (mailbox,"INBOX") ? | ^ | == mix.c:1541:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1542 | !astream->rdonly && | ~~~~~~~~~~~~~~~~~~~ 1543 | (((MIXLOCAL *) astream->local)->expok = T) && | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1544 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1545 | LONGT : NIL) { | ~~~~~~~~~~~ mix.c:1541:13: note: place parentheses around the assignment to silence this warning 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | ( 1542 | !astream->rdonly && 1543 | (((MIXLOCAL *) astream->local)->expok = T) && 1544 | (statf = mix_parse (astream,&idxf,LONGT,NIL))) ? 1545 | LONGT : NIL) { | | ) mix.c:1541:13: note: use '==' to turn this assignment into an equality comparison 1541 | if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) && | ^ | == mix.c:1555: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] 1555 | sprintf (local->buf,MSRFMT,MSGTOK,(unsigned long) 0,0,0,0,0,0,0,'+',0,0, | ^~~~~~~~~~ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:1557: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] 1557 | hdrsize = strlen (local->buf); | ^~~~~~~~~~ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:1561:45: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign] 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^~~~~ mix.c:157:55: note: passing argument to parameter 'size' here 157 | FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size, | ^ mix.c:1561:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1561:16: note: place parentheses around the assignment to silence this warning 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^ | ( ) mix.c:1561:16: note: use '==' to turn this assignment into an equality comparison 1561 | if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) { | ^ | == mix.c:1569: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] 1569 | else if (date && !(ret = mail_parse_date (&elt,date))) { | ^~~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mix.c:1576: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] 1576 | mail_parse_date (&elt,tmp); | ^~~ ./mail.h:1696:56: note: passing argument to parameter 'string' here 1696 | long mail_parse_date (MESSAGECACHE *elt,unsigned char *string); | ^ mix.c:1750:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1750:14: note: place parentheses around the assignment to silence this warning 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ^ | ( ) mix.c:1750:14: note: use '==' to turn this assignment into an equality comparison 1750 | else if (s = mix_meta_slurp (stream,&i)) { | ^ | == mix.c:1757:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1757 | if (s = strstr (t = s,"\015\012")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:1757:8: note: place parentheses around the assignment to silence this warning 1757 | if (s = strstr (t = s,"\015\012")) { | ^ | ( ) mix.c:1757:8: note: use '==' to turn this assignment into an equality comparison 1757 | if (s = strstr (t = s,"\015\012")) { | ^ | == mix.c:1786:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ~~^~~~~~~~~~~~~~~~~~~~ mix.c:1786:14: note: place parentheses around the assignment to silence this warning 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ^ | ( ) mix.c:1786:14: note: use '==' to turn this assignment into an equality comparison 1786 | if (t = strchr (k = t,' ')) *t++ = '\0'; | ^ | == mix.c:1831:42: 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] 1831 | while ((s = mix_read_record (*idxf,LOCAL->buf,LOCAL->buflen,"index")) && | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:1973: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] 1973 | if (stat (mix_file_data (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2055: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] 2055 | sprintf (LOCAL->buf, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2058: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] 2058 | MM_LOG (LOCAL->buf,ERROR); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./mail.h:1605:20: note: passing argument to parameter 'string' here 1605 | void mm_log (char *string,long errflg); | ^ mix.c:2068:43: 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] 2068 | while ((t = s = mix_read_record (statf,LOCAL->buf,LOCAL->buflen, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:2164: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] 2164 | LOCAL->buf = (char *) fs_get ((LOCAL->buflen = sbuf.st_size) + 1); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2169: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] 2169 | (read (LOCAL->mfd,s = LOCAL->buf,sbuf.st_size) != sbuf.st_size)) | ^ ~~~~~~~~~~ mix.c:2204: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] 2204 | sprintf (LOCAL->buf,SEQFMT,LOCAL->metaseq = mix_modseq (LOCAL->metaseq)); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2205: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] 2205 | sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:2205: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] 2205 | sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/stdio.h:285:31: note: passing argument to parameter here 285 | int sprintf(char * __restrict, const char * __restrict, ...); | ^ mix.c:2207:56: 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] 2207 | for (i = 0, c = 'K', s = ss = LOCAL->buf + strlen (LOCAL->buf); | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ /usr/include/string.h:100:28: note: passing argument to parameter here 100 | size_t strlen(const char *) __pure; | ^ mix.c:2208: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] 2208 | (i < NUSERFLAGS) && (t = stream->user_flags[i]); ++i) { | ^ ~~~~~~~~~~~~~~~~~~~~~ mix.c:2222: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] 2222 | ret = (write (LOCAL->mfd,LOCAL->buf,i) == i) ? LONGT : NIL; | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ ./env_unix.h:86:31: note: passing argument to parameter 'buf' here 86 | long safe_write (int fd,char *buf,long nbytes); | ^ mix.c:2417: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] 2417 | if ((*fd = open (mix_file_data (LOCAL->buf,stream->mailbox,LOCAL->newmsg), | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2434:7: 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 | (LOCAL->buf,stream->mailbox, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:165:28: note: passing argument to parameter 'dst' here 165 | char *mix_file_data (char *dst,char *dir,unsigned long data); | ^ mix.c:2458:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ~~~~~^~~~~~~~~~~~~~~~~~~~ mix.c:2458:14: note: place parentheses around the assignment to silence this warning 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ^ | ( ) mix.c:2458:14: note: use '==' to turn this assignment into an equality comparison 2458 | if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET); | ^ | == mix.c:2499:44: 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] 2499 | while ((s = t = mix_read_record (srtcf,LOCAL->buf,LOCAL->buflen, | ^~~~~~~~~~ mix.c:108:15: note: expanded from macro 'LOCAL' 108 | #define LOCAL ((MIXLOCAL *) stream->local) | ^ mix.c:161:38: note: passing argument to parameter 'buf' here 161 | char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type); | ^ mix.c:2522:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2522 | if (i = mail_msgno (stream,uid)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2522:15: note: place parentheses around the assignment to silence this warning 2522 | if (i = mail_msgno (stream,uid)) { | ^ | ( ) mix.c:2522:15: note: use '==' to turn this assignment into an equality comparison 2522 | if (i = mail_msgno (stream,uid)) { | ^ | == mix.c:2598: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] 2598 | LOCAL->buf = (char *) | ^ ~~~~~~~~ 2599 | fs_get ((LOCAL->buflen = reflen) + 1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mix.c:2610: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] 2610 | for (s = LOCAL->buf,sl = NIL, | ^ ~~~~~~~~~~ mix.c:2618: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] 2618 | sl->text.data = cpystr (s); | ^ ~~~~~~~~~~ mix.c:2701:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2701 | if (sl = s->references) /* count length of references */ | ~~~^~~~~~~~~~~~~~~ mix.c:2701:9: note: place parentheses around the assignment to silence this warning 2701 | if (sl = s->references) /* count length of references */ | ^ | ( ) mix.c:2701:9: note: use '==' to turn this assignment into an equality comparison 2701 | if (sl = s->references) /* count length of references */ | ^ | == mix.c:2756:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2756 | if (s = strchr (buf,'\012')) { | ~~^~~~~~~~~~~~~~~~~~~~~ mix.c:2756:11: note: place parentheses around the assignment to silence this warning 2756 | if (s = strchr (buf,'\012')) { | ^ | ( ) mix.c:2756:11: note: use '==' to turn this assignment into an equality comparison 2756 | if (s = strchr (buf,'\012')) { | ^ | == 119 warnings generated. `cat CCTYPE` -shared -Wl,-soname,`cat SHLIBNAME` -o `cat SHLIBNAME` osdep.so mail.so misc.so newsrc.so smanager.so utf8.so utf8aux.so siglocal.so dummy.so pseudo.so netmsg.so flstring.so fdstring.so rfc822.so nntp.so smtp.so imap4r1.so pop3.so unix.so mbx.so mmdf.so tenex.so mtx.so news.so phile.so mh.so mx.so mix.so `cat LDFLAGS` ln -fs `cat SHLIBNAME` libc-client.so `cat CCTYPE` -shared -Wl,-soname,`cat SHLIBNAME` -o `cat SHLIBNAME` osdep.so mail.so misc.so newsrc.so smanager.so utf8.so utf8aux.so siglocal.so dummy.so pseudo.so netmsg.so flstring.so fdstring.so rfc822.so nntp.so smtp.so imap4r1.so pop3.so unix.so mbx.so mmdf.so tenex.so mtx.so news.so phile.so mh.so mx.so mix.so `cat LDFLAGS` ln -fs `cat SHLIBNAME` libc-client.so echo bsf > OSTYPE touch rebuild sh -c 'rm -rf rebuild || true' =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Staging for panda-cclient-20130621_3 ===> Generating temporary packing list /bin/mkdir -p /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/c-client.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/dummy.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/env.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/env_unix.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/fdstring.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/flockcyg.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/flocksim.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/flstring.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/fs.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/ftl.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/imap4r1.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/linkage.c /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/linkage.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/mail.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/misc.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/netmsg.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/newsrc.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/nl.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/nntp.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/osdep.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/pseudo.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/rfc822.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/smtp.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/sslio.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/tcp.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/tcp_unix.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/unix.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/utf8.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/utf8aux.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -s -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/libc-client.so.2010 /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/lib /bin/ln -sf libc-client.so.2010 /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/lib/libc-client.so install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/c-client.a /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/lib/libc-client.a install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/CFLAGS /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/LDFLAGS /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/panda-imap-3452f1598a8b4eeb44b38aead1c1598e379b05de/c-client/OSCFLAGS /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client install -m 0644 /wrkdirs/usr/ports/mail/panda-cclient/work/portrevision.h /wrkdirs/usr/ports/mail/panda-cclient/work/stage/usr/local/include/c-client ====> Compressing man pages (compress-man) =========================================================================== =================================================== ===== env: 'PKG_NOTES=build_timestamp ports_top_git_hash ports_top_checkout_unclean port_git_hash port_checkout_unclean built_by' 'PKG_NOTE_build_timestamp=2024-04-09T09:24:31+0000' 'PKG_NOTE_ports_top_git_hash=3d100fcffcd' 'PKG_NOTE_ports_top_checkout_unclean=yes' 'PKG_NOTE_port_git_hash=7c711691b37' 'PKG_NOTE_port_checkout_unclean=no' 'PKG_NOTE_built_by=poudriere-git-3.4.99.20240122_1' NO_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Building packages for panda-cclient-20130621_3 ===> Building panda-cclient-20130621_3 =========================================================================== =>> Cleaning up wrkdir ===> Cleaning for panda-cclient-20130621_3 build of mail/panda-cclient | panda-cclient-20130621_3 ended at Tue Apr 9 11:26:22 CEST 2024 build time: 00:01:55