sbuild (Debian sbuild) 0.64.1 (13 Oct 2013) on core.localdomain

╔══════════════════════════════════════════════════════════════════════════════╗
║ alpine 2.10+dfsg-1 (amd64)                                 09 Mar 2014 00:46 ║
╚══════════════════════════════════════════════════════════════════════════════╝

Package: alpine
Version: 2.10+dfsg-1
Source Version: 2.10+dfsg-1
Distribution: sid
Machine Architecture: amd64
Host Architecture: amd64
Build Architecture: amd64

I: NOTICE: Log filtering will replace 'build/alpine-bKOj7j/alpine-2.10+dfsg' with '«PKGBUILDDIR»'
I: NOTICE: Log filtering will replace 'build/alpine-bKOj7j' with '«BUILDDIR»'
I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/sid-amd64-sbuild-3b19a2c4-2121-4cf3-bb25-0261d23cebaf' with '«CHROOT»'

┌──────────────────────────────────────────────────────────────────────────────┐
│ Fetch source files                                                           │
└──────────────────────────────────────────────────────────────────────────────┘


Local sources
─────────────

alpine_2.10+dfsg-1.dsc exists in .; copying to chroot

Check arch
──────────

Merged Build-Depends: build-essential, fakeroot
Filtered Build-Depends: build-essential, fakeroot
dpkg-deb: building package `sbuild-build-depends-core-dummy' in `/«BUILDDIR»/resolver-LjSaNV/apt_archive/sbuild-build-depends-core-dummy.deb'.
OK
Reading package lists...

┌──────────────────────────────────────────────────────────────────────────────┐
│ Install core build dependencies (apt-based resolver)                         │
└──────────────────────────────────────────────────────────────────────────────┘

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
debconf: delaying package configuration, since apt-utils is not installed
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/820 B of archives.
After this operation, 0 B of additional disk space will be used.
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 13267 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-core-dummy.deb ...
Unpacking sbuild-build-depends-core-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-core-dummy (0.invalid.0) ...
Merged Build-Depends: base-files, base-passwd, bash, bsdutils, coreutils, dash, debianutils, diffutils, dpkg, e2fsprogs, findutils, grep, gzip, hostname, libc-bin, login, mount, ncurses-base, ncurses-bin, perl-base, sed, sysvinit, sysvinit-utils, tar, util-linux, libc6-dev | libc-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 5), libldap2-dev, libpam0g-dev, libncurses-dev, libssl-dev, autotools-dev, ca-certificates, automake, autoconf, libtool, libkrb5-dev, cdbs, aspell, dpkg-dev (>= 1.16.1~)
Filtered Build-Depends: base-files, base-passwd, bash, bsdutils, coreutils, dash, debianutils, diffutils, dpkg, e2fsprogs, findutils, grep, gzip, hostname, libc-bin, login, mount, ncurses-base, ncurses-bin, perl-base, sed, sysvinit, sysvinit-utils, tar, util-linux, libc6-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 5), libldap2-dev, libpam0g-dev, libncurses-dev, libssl-dev, autotools-dev, ca-certificates, automake, autoconf, libtool, libkrb5-dev, cdbs, aspell, dpkg-dev (>= 1.16.1~)
dpkg-deb: building package `sbuild-build-depends-alpine-dummy' in `/«BUILDDIR»/resolver-IRMMRX/apt_archive/sbuild-build-depends-alpine-dummy.deb'.
OK
Reading package lists...

┌──────────────────────────────────────────────────────────────────────────────┐
│ Install alpine build dependencies (apt-based resolver)                       │
└──────────────────────────────────────────────────────────────────────────────┘

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  aspell autoconf automake autotools-dev bsdmainutils ca-certificates cdbs
  comerr-dev debhelper dictionaries-common gettext gettext-base groff-base
  intltool-debian krb5-multidev libaspell15 libasprintf0c2 libcroco3
  libgcrypt11 libglib2.0-0 libgnutls26 libgpg-error0 libgssapi-krb5-2
  libgssrpc4 libk5crypto3 libkadm5clnt-mit9 libkadm5srv-mit9 libkdb5-7
  libkeyutils1 libkrb5-3 libkrb5-dev libkrb5support0 libldap-2.4-2
  libldap2-dev libncurses5-dev libp11-kit0 libpam0g-dev libsasl2-2
  libsasl2-modules-db libsigsegv2 libssl-dev libtasn1-6 libtool libunistring0
  libxml2 m4 man-db openssl po-debconf zlib1g-dev
Suggested packages:
  aspell-doc spellutils autoconf2.13 autoconf-archive gnu-standards
  autoconf-doc wamerican wordlist whois vacation devscripts doc-base dh-make
  emacsen-common jed-extra gettext-doc groff krb5-doc rng-tools krb5-user
  ncurses-doc libtool-doc automaken gfortran fortran95-compiler gcj-jdk less
  www-browser libmail-box-perl
Recommended packages:
  aspell-en aspell-dictionary aspell6a-dictionary curl wget lynx-cur autopoint
  libasprintf-dev libgettextpo-dev libglib2.0-data shared-mime-info
  krb5-locales libsasl2-modules libssl-doc libltdl-dev xml-core
  libmail-sendmail-perl
The following NEW packages will be installed:
  aspell autoconf automake autotools-dev bsdmainutils ca-certificates cdbs
  comerr-dev debhelper dictionaries-common gettext gettext-base groff-base
  intltool-debian krb5-multidev libaspell15 libasprintf0c2 libcroco3
  libgcrypt11 libglib2.0-0 libgnutls26 libgpg-error0 libgssapi-krb5-2
  libgssrpc4 libk5crypto3 libkadm5clnt-mit9 libkadm5srv-mit9 libkdb5-7
  libkeyutils1 libkrb5-3 libkrb5-dev libkrb5support0 libldap-2.4-2
  libldap2-dev libncurses5-dev libp11-kit0 libpam0g-dev libsasl2-2
  libsasl2-modules-db libsigsegv2 libssl-dev libtasn1-6 libtool libunistring0
  libxml2 m4 man-db openssl po-debconf sbuild-build-depends-alpine-dummy
  zlib1g-dev
0 upgraded, 51 newly installed, 0 to remove and 0 not upgraded.
Need to get 17.2 MB/17.2 MB of archives.
After this operation, 52.1 MB of additional disk space will be used.
Get:1 http://http.debian.net/debian/ sid/main groff-base amd64 1.22.2-5 [1043 kB]
Get:2 http://http.debian.net/debian/ sid/main bsdmainutils amd64 9.0.5 [211 kB]
Get:3 http://http.debian.net/debian/ sid/main man-db amd64 2.6.6-1 [990 kB]
Get:4 http://http.debian.net/debian/ sid/main libasprintf0c2 amd64 0.18.3.2-1 [29.2 kB]
Get:5 http://http.debian.net/debian/ sid/main libgpg-error0 amd64 1.12-0.2 [56.5 kB]
Get:6 http://http.debian.net/debian/ sid/main libgcrypt11 amd64 1.5.3-3 [249 kB]
Get:7 http://http.debian.net/debian/ sid/main libp11-kit0 amd64 0.20.2-1 [80.1 kB]
Get:8 http://http.debian.net/debian/ sid/main libtasn1-6 amd64 3.4-3 [48.8 kB]
Get:9 http://http.debian.net/debian/ sid/main libgnutls26 amd64 2.12.23-13 [530 kB]
Get:10 http://http.debian.net/debian/ sid/main libkeyutils1 amd64 1.5.6-1 [8758 B]
Get:11 http://http.debian.net/debian/ sid/main libkrb5support0 amd64 1.12+dfsg-2 [61.7 kB]
Get:12 http://http.debian.net/debian/ sid/main libk5crypto3 amd64 1.12+dfsg-2 [127 kB]
Get:13 http://http.debian.net/debian/ sid/main libkrb5-3 amd64 1.12+dfsg-2 [391 kB]
Get:14 http://http.debian.net/debian/ sid/main libgssapi-krb5-2 amd64 1.12+dfsg-2 [166 kB]
Get:15 http://http.debian.net/debian/ sid/main libgssrpc4 amd64 1.12+dfsg-2 [93.5 kB]
Get:16 http://http.debian.net/debian/ sid/main libkadm5clnt-mit9 amd64 1.12+dfsg-2 [73.3 kB]
Get:17 http://http.debian.net/debian/ sid/main libkdb5-7 amd64 1.12+dfsg-2 [72.7 kB]
Get:18 http://http.debian.net/debian/ sid/main libkadm5srv-mit9 amd64 1.12+dfsg-2 [91.0 kB]
Get:19 http://http.debian.net/debian/ sid/main libsasl2-modules-db amd64 2.1.26.dfsg1-9 [66.4 kB]
Get:20 http://http.debian.net/debian/ sid/main libsasl2-2 amd64 2.1.26.dfsg1-9 [103 kB]
Get:21 http://http.debian.net/debian/ sid/main libldap-2.4-2 amd64 2.4.31-1+nmu2+b1 [208 kB]
Get:22 http://http.debian.net/debian/ sid/main libxml2 amd64 2.9.1+dfsg1-3 [791 kB]
Get:23 http://http.debian.net/debian/ sid/main libglib2.0-0 amd64 2.38.2-5 [2231 kB]
Get:24 http://http.debian.net/debian/ sid/main libcroco3 amd64 0.6.8-2 [133 kB]
Get:25 http://http.debian.net/debian/ sid/main libsigsegv2 amd64 2.10-2 [29.8 kB]
Get:26 http://http.debian.net/debian/ sid/main libunistring0 amd64 0.9.3-5 [434 kB]
Get:27 http://http.debian.net/debian/ sid/main gettext-base amd64 0.18.3.2-1 [116 kB]
Get:28 http://http.debian.net/debian/ sid/main m4 amd64 1.4.17-3 [254 kB]
Get:29 http://http.debian.net/debian/ sid/main libaspell15 amd64 0.60.7~20110707-1 [707 kB]
Get:30 http://http.debian.net/debian/ sid/main dictionaries-common all 1.22.6 [303 kB]
Get:31 http://http.debian.net/debian/ sid/main aspell amd64 0.60.7~20110707-1 [362 kB]
Get:32 http://http.debian.net/debian/ sid/main autoconf all 2.69-5 [340 kB]
Get:33 http://http.debian.net/debian/ sid/main autotools-dev all 20130810.1 [69.6 kB]
Get:34 http://http.debian.net/debian/ sid/main automake all 1:1.14.1-3 [725 kB]
Get:35 http://http.debian.net/debian/ sid/main openssl amd64 1.0.1f-1 [663 kB]
Get:36 http://http.debian.net/debian/ sid/main ca-certificates all 20130906 [185 kB]
Get:37 http://http.debian.net/debian/ sid/main cdbs all 0.4.122 [81.4 kB]
Get:38 http://http.debian.net/debian/ sid/main gettext amd64 0.18.3.2-1 [1203 kB]
Get:39 http://http.debian.net/debian/ sid/main intltool-debian all 0.35.0+20060710.1 [30.8 kB]
Get:40 http://http.debian.net/debian/ sid/main po-debconf all 1.0.16+nmu2 [224 kB]
Get:41 http://http.debian.net/debian/ sid/main debhelper all 9.20140228 [691 kB]
Get:42 http://http.debian.net/debian/ sid/main comerr-dev amd64 2.1-1.42.9-3 [38.3 kB]
Get:43 http://http.debian.net/debian/ sid/main krb5-multidev amd64 1.12+dfsg-2 [168 kB]
Get:44 http://http.debian.net/debian/ sid/main libncurses5-dev amd64 5.9+20140118-1 [170 kB]
Get:45 http://http.debian.net/debian/ sid/main libpam0g-dev amd64 1.1.8-2 [182 kB]
Get:46 http://http.debian.net/debian/ sid/main zlib1g-dev amd64 1:1.2.8.dfsg-1 [217 kB]
Get:47 http://http.debian.net/debian/ sid/main libssl-dev amd64 1.0.1f-1 [1243 kB]
Get:48 http://http.debian.net/debian/ sid/main libtool amd64 2.4.2-1.7 [505 kB]
Get:49 http://http.debian.net/debian/ sid/main libkrb5-dev amd64 1.12+dfsg-2 [46.3 kB]
Get:50 http://http.debian.net/debian/ sid/main libldap2-dev amd64 2.4.31-1+nmu2+b1 [313 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 17.2 MB in 27s (614 kB/s)
Selecting previously unselected package groff-base.
(Reading database ... 13267 files and directories currently installed.)
Preparing to unpack .../groff-base_1.22.2-5_amd64.deb ...
Unpacking groff-base (1.22.2-5) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../bsdmainutils_9.0.5_amd64.deb ...
Unpacking bsdmainutils (9.0.5) ...
Selecting previously unselected package man-db.
Preparing to unpack .../man-db_2.6.6-1_amd64.deb ...
Unpacking man-db (2.6.6-1) ...
Selecting previously unselected package libasprintf0c2:amd64.
Preparing to unpack .../libasprintf0c2_0.18.3.2-1_amd64.deb ...
Unpacking libasprintf0c2:amd64 (0.18.3.2-1) ...
Selecting previously unselected package libgpg-error0:amd64.
Preparing to unpack .../libgpg-error0_1.12-0.2_amd64.deb ...
Unpacking libgpg-error0:amd64 (1.12-0.2) ...
Selecting previously unselected package libgcrypt11:amd64.
Preparing to unpack .../libgcrypt11_1.5.3-3_amd64.deb ...
Unpacking libgcrypt11:amd64 (1.5.3-3) ...
Selecting previously unselected package libp11-kit0:amd64.
Preparing to unpack .../libp11-kit0_0.20.2-1_amd64.deb ...
Unpacking libp11-kit0:amd64 (0.20.2-1) ...
Selecting previously unselected package libtasn1-6:amd64.
Preparing to unpack .../libtasn1-6_3.4-3_amd64.deb ...
Unpacking libtasn1-6:amd64 (3.4-3) ...
Selecting previously unselected package libgnutls26:amd64.
Preparing to unpack .../libgnutls26_2.12.23-13_amd64.deb ...
Unpacking libgnutls26:amd64 (2.12.23-13) ...
Selecting previously unselected package libkeyutils1:amd64.
Preparing to unpack .../libkeyutils1_1.5.6-1_amd64.deb ...
Unpacking libkeyutils1:amd64 (1.5.6-1) ...
Selecting previously unselected package libkrb5support0:amd64.
Preparing to unpack .../libkrb5support0_1.12+dfsg-2_amd64.deb ...
Unpacking libkrb5support0:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libk5crypto3:amd64.
Preparing to unpack .../libk5crypto3_1.12+dfsg-2_amd64.deb ...
Unpacking libk5crypto3:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libkrb5-3:amd64.
Preparing to unpack .../libkrb5-3_1.12+dfsg-2_amd64.deb ...
Unpacking libkrb5-3:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libgssapi-krb5-2:amd64.
Preparing to unpack .../libgssapi-krb5-2_1.12+dfsg-2_amd64.deb ...
Unpacking libgssapi-krb5-2:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libgssrpc4:amd64.
Preparing to unpack .../libgssrpc4_1.12+dfsg-2_amd64.deb ...
Unpacking libgssrpc4:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libkadm5clnt-mit9:amd64.
Preparing to unpack .../libkadm5clnt-mit9_1.12+dfsg-2_amd64.deb ...
Unpacking libkadm5clnt-mit9:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libkdb5-7:amd64.
Preparing to unpack .../libkdb5-7_1.12+dfsg-2_amd64.deb ...
Unpacking libkdb5-7:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libkadm5srv-mit9:amd64.
Preparing to unpack .../libkadm5srv-mit9_1.12+dfsg-2_amd64.deb ...
Unpacking libkadm5srv-mit9:amd64 (1.12+dfsg-2) ...
Selecting previously unselected package libsasl2-modules-db:amd64.
Preparing to unpack .../libsasl2-modules-db_2.1.26.dfsg1-9_amd64.deb ...
Unpacking libsasl2-modules-db:amd64 (2.1.26.dfsg1-9) ...
Selecting previously unselected package libsasl2-2:amd64.
Preparing to unpack .../libsasl2-2_2.1.26.dfsg1-9_amd64.deb ...
Unpacking libsasl2-2:amd64 (2.1.26.dfsg1-9) ...
Selecting previously unselected package libldap-2.4-2:amd64.
Preparing to unpack .../libldap-2.4-2_2.4.31-1+nmu2+b1_amd64.deb ...
Unpacking libldap-2.4-2:amd64 (2.4.31-1+nmu2+b1) ...
Selecting previously unselected package libxml2:amd64.
Preparing to unpack .../libxml2_2.9.1+dfsg1-3_amd64.deb ...
Unpacking libxml2:amd64 (2.9.1+dfsg1-3) ...
Selecting previously unselected package libglib2.0-0:amd64.
Preparing to unpack .../libglib2.0-0_2.38.2-5_amd64.deb ...
Unpacking libglib2.0-0:amd64 (2.38.2-5) ...
Selecting previously unselected package libcroco3:amd64.
Preparing to unpack .../libcroco3_0.6.8-2_amd64.deb ...
Unpacking libcroco3:amd64 (0.6.8-2) ...
Selecting previously unselected package libsigsegv2:amd64.
Preparing to unpack .../libsigsegv2_2.10-2_amd64.deb ...
Unpacking libsigsegv2:amd64 (2.10-2) ...
Selecting previously unselected package libunistring0:amd64.
Preparing to unpack .../libunistring0_0.9.3-5_amd64.deb ...
Unpacking libunistring0:amd64 (0.9.3-5) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../gettext-base_0.18.3.2-1_amd64.deb ...
Unpacking gettext-base (0.18.3.2-1) ...
Selecting previously unselected package m4.
Preparing to unpack .../archives/m4_1.4.17-3_amd64.deb ...
Unpacking m4 (1.4.17-3) ...
Selecting previously unselected package libaspell15.
Preparing to unpack .../libaspell15_0.60.7~20110707-1_amd64.deb ...
Unpacking libaspell15 (0.60.7~20110707-1) ...
Selecting previously unselected package dictionaries-common.
Preparing to unpack .../dictionaries-common_1.22.6_all.deb ...
Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common'
Unpacking dictionaries-common (1.22.6) ...
Selecting previously unselected package aspell.
Preparing to unpack .../aspell_0.60.7~20110707-1_amd64.deb ...
Unpacking aspell (0.60.7~20110707-1) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../autoconf_2.69-5_all.deb ...
Unpacking autoconf (2.69-5) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../autotools-dev_20130810.1_all.deb ...
Unpacking autotools-dev (20130810.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../automake_1%3a1.14.1-3_all.deb ...
Unpacking automake (1:1.14.1-3) ...
Selecting previously unselected package openssl.
Preparing to unpack .../openssl_1.0.1f-1_amd64.deb ...
Unpacking openssl (1.0.1f-1) ...
Selecting previously unselected package ca-certificates.
Preparing to unpack .../ca-certificates_20130906_all.deb ...
Unpacking ca-certificates (20130906) ...
Selecting previously unselected package cdbs.
Preparing to unpack .../archives/cdbs_0.4.122_all.deb ...
Unpacking cdbs (0.4.122) ...
Selecting previously unselected package gettext.
Preparing to unpack .../gettext_0.18.3.2-1_amd64.deb ...
Unpacking gettext (0.18.3.2-1) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../intltool-debian_0.35.0+20060710.1_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.1) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../po-debconf_1.0.16+nmu2_all.deb ...
Unpacking po-debconf (1.0.16+nmu2) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../debhelper_9.20140228_all.deb ...
Unpacking debhelper (9.20140228) ...
Selecting previously unselected package comerr-dev.
Preparing to unpack .../comerr-dev_2.1-1.42.9-3_amd64.deb ...
Unpacking comerr-dev (2.1-1.42.9-3) ...
Selecting previously unselected package krb5-multidev.
Preparing to unpack .../krb5-multidev_1.12+dfsg-2_amd64.deb ...
Unpacking krb5-multidev (1.12+dfsg-2) ...
Selecting previously unselected package libncurses5-dev:amd64.
Preparing to unpack .../libncurses5-dev_5.9+20140118-1_amd64.deb ...
Unpacking libncurses5-dev:amd64 (5.9+20140118-1) ...
Selecting previously unselected package libpam0g-dev:amd64.
Preparing to unpack .../libpam0g-dev_1.1.8-2_amd64.deb ...
Unpacking libpam0g-dev:amd64 (1.1.8-2) ...
Selecting previously unselected package zlib1g-dev:amd64.
Preparing to unpack .../zlib1g-dev_1%3a1.2.8.dfsg-1_amd64.deb ...
Unpacking zlib1g-dev:amd64 (1:1.2.8.dfsg-1) ...
Selecting previously unselected package libssl-dev:amd64.
Preparing to unpack .../libssl-dev_1.0.1f-1_amd64.deb ...
Unpacking libssl-dev:amd64 (1.0.1f-1) ...
Selecting previously unselected package libtool.
Preparing to unpack .../libtool_2.4.2-1.7_amd64.deb ...
Unpacking libtool (2.4.2-1.7) ...
Selecting previously unselected package libkrb5-dev.
Preparing to unpack .../libkrb5-dev_1.12+dfsg-2_amd64.deb ...
Unpacking libkrb5-dev (1.12+dfsg-2) ...
Selecting previously unselected package libldap2-dev:amd64.
Preparing to unpack .../libldap2-dev_2.4.31-1+nmu2+b1_amd64.deb ...
Unpacking libldap2-dev:amd64 (2.4.31-1+nmu2+b1) ...
Selecting previously unselected package sbuild-build-depends-alpine-dummy.
Preparing to unpack .../sbuild-build-depends-alpine-dummy.deb ...
Unpacking sbuild-build-depends-alpine-dummy (0.invalid.0) ...
Processing triggers for mime-support (3.54) ...
Setting up groff-base (1.22.2-5) ...
Setting up bsdmainutils (9.0.5) ...
update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode
update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode
Setting up man-db (2.6.6-1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libasprintf0c2:amd64 (0.18.3.2-1) ...
Setting up libgpg-error0:amd64 (1.12-0.2) ...
Setting up libgcrypt11:amd64 (1.5.3-3) ...
Setting up libp11-kit0:amd64 (0.20.2-1) ...
Setting up libtasn1-6:amd64 (3.4-3) ...
Setting up libgnutls26:amd64 (2.12.23-13) ...
Setting up libkeyutils1:amd64 (1.5.6-1) ...
Setting up libkrb5support0:amd64 (1.12+dfsg-2) ...
Setting up libk5crypto3:amd64 (1.12+dfsg-2) ...
Setting up libkrb5-3:amd64 (1.12+dfsg-2) ...
Setting up libgssapi-krb5-2:amd64 (1.12+dfsg-2) ...
Setting up libgssrpc4:amd64 (1.12+dfsg-2) ...
Setting up libkadm5clnt-mit9:amd64 (1.12+dfsg-2) ...
Setting up libkdb5-7:amd64 (1.12+dfsg-2) ...
Setting up libkadm5srv-mit9:amd64 (1.12+dfsg-2) ...
Setting up libsasl2-modules-db:amd64 (2.1.26.dfsg1-9) ...
Setting up libsasl2-2:amd64 (2.1.26.dfsg1-9) ...
Setting up libldap-2.4-2:amd64 (2.4.31-1+nmu2+b1) ...
Setting up libxml2:amd64 (2.9.1+dfsg1-3) ...
Setting up libglib2.0-0:amd64 (2.38.2-5) ...
No schema files found: doing nothing.
Setting up libcroco3:amd64 (0.6.8-2) ...
Setting up libsigsegv2:amd64 (2.10-2) ...
Setting up libunistring0:amd64 (0.9.3-5) ...
Setting up gettext-base (0.18.3.2-1) ...
Setting up m4 (1.4.17-3) ...
Setting up libaspell15 (0.60.7~20110707-1) ...
Setting up dictionaries-common (1.22.6) ...
Setting up autoconf (2.69-5) ...
Setting up autotools-dev (20130810.1) ...
Setting up automake (1:1.14.1-3) ...
update-alternatives: using /usr/bin/automake-1.14 to provide /usr/bin/automake (automake) in auto mode
Setting up openssl (1.0.1f-1) ...
Setting up ca-certificates (20130906) ...
Setting up cdbs (0.4.122) ...
Setting up gettext (0.18.3.2-1) ...
Setting up intltool-debian (0.35.0+20060710.1) ...
Setting up po-debconf (1.0.16+nmu2) ...
Setting up debhelper (9.20140228) ...
Setting up comerr-dev (2.1-1.42.9-3) ...
Setting up krb5-multidev (1.12+dfsg-2) ...
Setting up libncurses5-dev:amd64 (5.9+20140118-1) ...
Setting up libpam0g-dev:amd64 (1.1.8-2) ...
Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-1) ...
Setting up libssl-dev:amd64 (1.0.1f-1) ...
Setting up libtool (2.4.2-1.7) ...
Setting up libkrb5-dev (1.12+dfsg-2) ...
Setting up libldap2-dev:amd64 (2.4.31-1+nmu2+b1) ...
Processing triggers for dictionaries-common (1.22.6) ...
Setting up aspell (0.60.7~20110707-1) ...
Processing triggers for dictionaries-common (1.22.6) ...
Setting up sbuild-build-depends-alpine-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.18-4) ...
Processing triggers for ca-certificates (20130906) ...
Updating certificates in /etc/ssl/certs... 164 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....done.

┌──────────────────────────────────────────────────────────────────────────────┐
│ Build environment                                                            │
└──────────────────────────────────────────────────────────────────────────────┘

Kernel: Linux 3.12-1-amd64 amd64 (x86_64)
Toolchain package versions: binutils_2.24-4 dpkg-dev_1.17.6 g++-4.8_4.8.2-16 gcc-4.8_4.8.2-16 libc6-dev_2.18-4 libstdc++-4.8-dev_4.8.2-16 libstdc++6_4.8.2-16 linux-libc-dev_3.13.5-1
Package versions: apt_0.9.15.5+b1 aspell_0.60.7~20110707-1 autoconf_2.69-5 automake_1:1.14.1-3 autotools-dev_20130810.1 base-files_7.2 base-passwd_3.5.32 bash_4.3-2 binfmt-support_2.1.3-2 binutils_2.24-4 bsdmainutils_9.0.5 bsdutils_1:2.20.1-5.6 build-essential_11.6 bzip2_1.0.6-5 ca-certificates_20130906 cdbs_0.4.122 clang-3.4_1:3.4-2 comerr-dev_2.1-1.42.9-3 coreutils_8.21-1 cpp_4:4.8.2-2 cpp-4.8_4.8.2-16 dash_0.5.7-4 debconf_1.5.52 debconf-i18n_1.5.52 debfoster_2.7-1.2 debhelper_9.20140228 debian-archive-keyring_2012.4 debianutils_4.4 dictionaries-common_1.22.6 diffutils_1:3.3-1 dpkg_1.17.6 dpkg-dev_1.17.6 e2fslibs_1.42.9-3 e2fsprogs_1.42.9-3 fakeroot_1.20-3 file_1:5.17-1 findutils_4.4.2-7 g++_4:4.8.2-2 g++-4.8_4.8.2-16 gcc_4:4.8.2-2 gcc-4.8_4.8.2-16 gcc-4.8-base_4.8.2-16 gettext_0.18.3.2-1 gettext-base_0.18.3.2-1 gnupg_1.4.16-1.1 gpgv_1.4.16-1.1 grep_2.18-1 groff-base_1.22.2-5 gzip_1.6-3 hostname_3.15 init-system-helpers_1.18 initscripts_2.88dsf-51 insserv_1.14.0-5 intltool-debian_0.35.0+20060710.1 krb5-multidev_1.12+dfsg-2 libacl1_2.2.52-1 libapt-pkg4.12_0.9.15.5+b1 libasan0_4.8.2-16 libaspell15_0.60.7~20110707-1 libasprintf0c2_0.18.3.2-1 libatomic1_4.8.2-16 libattr1_1:2.4.47-1 libaudit-common_1:2.3.4-1 libaudit1_1:2.3.4-1 libblkid1_2.20.1-5.6 libbz2-1.0_1.0.6-5 libc-bin_2.18-4 libc-dev-bin_2.18-4 libc6_2.18-4 libc6-dev_2.18-4 libcap2_1:2.22-1.2 libclang-common-3.4-dev_1:3.4-2 libclang1-3.4_1:3.4-2 libcloog-isl4_0.18.2-1 libcomerr2_1.42.9-3 libcroco3_0.6.8-2 libdb5.1_5.1.29-7 libdb5.3_5.3.28-3 libdebconfclient0_0.188 libdpkg-perl_1.17.6 libexpat1_2.1.0-4 libfakeroot_1.20-3 libffi-dev_3.0.13-12 libffi6_3.0.13-12 libgc1c2_1:7.2d-6 libgcc-4.8-dev_4.8.2-16 libgcc1_1:4.8.2-16 libgcrypt11_1.5.3-3 libgdbm3_1.8.3-12 libglib2.0-0_2.38.2-5 libgmp10_2:5.1.3+dfsg-1 libgnutls26_2.12.23-13 libgomp1_4.8.2-16 libgpg-error0_1.12-0.2 libgpm2_1.20.4-6.1 libgssapi-krb5-2_1.12+dfsg-2 libgssrpc4_1.12+dfsg-2 libisl10_0.12.2-1 libitm1_4.8.2-16 libjsoncpp0_0.6.0~rc2-3 libk5crypto3_1.12+dfsg-2 libkadm5clnt-mit9_1.12+dfsg-2 libkadm5srv-mit9_1.12+dfsg-2 libkdb5-7_1.12+dfsg-2 libkeyutils1_1.5.6-1 libkrb5-3_1.12+dfsg-2 libkrb5-dev_1.12+dfsg-2 libkrb5support0_1.12+dfsg-2 libldap-2.4-2_2.4.31-1+nmu2+b1 libldap2-dev_2.4.31-1+nmu2+b1 libllvm3.4_1:3.4-2 liblocale-gettext-perl_1.05-8 liblzma5_5.1.1alpha+20120614-2 libmagic1_1:5.17-1 libmount1_2.20.1-5.6 libmpc3_1.0.1-1 libmpfr4_3.1.2-1 libncurses5_5.9+20140118-1 libncurses5-dev_5.9+20140118-1 libncursesw5_5.9+20140118-1 libobjc-4.8-dev_4.8.2-16 libobjc4_4.8.2-16 libp11-kit0_0.20.2-1 libpam-modules_1.1.8-2 libpam-modules-bin_1.1.8-2 libpam-runtime_1.1.8-2 libpam0g_1.1.8-2 libpam0g-dev_1.1.8-2 libpcre3_1:8.31-2 libpipeline1_1.2.6-2 libpython-stdlib_2.7.5-5 libpython2.7-minimal_2.7.6-7 libpython2.7-stdlib_2.7.6-7 libquadmath0_4.8.2-16 libreadline6_6.3-1 libsasl2-2_2.1.26.dfsg1-9 libsasl2-modules-db_2.1.26.dfsg1-9 libselinux1_2.2.2-1 libsemanage-common_2.2-1 libsemanage1_2.2-1 libsepol1_2.2-1 libsigsegv2_2.10-2 libslang2_2.2.4-16 libsqlite3-0_3.8.3.1-1 libss2_1.42.9-3 libssl-dev_1.0.1f-1 libssl1.0.0_1.0.1f-1 libstdc++-4.8-dev_4.8.2-16 libstdc++6_4.8.2-16 libtasn1-6_3.4-3 libtext-charwidth-perl_0.04-7+b2 libtext-iconv-perl_1.7-5+b1 libtext-wrapi18n-perl_0.06-7 libtimedate-perl_2.3000-1 libtinfo-dev_5.9+20140118-1 libtinfo5_5.9+20140118-1 libtool_2.4.2-1.7 libtsan0_4.8.2-16 libunistring0_0.9.3-5 libusb-0.1-4_2:0.1.12-23.3 libustr-1.0-1_1.0.4-3 libuuid1_2.20.1-5.6 libxml2_2.9.1+dfsg1-3 linux-libc-dev_3.13.5-1 llvm-3.4_1:3.4-2 llvm-3.4-dev_1:3.4-2 llvm-3.4-runtime_1:3.4-2 login_1:4.1.5.1-1 lsb-base_4.1+Debian12 m4_1.4.17-3 make_3.81-8.3 man-db_2.6.6-1 mawk_1.3.3-17 mime-support_3.54 mount_2.20.1-5.6 multiarch-support_2.18-4 nano_2.2.6-1+b1 ncurses-base_5.9+20140118-1 ncurses-bin_5.9+20140118-1 openssl_1.0.1f-1 passwd_1:4.1.5.1-1 patch_2.7.1-4 perl_5.18.2-2+b1 perl-base_5.18.2-2+b1 perl-modules_5.18.2-2 po-debconf_1.0.16+nmu2 python_2.7.5-5 python-minimal_2.7.5-5 python2.7_2.7.6-7 python2.7-minimal_2.7.6-7 readline-common_6.3-1 sbuild-build-depends-alpine-dummy_0.invalid.0 sbuild-build-depends-core-dummy_0.invalid.0 sed_4.2.2-4 sensible-utils_0.0.9 sysv-rc_2.88dsf-51 sysvinit_2.88dsf-51 sysvinit-core_2.88dsf-51 sysvinit-utils_2.88dsf-51 tar_1.27.1-1 tzdata_2013i-1 util-linux_2.20.1-5.6 xz-utils_5.1.1alpha+20120614-2 zlib1g_1:1.2.8.dfsg-1 zlib1g-dev_1:1.2.8.dfsg-1

┌──────────────────────────────────────────────────────────────────────────────┐
│ Build                                                                        │
└──────────────────────────────────────────────────────────────────────────────┘


Unpack source
─────────────

gpgv: keyblock resource `/sbuild-nonexistent/.gnupg/trustedkeys.gpg': file open error
gpgv: Signature made Tue May 21 07:30:35 2013 UTC using DSA key ID 70096AD1
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./alpine_2.10+dfsg-1.dsc
dpkg-source: info: extracting alpine in alpine-2.10+dfsg
dpkg-source: info: unpacking alpine_2.10+dfsg.orig.tar.gz
dpkg-source: info: unpacking alpine_2.10+dfsg-1.debian.tar.gz
dpkg-source: info: applying 10_fix_linking_order.patch
dpkg-source: info: applying 10_config2etc.patch
dpkg-source: info: applying 10_alpine_1.10_mlock.patch
dpkg-source: info: applying 10_alpine_1.10_spooldir.patch
dpkg-source: info: applying 20_barry_defreese_hurd_build_fix.patch
dpkg-source: info: applying 30_fix_man_page_hardcoded_paths.patch
dpkg-source: info: applying 40_fix_tech_notes_hardcoded_paths.patch
dpkg-source: info: applying 40_fix_filter_hardcoded_paths.patch
dpkg-source: info: applying 60_fix_string_error.patch
dpkg-source: info: applying 70_des56_rfc5751.patch
dpkg-source: info: applying 80_remove_phone_home.patch

Check disc space
────────────────

Sufficient free space for build

User Environment
────────────────

HOME=/sbuild-nonexistent
LOGNAME=nonas
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SCHROOT_ALIAS_NAME=sid-amd64-sbuild
SCHROOT_CHROOT_NAME=sid-amd64-sbuild
SCHROOT_COMMAND=env
SCHROOT_GID=1000
SCHROOT_GROUP=nonas
SCHROOT_SESSION_ID=sid-amd64-sbuild-3b19a2c4-2121-4cf3-bb25-0261d23cebaf
SCHROOT_UID=1000
SCHROOT_USER=nonas
SHELL=/bin/sh
TERM=xterm
USER=nonas

dpkg-buildpackage
─────────────────

dpkg-buildpackage: source package alpine
dpkg-buildpackage: source version 2.10+dfsg-1
dpkg-buildpackage: source distribution unstable
dpkg-buildpackage: source changed by Asheesh Laroia <asheesh@asheesh.org>
 dpkg-source --before-build alpine-2.10+dfsg
dpkg-buildpackage: host architecture amd64
dpkg-source: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
 fakeroot debian/rules clean
test -x debian/rules
rm -f debian/stamp-makefile-build debian/stamp-makefile-install
/usr/bin/make  -C .  -k distclean
make[1]: *** No rule to make target `distclean'.
make[1]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[1]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make: [makefile-clean] Error 2 (ignored)
rm -f debian/stamp-autotools
rmdir --ignore-fail-on-non-empty .
rmdir: failed to remove '.': Invalid argument
make: [makefile-clean] Error 1 (ignored)
for i in ./config.guess ./config.sub ./config.rpath ; do \
		if test -e $i.cdbs-orig ; then \
			mv $i.cdbs-orig $i ; \
		fi ; \
	done
dh_clean 
rm -f debian/stamp-autotools-files
 dpkg-source -b alpine-2.10+dfsg
dpkg-source: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building alpine using existing ./alpine_2.10+dfsg.orig.tar.gz
dpkg-source: warning: ignoring deletion of file web/cgi/alpine/2.0/img/cbn/msglist.gif.bak
dpkg-source: warning: ignoring deletion of directory autom4te.cache
dpkg-source: warning: ignoring deletion of file autom4te.cache/traces.2
dpkg-source: warning: ignoring deletion of file autom4te.cache/output.1
dpkg-source: warning: ignoring deletion of file autom4te.cache/output.0
dpkg-source: warning: ignoring deletion of file autom4te.cache/output.2
dpkg-source: warning: ignoring deletion of file autom4te.cache/traces.0
dpkg-source: warning: ignoring deletion of file autom4te.cache/requests
dpkg-source: warning: ignoring deletion of file autom4te.cache/traces.1
dpkg-source: info: building alpine in alpine_2.10+dfsg-1.debian.tar.xz
dpkg-source: info: building alpine in alpine_2.10+dfsg-1.dsc
 debian/rules build
test -x debian/rules
mkdir -p "."
/usr/share/cdbs/1/rules/buildcore.mk:109: WARNING:  DEB_DH_STRIP_ARGS is a deprecated variable
if test -e /usr/share/misc/config.guess ; then \
		for i in ./config.guess ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/misc/config.guess $i ; \
			fi ; \
		done ; \
	fi
if test -e /usr/share/misc/config.sub ; then \
		for i in ./config.sub ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/misc/config.sub $i ; \
			fi ; \
		done ; \
	fi
if test -e /usr/share/gnulib/build-aux/config.rpath ; then \
		for i in ./config.rpath ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/gnulib/build-aux/config.rpath $i ; \
			fi ; \
		done ; \
	fi
touch debian/stamp-autotools-files
chmod a+x /«BUILDDIR»/alpine-2.10+dfsg/./configure
mkdir -p .
cd . &&   CFLAGS="-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall" CXXFLAGS="-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security" CPPFLAGS="-D_FORTIFY_SOURCE=2" LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" /«BUILDDIR»/alpine-2.10+dfsg/./configure --build=x86_64-linux-gnu  --prefix=/usr --includedir="\${prefix}/include" --mandir="\${prefix}/share/man" --infodir="\${prefix}/share/info" --sysconfdir=/etc --localstatedir=/var --libexecdir="\${prefix}/lib/alpine" --srcdir=. --disable-maintainer-mode --disable-dependency-tracking --disable-silent-rules   --host=x86_64-linux-gnu --build=x86_64-linux-gnu --prefix=/usr --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info CFLAGS="-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall" LDFLAGS="-Wl,-z,defs,--as-needed" --with-krb5 --with-system-pinerc=/etc/pine.conf --with-system-fixed-pinerc=/etc/pinerc.fixed --with-debug-level=0 --with-spellcheck-prog=aspell --without-tcl --with-passfile=.pine-passfile --with-smtp-msa=/usr/sbin/sendmail --with-krb5-dir=/usr 
configure: WARNING: unrecognized options: --disable-silent-rules, --with-spellcheck-prog
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
configure: Configuring for alpine 2.10 (x86_64-pc-linux-gnu))
checking for x86_64-linux-gnu-gcc... x86_64-linux-gnu-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether x86_64-linux-gnu-gcc accepts -g... yes
checking for x86_64-linux-gnu-gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of x86_64-linux-gnu-gcc... none
checking for x86_64-linux-gnu-gcc option to accept ISO C99... none needed
checking for x86_64-linux-gnu-gcc option to accept ISO Standard C... (cached) none needed
checking whether make sets $(MAKE)... (cached) yes
checking whether ln -s works... yes
checking for gawk... (cached) mawk
checking for x86_64-linux-gnu-ranlib... no
checking for ranlib... ranlib
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by x86_64-linux-gnu-gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 3458764513820540925
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for x86_64-linux-gnu-objdump... no
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for x86_64-linux-gnu-ar... no
checking for ar... ar
checking for x86_64-linux-gnu-strip... no
checking for strip... strip
checking for x86_64-linux-gnu-ranlib... ranlib
checking command to parse /usr/bin/nm -B output from x86_64-linux-gnu-gcc object... ok
checking how to run the C preprocessor... x86_64-linux-gnu-gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if x86_64-linux-gnu-gcc supports -fno-rtti -fno-exceptions... yes
checking for x86_64-linux-gnu-gcc option to produce PIC... -fPIC -DPIC
checking if x86_64-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes
checking if x86_64-linux-gnu-gcc static flag -static works... yes
checking if x86_64-linux-gnu-gcc supports -c -o file.o... yes
checking if x86_64-linux-gnu-gcc supports -c -o file.o... (cached) yes
checking whether the x86_64-linux-gnu-gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for ar... /usr/bin/ar
checking for rm... /bin/rm
checking for cp... /bin/cp
checking for ln... /bin/ln
checking for sed... (cached) /bin/sed
checking for make... /usr/bin/make
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for ld used by GCC... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking option: dmalloc enabled... no
checking option: debugging is enabled... yes
checking option: optimization is enabled... yes
checking option: mouse support enabled... yes
checking option: quotas enabled... no
checking option: From changing enabled... yes
checking option: background post enabled... yes
checking option: keyboard lock enabled... yes
checking option: from encoding enabled... no
checking for inews... no
checking for passwd... /usr/bin/passwd
checking for hunspell... no
checking for aspell... aspell
checking for aspell... /usr/bin/aspell
checking for hunspell... no
checking for aspell... aspell
checking for aspell... /usr/bin/aspell
configure: --with-passfile definition overrides OS-Specific password caching
configure: Excluding TCL Support, and thus Web Alpine Support
checking for setupterm in -ltinfo... yes
checking for ber_alloc in -llber... yes
checking for library containing ldap_init... -lldap
configure: Including LDAP Support
checking if we should define LDAP_DEPRECATED... yes
checking for library containing SSL_library_init... -lssl
configure: OpenSSL libraries FOUND
checking for library containing gss_init_sec_context... -lgssapi_krb5
checking gssapi/gssapi_generic.h usability... yes
checking gssapi/gssapi_generic.h presence... yes
checking for gssapi/gssapi_generic.h... yes
checking for library containing regcomp... none required
checking regex.h usability... yes
checking regex.h presence... yes
checking for regex.h... yes
checking for pthread support... checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
yes
checking for library containing nanosleep... none required
checking for ANSI C header files... (cached) yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking whether stat file-mode macros are broken... no
checking for sys/wait.h that is POSIX.1 compatible... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether termios.h defines TIOCGWINSZ... no
checking whether sys/ioctl.h defines TIOCGWINSZ... yes
checking for unistd.h... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking ctype.h usability... yes
checking ctype.h presence... yes
checking for ctype.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking setjmp.h usability... yes
checking setjmp.h presence... yes
checking for setjmp.h... yes
checking for memory.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/uio.h usability... yes
checking sys/uio.h presence... yes
checking for sys/uio.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking sys/poll.h usability... yes
checking sys/poll.h presence... yes
checking for sys/poll.h... yes
checking stropts.h usability... yes
checking stropts.h presence... yes
checking for stropts.h... yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking sys/syslog.h usability... yes
checking sys/syslog.h presence... yes
checking for sys/syslog.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking sys/utime.h usability... no
checking sys/utime.h presence... no
checking for sys/utime.h... no
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking assert.h usability... yes
checking assert.h presence... yes
checking for assert.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking return type of signal handlers... void
checking for size_t... yes
checking for mode_t... yes
checking for pid_t... yes
checking for uid_t in sys/types.h... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for union wait... yes
checking for stdint.h... (cached) yes
checking for stdint.h... (cached) yes
checking argument pointer type of qsort compare function and base... void
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking for sys/socket.h... (cached) yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking for working strcoll... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for strchr... yes
checking for memcpy... yes
checking for strtol... yes
checking for strtoul... yes
checking for select... yes
checking for poll... yes
checking for qsort... yes
checking for getuid... yes
checking for getpwuid... yes
checking for getpwnam... yes
checking for gettimeofday... yes
checking for tmpfile... yes
checking for uname... yes
checking for rename... yes
checking for read... yes
checking for signal... yes
checking for setjmp... yes
checking for chown... yes
checking for wait4... yes
checking for waitpid... yes
checking for wait... yes
checking for srandom... yes
checking for popen... yes
checking for pclose... yes
checking for fsync... yes
checking for truncate... yes
checking for listen... yes
checking for wcwidth... yes
checking for mbstowcs... yes
checking for wcrtomb... yes
checking for putenv... yes
checking for setenv... yes
checking for library containing gethostname... none required
checking for library containing socket... none required
checking for library containing bind... none required
checking for sigaction... yes
checking for sigemptyset... yes
checking for sigaddset... yes
checking for sigprocmask... yes
checking for library containing syslog... none required
configure: * * * SSL file "/etc/ssl/certs/factory.pem" is missing.
configure: * * *   This might indicate that CA certs did not get properly
configure: * * *   installed.  If you get certificate validation failures
configure: * * *   in Alpine, this might be the reason for them.
configure: * * * Including Kerberos5 functionality
configure: * * * TCL libraries could not be found.
configure: * * * WEB ALPINE COMPONENT WILL NOT BE BUILT.
configure: creating ./config.status
config.status: creating m4/Makefile
config.status: creating po/Makefile.in
config.status: creating regex/Makefile
config.status: creating pith/osdep/Makefile
config.status: creating pith/charconv/Makefile
config.status: creating pith/Makefile
config.status: creating pico/osdep/Makefile
config.status: creating pico/Makefile
config.status: creating alpine/osdep/Makefile
config.status: creating alpine/Makefile
config.status: creating web/src/Makefile
config.status: creating web/src/pubcookie/Makefile
config.status: creating web/src/alpined.d/Makefile
config.status: creating Makefile
config.status: creating include/config.h
config.status: executing depfiles commands
config.status: executing libtool commands
/bin/rm: cannot remove 'libtoolT': No such file or directory
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
configure: WARNING: unrecognized options: --disable-silent-rules, --with-spellcheck-prog
touch debian/stamp-autotools
/usr/bin/make  -C .  
make[1]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
if test ! -L c-client ; then ln -s imap/c-client c-client ; fi
touch imap/ip6
cd imap && /usr/bin/make ldb EXTRACFLAGS=" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall" EXTRALDFLAGS=" -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl"  EXTRASPECIALS="SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss "
make[2]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Building in full compliance with RFC 3501 security
+ requirements:
++ TLS/SSL encryption is supported
++ Unencrypted plaintext passwords are prohibited
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
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 .
make build EXTRACFLAGS='-I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' EXTRALDFLAGS='-L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='' PASSWDTYPE=std SSLTYPE=nopwd IP=4 EXTRASPECIALS='SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss ' BUILDTYPE=lnp IP=6 \
	SPECIALS="SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib SSLCERTS=/etc/ssl/certs SSLKEYS=/etc/ssl/private GSSINCLUDE=/usr/include GSSLIB=/usr/lib MAILSPOOL=/var/mail"
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make[4]: `ip6' is up to date.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
Building c-client for lnp...
echo `cat SPECIALS` SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss  > c-client/SPECIALS
cd c-client;make lnp EXTRACFLAGS='-I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'\
	 EXTRALDFLAGS='-L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl'\
	 EXTRADRIVERS='mbox'\
	 EXTRAAUTHENTICATORS=''\
	 PASSWDTYPE=std SSLTYPE=nopwd IP=6\
	 SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib SSLCERTS=/etc/ssl/certs SSLKEYS=/etc/ssl/private GSSINCLUDE=/usr/include GSSLIB=/usr/lib MAILSPOOL=/var/mail SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss 
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
make build EXTRACFLAGS='-I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' EXTRALDFLAGS='-L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='gss' PASSWDTYPE=std SSLTYPE=nopwd IP=6 `cat SPECIALS` OS=slx \
	 SIGTYPE=psx CHECKPW=pam CRXTYPE=nfs \
	 SPOOLDIR=/var/spool \
	 ACTIVEFILE=/var/lib/news/active \
	 RSHPATH=/usr/bin/rsh \
	 BASECFLAGS="-g -O2 -pipe -fno-omit-frame-pointer" \
	 BASELDFLAGS="-lpam -ldl"
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
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 '-I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' -DCHUNKSIZE=65536 > CFLAGS
echo -DCREATEPROTO=unixproto -DEMPTYPROTO=unixproto \
	 -DMD5ENABLE=\"/etc/cram-md5.pwd\" -DMAILSPOOL=\"/var/mail\" \
	 -DANONYMOUSHOME=\"/var/mail/anonymous\" \
	 -DACTIVEFILE=\"/var/lib/news/active\" -DNEWSSPOOL=\"/var/spool/news\" \
	 -DRSHPATH=\"/usr/bin/rsh\" -DLOCKPGM=\"\" \
	 -DLOCKPGM1=\"/usr/libexec/mlock\" -DLOCKPGM2=\"/usr/bin/mlock\" \
	 -DLOCKPGM3=\"/etc/mlock\" > OSCFLAGS
echo -lpam -ldl -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl > 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 slx > OSTYPE
./drivers mbox imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile dummy
./mkauths gss ext md5 pla log
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
echo -I/usr/include -DGSS_C_NT_HOSTBASED_SERVICE=gss_nt_service_name -DKRB5_DEPRECATED=1 >> OSCFLAGS
sh -c '(test -f /usr/lib/libk5crypto.a) && echo -L/usr/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err || echo -L/usr/lib -lgssapi_krb5 -lkrb5 -lcrypto -lcom_err' >> LDFLAGS
echo "#include \"kerb_mit.c\"" >> auths.c
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
echo "  mail_versioncheck (CCLIENTVERSION);" >> linkage.c
ln -s os_slx.h osdep.h
ln -s os_slx.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 slx = sc5 -o slx = sco -o ! -f /usr/include/sys/statvfs.h) && echo -DNOFSTATVFS >> OSCFLAGS || fgrep statvfs64 /usr/include/sys/statvfs.h > /dev/null || echo -DNOFSTATVFS64 >> OSCFLAGS'
Standard password authentication
ln -s ckp_pam.c osdepckp.c
Building with SSL
ln -s ssl_unix.c osdepssl.c
echo -I/usr/include/openssl -I/usr/include/openssl/openssl -DSSL_CERT_DIRECTORY=\"/etc/ssl/certs\" -DSSL_KEY_DIRECTORY=\"/etc/ssl/private\" >> OSCFLAGS
echo "  ssl_onceonlyinit ();" >> linkage.c
echo -L/usr/lib -lssl -lcrypto  >> 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 slx SSLTYPE=none
`cat CCTYPE` -c `cat CFLAGS` `cat OSCFLAGS` -c osdep.c
In file included from osdep.c:49:
./nl_unix.c:49:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!*dst) *dst = (char *) fs_get ((*dstl = i) + 1);
                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from osdep.c:50:
In file included from ./env_unix.c:256:
./pmatch.c:41:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!pat[1]) return (delim && strchr (s,delim)) ? NIL : T;
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./kerb_mit.c:75:8: warning: overflow converting case value to switch condition type (-1765328243 to 2529639053) [-Wswitch]
  case KRB5_CC_NOTFOUND:        /* Heimdal */
       ^
/usr/include/krb5/krb5.h:8348:50: note: expanded from macro 'KRB5_CC_NOTFOUND'
#define KRB5_CC_NOTFOUND                         (-1765328243L)
                                                 ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./kerb_mit.c:74:8: warning: overflow converting case value to switch condition type (-1765328189 to 2529639107) [-Wswitch]
  case KRB5_FCC_NOFILE:         /* MIT */
       ^
/usr/include/krb5/krb5.h:8402:50: note: expanded from macro 'KRB5_FCC_NOFILE'
#define KRB5_FCC_NOFILE                          (-1765328189L)
                                                 ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./kerb_mit.c:73:8: warning: overflow converting case value to switch condition type (-1765328352 to 2529638944) [-Wswitch]
  case KRB5KRB_AP_ERR_TKT_EXPIRED:
       ^
/usr/include/krb5/krb5.h:8239:50: note: expanded from macro 'KRB5KRB_AP_ERR_TKT_EXPIRED'
#define KRB5KRB_AP_ERR_TKT_EXPIRED               (-1765328352L)
                                                 ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./kerb_mit.c:103:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            authserver_login (lcase (user),kuser,argc,argv))
                                     ^~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:1:
./kerb_mit.c:103:24: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            authserver_login (lcase (user),kuser,argc,argv))
                              ^~~~~~~~~~~~
./env.h:40:30: note: passing argument to parameter 'user' here
long authserver_login (char *user,char *authuser,int argc,char *argv[]);
                             ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:2:
./auth_gss.c:100:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (chal.value = (*challenger) (stream,(unsigned long *) &chal.length)) {
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_gss.c:100:18: note: place parentheses around the assignment to silence this warning
  if (chal.value = (*challenger) (stream,(unsigned long *) &chal.length)) {
                 ^
      (                                                                 )
./auth_gss.c:100:18: note: use '==' to turn this assignment into an equality comparison
  if (chal.value = (*challenger) (stream,(unsigned long *) &chal.length)) {
                 ^
                 ==
./auth_gss.c:339:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (resp.value = (*responder) ("",0,(unsigned long *) &resp.length)) {
          ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_gss.c:339:22: note: place parentheses around the assignment to silence this warning
      if (resp.value = (*responder) ("",0,(unsigned long *) &resp.length)) {
                     ^
          (                                                              )
./auth_gss.c:339:22: note: use '==' to turn this assignment into an equality comparison
      if (resp.value = (*responder) ("",0,(unsigned long *) &resp.length)) {
                     ^
                     ==
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:3:
./auth_ext.c:62:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (challenge = (*challenger) (stream,&clen)) {
      ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_ext.c:62:17: note: place parentheses around the assignment to silence this warning
  if (challenge = (*challenger) (stream,&clen)) {
                ^
      (                                       )
./auth_ext.c:62:17: note: use '==' to turn this assignment into an equality comparison
  if (challenge = (*challenger) (stream,&clen)) {
                ^
                ==
./auth_ext.c:66:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (challenge = (*challenger) (stream,&clen))
          ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_ext.c:66:21: note: place parentheses around the assignment to silence this warning
      if (challenge = (*challenger) (stream,&clen))
                    ^
          (                                       )
./auth_ext.c:66:21: note: use '==' to turn this assignment into an equality comparison
      if (challenge = (*challenger) (stream,&clen))
                    ^
                    ==
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:105:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (challenge = (*challenger) (stream,&clen)) {
      ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:105:17: note: place parentheses around the assignment to silence this warning
  if (challenge = (*challenger) (stream,&clen)) {
                ^
      (                                       )
./auth_md5.c:105:17: note: use '==' to turn this assignment into an equality comparison
  if (challenge = (*challenger) (stream,&clen)) {
                ^
                ==
./auth_md5.c:120:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (challenge = (*challenger) (stream,&clen))
            ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:120:16: note: place parentheses around the assignment to silence this warning
        if (challenge = (*challenger) (stream,&clen))
                      ^
            (                                       )
./auth_md5.c:120:16: note: use '==' to turn this assignment into an equality comparison
        if (challenge = (*challenger) (stream,&clen))
                      ^
                      ==
./auth_md5.c:155:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
      ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:155:12: note: place parentheses around the assignment to silence this warning
  if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
           ^
      (                                                )
./auth_md5.c:155:12: note: use '==' to turn this assignment into an equality comparison
  if (user = (*responder) (chal,cl = strlen (chal),NIL)) {
           ^
           ==
./auth_md5.c:157:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (hash = strrchr (user,' ')) {
        ~~~~~^~~~~~~~~~~~~~~~~~~~
./auth_md5.c:157:14: note: place parentheses around the assignment to silence this warning
    if (hash = strrchr (user,' ')) {
             ^
        (                        )
./auth_md5.c:157:14: note: use '==' to turn this assignment into an equality comparison
    if (hash = strrchr (user,' ')) {
             ^
             ==
./auth_md5.c:160:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_md5.c:160:20: note: place parentheses around the assignment to silence this warning
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
                   ^
          (                           )
./auth_md5.c:160:20: note: use '==' to turn this assignment into an equality comparison
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
                   ^
                   ==
./auth_md5.c:162:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:162:13: note: place parentheses around the assignment to silence this warning
      if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
            ^
          (                                                           )
./auth_md5.c:162:13: note: use '==' to turn this assignment into an equality comparison
      if (p = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
            ^
            ==
./auth_md5.c:195:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    read (fd,buf = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size);
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:197:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (s = user; *s && ((*s < 'A') || (*s > 'Z')); s++);
           ^ ~~~~
./auth_md5.c:199:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    lusr = *s ? lcase (cpystr (user)) : NIL;
                       ^~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:200:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (s = strtok_r ((char *) buf,"\015\012",&r),lret = NIL; s;
           ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:201:5: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         s = ret ? NIL : strtok_r (NIL,"\015\012",&r))
           ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:203:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) {
                                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:203:35: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (*s && (*s != '#') && (t = strchr (s,'\t')) && t[1]) {
                                  ^ ~~~~~~~~~~~~~~~
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:205:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (s,user)) ret = cpystr (t);
                                            ^
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:74: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                                                         ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:31: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                              ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:30: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                    ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:813:39: note: expanded from macro 'strcmp'
            && (__s2_len = __builtin_strlen (s2), __s2_len < 4)               \
                                             ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:33: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                       ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:206:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lusr && !lret) if (!strcmp (s,lusr)) lret = t;
                                               ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:30: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                    ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:209:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!ret && lret) ret = cpystr (lret);
                                    ^~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:4:
./auth_md5.c:195:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (fd,buf = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:238:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (authuser = strchr (user,'*')) *authuser++ = '\0';
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_md5.c:238:16: note: place parentheses around the assignment to silence this warning
  if (authuser = strchr (user,'*')) *authuser++ = '\0';
               ^
      (                           )
./auth_md5.c:238:16: note: use '==' to turn this assignment into an equality comparison
  if (authuser = strchr (user,'*')) *authuser++ = '\0';
               ^
               ==
./auth_md5.c:240:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_md5.c:240:9: note: place parentheses around the assignment to silence this warning
  if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
        ^
      (                                                           )
./auth_md5.c:240:9: note: use '==' to turn this assignment into an equality comparison
  if (s = auth_md5_pwd ((authuser && *authuser) ? authuser : user)) {
        ^
        ==
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:5:
./auth_pla.c:66:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (challenge = (*challenger) (stream,&clen)) {
      ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:66:17: note: place parentheses around the assignment to silence this warning
  if (challenge = (*challenger) (stream,&clen)) {
                ^
      (                                       )
./auth_pla.c:66:17: note: use '==' to turn this assignment into an equality comparison
  if (challenge = (*challenger) (stream,&clen)) {
                ^
                ==
./auth_pla.c:94:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (challenge = (*challenger) (stream,&clen))
            ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:94:16: note: place parentheses around the assignment to silence this warning
        if (challenge = (*challenger) (stream,&clen))
                      ^
            (                                       )
./auth_pla.c:94:16: note: use '==' to turn this assignment into an equality comparison
        if (challenge = (*challenger) (stream,&clen))
                      ^
                      ==
./auth_pla.c:123:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (aid = (*responder) ("",0,&len)) {
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_pla.c:123:11: note: place parentheses around the assignment to silence this warning
  if (aid = (*responder) ("",0,&len)) {
          ^
      (                             )
./auth_pla.c:123:11: note: use '==' to turn this assignment into an equality comparison
  if (aid = (*responder) ("",0,&len)) {
          ^
          ==
In file included from osdep.c:50:
In file included from ./env_unix.c:260:
In file included from ./auths.c:6:
./auth_log.c:66:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (challenge = (*challenger) (stream,&clen)) {
      ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:66:17: note: place parentheses around the assignment to silence this warning
  if (challenge = (*challenger) (stream,&clen)) {
                ^
      (                                       )
./auth_log.c:66:17: note: use '==' to turn this assignment into an equality comparison
  if (challenge = (*challenger) (stream,&clen)) {
                ^
                ==
./auth_log.c:81:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (challenge = (*challenger) (stream,&clen))
            ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:81:16: note: place parentheses around the assignment to silence this warning
        if (challenge = (*challenger) (stream,&clen))
                      ^
            (                                       )
./auth_log.c:81:16: note: use '==' to turn this assignment into an equality comparison
        if (challenge = (*challenger) (stream,&clen))
                      ^
                      ==
./auth_log.c:107:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (user = (*responder) (PWD_USER,sizeof (PWD_USER),NIL)) {
      ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:107:12: note: place parentheses around the assignment to silence this warning
  if (user = (*responder) (PWD_USER,sizeof (PWD_USER),NIL)) {
           ^
      (                                                   )
./auth_log.c:107:12: note: use '==' to turn this assignment into an equality comparison
  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]
    if (pass = (*responder) (PWD_PWD,sizeof (PWD_PWD),NIL)) {
        ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./auth_log.c:108:14: note: place parentheses around the assignment to silence this warning
    if (pass = (*responder) (PWD_PWD,sizeof (PWD_PWD),NIL)) {
             ^
        (                                                 )
./auth_log.c:108:14: note: use '==' to turn this assignment into an equality comparison
    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]
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
./auth_log.c:110:20: note: place parentheses around the assignment to silence this warning
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
                   ^
          (                           )
./auth_log.c:110:20: note: use '==' to turn this assignment into an equality comparison
      if (authuser = strchr (user,'*')) *authuser++ = '\0';
                   ^
                   ==
In file included from osdep.c:50:
./env_unix.c:514:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (julian = t->tm_yday -julian)
      ~~~~~~~^~~~~~~~~~~~~~~~~~~~
./env_unix.c:514:14: note: place parentheses around the assignment to silence this warning
  if (julian = t->tm_yday -julian)
             ^
      (                          )
./env_unix.c:514:14: note: use '==' to turn this assignment into an equality comparison
  if (julian = t->tm_yday -julian)
             ^
             ==
./env_unix.c:641:33: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  struct passwd *pw = getpwnam (user);
                                ^~~~
/usr/include/pwd.h:116:45: note: passing argument to parameter '__name' here
extern struct passwd *getpwnam (const char *__name);
                                            ^
In file included from osdep.c:50:
./env_unix.c:645:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      pw = getpwnam (s = lcase (cpystr (user)));
                                        ^~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
In file included from osdep.c:50:
./env_unix.c:645:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      pw = getpwnam (s = lcase (cpystr (user)));
                                ^~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
In file included from osdep.c:50:
./env_unix.c:645:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      pw = getpwnam (s = lcase (cpystr (user)));
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/pwd.h:116:45: note: passing argument to parameter '__name' here
extern struct passwd *getpwnam (const char *__name);
                                            ^
In file included from osdep.c:50:
./env_unix.c:669:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = auth_md5_pwd (user)) {
        ~~^~~~~~~~~~~~~~~~~~~~~
./env_unix.c:669:11: note: place parentheses around the assignment to silence this warning
    if (s = auth_md5_pwd (user)) {
          ^
        (                      )
./env_unix.c:669:11: note: use '==' to turn this assignment into an equality comparison
    if (s = auth_md5_pwd (user)) {
          ^
          ==
./env_unix.c:671:16: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ret = pwuser (user);    /* validated, get passwd entry for user */
                      ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
static struct passwd *pwuser (unsigned char *user)
                                             ^
./env_unix.c:676:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (pw = pwuser (user)) {/* can get user? */
                        ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
static struct passwd *pwuser (unsigned char *user)
                                             ^
./env_unix.c:676:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (pw = pwuser (user)) {/* can get user? */
           ~~~^~~~~~~~~~~~~~~
./env_unix.c:676:15: note: place parentheses around the assignment to silence this warning
  else if (pw = pwuser (user)) {/* can get user? */
              ^
           (                 )
./env_unix.c:676:15: note: use '==' to turn this assignment into an equality comparison
  else if (pw = pwuser (user)) {/* can get user? */
              ^
              ==
./env_unix.c:679:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (*pwd == ' ') && pwd[1] && (ret = pwuser (s)))
                                                  ^
./env_unix.c:638:46: note: passing argument to parameter 'user' here
static struct passwd *pwuser (unsigned char *user)
                                             ^
./env_unix.c:710:58: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (valpwd (authuser,pwd,argc,argv)) pw = pwuser (user);
                                                         ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
static struct passwd *pwuser (unsigned char *user)
                                             ^
./env_unix.c:728:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  return pw_login (pwuser (user),authuser,user,NIL,argc,argv);
                           ^~~~
./env_unix.c:638:46: note: passing argument to parameter 'user' here
static struct passwd *pwuser (unsigned char *user)
                                             ^
./env_unix.c:767:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (user && auser && *auser && compare_cstring (auser,user)) {
                                                    ^~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:767:59: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (user && auser && *auser && compare_cstring (auser,user)) {
                                                          ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:770:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (auser,*t++))
                              ^~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:770:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (auser,*t++))
                                    ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:785:37: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
             (ret = env_init (user,home))) chdir (myhomedir ());
                                           ^~~~~  ~~~~~~~~~~~~
./env_unix.c:1057:47: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ?
                                              ^~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1057:54: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (dst,"%s/%s",s,compare_cstring (name+8,"INBOX") ?
                                                     ^~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1067:63: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) {
                                                              ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1067:67: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if ((s = strchr (name+1,'/')) && !compare_cstring (s+1,"INBOX")) {
                                                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1087:55: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) {
                                                      ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1087:59: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if ((s = strchr (name,'/')) && compare_cstring (s+1,"INBOX")) {
                                                          ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1101:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (name,"INBOX")) name = "INBOX";
                              ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1101:29: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (name,"INBOX")) name = "INBOX";
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1115:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (name+1,"NBOX")) {
                          ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1115:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (name+1,"NBOX")) {
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1251:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (base->lock,'/')) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1251:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (base->lock,'/')) {
          ^
        (                           )
./env_unix.c:1251:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strrchr (base->lock,'/')) {
          ^
          ==
./env_unix.c:1374:27: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
    if (op & LOCK_NB) i = flock (fd,op);
                          ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
In file included from osdep.c:50:
./env_unix.c:1565:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"set keywords") && !userFlags[0]) {
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1565:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"set keywords") && !userFlags[0]) {
                              ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1579:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set new-mailbox-format") ||
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1579:28: warning: passing 'char [23]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set new-mailbox-format") ||
                                  ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1580:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              !compare_cstring (s,"set new-folder-format")) {
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1580:28: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              !compare_cstring (s,"set new-folder-format")) {
                                  ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1581:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (k,"same-as-inbox")) {
                                  ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1581:30: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (k,"same-as-inbox")) {
                                    ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1582:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              if (d = mail_valid (NIL,"INBOX",NIL)) {
                  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1582:14: note: place parentheses around the assignment to silence this warning
              if (d = mail_valid (NIL,"INBOX",NIL)) {
                    ^
                  (                               )
./env_unix.c:1582:14: note: use '==' to turn this assignment into an equality comparison
              if (d = mail_valid (NIL,"INBOX",NIL)) {
                    ^
                    ==
./env_unix.c:1583:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!compare_cstring (d->name,"mbox"))
                                      ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1583:33: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!compare_cstring (d->name,"mbox"))
                                              ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1586:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!compare_cstring (d->name,"dummy")) d = NIL;
                                           ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1586:38: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!compare_cstring (d->name,"dummy")) d = NIL;
                                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1590:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"system-standard"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1590:35: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"system-standard"))
                                         ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1593:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!compare_cstring (k,"mbox")) k = "unix";
                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1593:32: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!compare_cstring (k,"mbox")) k = "unix";
                                      ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1595:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
                  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./env_unix.c:1595:14: note: place parentheses around the assignment to silence this warning
              if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
                    ^
                  (                                                         )
./env_unix.c:1595:14: note: use '==' to turn this assignment into an equality comparison
              if (d = (DRIVER *) mail_parameters (NIL,GET_DRIVER,(void *) k))
                    ^
                    ==
./env_unix.c:1604:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set empty-mailbox-format") ||
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1604:28: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set empty-mailbox-format") ||
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1605:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              !compare_cstring (s,"set empty-folder-format")) {
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1605:28: warning: passing 'char [24]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              !compare_cstring (s,"set empty-folder-format")) {
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1606:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (k,"invalid")) appendProto = NIL;
                                  ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1606:30: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (k,"invalid")) appendProto = NIL;
                                    ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1607:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"same-as-inbox"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1607:35: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"same-as-inbox"))
                                         ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1609:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                             compare_cstring (d->name,"dummy")) ?
                                              ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1609:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                             compare_cstring (d->name,"dummy")) ?
                                                      ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1611:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"system-standard"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1611:35: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (k,"system-standard"))
                                         ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1615:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   d && compare_cstring (d->name,k); d = d->next);
                                         ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1615:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   d && compare_cstring (d->name,k); d = d->next);
                                                 ^
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1626:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"set local-host")) {
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1626:26: warning: passing 'char [15]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"set local-host")) {
                                ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1630:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-active-file")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1630:31: warning: passing 'char [21]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-active-file")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1634:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-spool-directory")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1634:31: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-spool-directory")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1638:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mh-path"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1638:31: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mh-path"))
                                     ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1640:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mh-allow-inbox"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1640:31: warning: passing 'char [19]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mh-allow-inbox"))
                                     ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1642:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-state-file")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1642:31: warning: passing 'char [20]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set news-state-file")) {
                                     ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1646:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-export-directory")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1646:31: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-export-directory")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1650:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-home-directory")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1650:31: warning: passing 'char [26]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-home-directory")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1654:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-home-directory")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1654:31: warning: passing 'char [26]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-home-directory")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1658:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set system-inbox")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1658:31: warning: passing 'char [17]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set system-inbox")) {
                                     ^~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1662:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mail-subdirectory")) {
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1662:31: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mail-subdirectory")) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1666:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set from-widget"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1666:31: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set from-widget"))
                                     ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1668:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                           compare_cstring (k,"header-only") ?
                                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1668:26: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                           compare_cstring (k,"header-only") ?
                                              ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1671:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-command"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1671:31: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-command"))
                                     ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1673:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-path"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1673:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-path"))
                                     ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1675:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-command"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1675:31: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-command"))
                                     ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1677:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-path"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1677:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-path"))
                                     ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1679:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-open-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1679:31: warning: passing 'char [21]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-open-timeout"))
                                     ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1681:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-read-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1681:31: warning: passing 'char [21]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-read-timeout"))
                                     ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1683:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-write-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1683:31: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set tcp-write-timeout"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1685:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1685:31: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set rsh-timeout"))
                                     ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1687:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1687:31: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ssh-timeout"))
                                     ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1689:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set maximum-login-trials"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1689:31: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set maximum-login-trials"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1691:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set lookahead"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1691:31: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set lookahead"))
                                     ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1693:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set prefetch"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1693:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set prefetch"))
                                     ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1695:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set close-on-error"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1695:31: warning: passing 'char [19]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set close-on-error"))
                                     ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1697:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set imap-port"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1697:31: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set imap-port"))
                                     ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1699:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set pop3-port"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1699:31: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set pop3-port"))
                                     ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1701:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set uid-lookahead"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1701:31: warning: passing 'char [18]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set uid-lookahead"))
                                     ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1703:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set try-ssl-first"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1703:31: warning: passing 'char [18]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set try-ssl-first"))
                                     ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1706:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mailbox-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1706:31: warning: passing 'char [23]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set mailbox-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1708:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set directory-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1708:31: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set directory-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1710:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set lock-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1710:31: warning: passing 'char [20]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set lock-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1712:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1712:31: warning: passing 'char [19]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1714:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1714:31: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1716:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1716:31: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1718:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-directory-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1718:31: warning: passing 'char [29]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set ftp-directory-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1720:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-directory-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1720:31: warning: passing 'char [32]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set public-directory-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1722:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-directory-protection"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1722:31: warning: passing 'char [32]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set shared-directory-protection"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1724:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set dot-lock-file-timeout"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1724:31: warning: passing 'char [26]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set dot-lock-file-timeout"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1726:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-fcntl-locking"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1726:31: warning: passing 'char [26]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-fcntl-locking"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1728:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-lock-warning"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1728:31: warning: passing 'char [25]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-lock-warning"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1730:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1730:31: warning: passing 'char [35]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set disable-unix-UIDs-and-keywords"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1732:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set hide-dot-files"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1732:31: warning: passing 'char [19]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set hide-dot-files"))
                                     ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1734:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set list-maximum-level"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1734:31: warning: passing 'char [23]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set list-maximum-level"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1736:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set trust-dns"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1736:31: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set trust-dns"))
                                     ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1738:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set sasl-uses-ptr-name"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1738:31: warning: passing 'char [23]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set sasl-uses-ptr-name"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1740:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set network-filesystem-stat-bug"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1740:31: warning: passing 'char [32]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set network-filesystem-stat-bug"))
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1742:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set nntp-range"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1742:31: warning: passing 'char [15]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"set nntp-range"))
                                     ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1746:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set black-box-directory") &&
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1746:28: warning: passing 'char [24]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"set black-box-directory") &&
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1748:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring(s,"set black-box-default-home-directory")&&
                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1748:32: warning: passing 'char [37]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring(s,"set black-box-default-home-directory")&&
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1751:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set anonymous-home-directory") &&
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1751:33: warning: passing 'char [29]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set anonymous-home-directory") &&
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1758:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set CA-certificate-path"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1758:33: warning: passing 'char [24]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set CA-certificate-path"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1760:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set disable-plaintext"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1760:33: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set disable-plaintext"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1762:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allowed-login-attempts"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1762:33: warning: passing 'char [27]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allowed-login-attempts"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1764:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set chroot-server"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1764:33: warning: passing 'char [18]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set chroot-server"))
                                       ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1766:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set restrict-mailbox-access"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1766:33: warning: passing 'char [28]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set restrict-mailbox-access"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1768:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT;
                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1768:32: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!compare_cstring (k,"root")) restrictBox |= RESTRICTROOT;
                                      ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1769:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!compare_cstring (k,"otherusers"))
                                         ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1769:37: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!compare_cstring (k,"otherusers"))
                                           ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1771:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!compare_cstring (k,"all")) restrictBox = -1;
                                         ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1771:37: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!compare_cstring (k,"all")) restrictBox = -1;
                                           ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1773:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set advertise-the-world"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1773:33: warning: passing 'char [24]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set advertise-the-world"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1775:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set limited-advertise"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1775:33: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set limited-advertise"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1778:7: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   (s,"set disable-automatic-shared-namespaces"))
                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1778:9: warning: passing 'char [40]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   (s,"set disable-automatic-shared-namespaces"))
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1780:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allow-user-config"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1780:33: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allow-user-config"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1782:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allow-reverse-dns"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1782:33: warning: passing 'char [22]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set allow-reverse-dns"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1784:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set k5-cp-uses-service-name"))
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1784:33: warning: passing 'char [28]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set k5-cp-uses-service-name"))
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:50:
./env_unix.c:1788:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set plaintext-allowed-clients")) {
                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
In file included from osdep.c:50:
./env_unix.c:1788:33: warning: passing 'char [30]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (s,"set plaintext-allowed-clients")) {
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
In file included from osdep.c:53:
In file included from ./tcp_unix.c:29:
./ip_unix.c:136:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,hints,&ai))) {
                            ^~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
In file included from osdep.c:53:
In file included from ./tcp_unix.c:29:
./ip_unix.c:136:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (!getaddrinfo (lcase (strcpy (tmp,text)),NIL,hints,&ai))) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/netdb.h:662:48: note: passing argument to parameter '__name' here
extern int getaddrinfo (const char *__restrict __name,
                                               ^
In file included from osdep.c:53:
In file included from ./tcp_unix.c:29:
./ip_unix.c:253:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (!getaddrinfo (lcase (strcpy (lcname,name)),NIL,hints,&ai))) {
                              ^~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
In file included from osdep.c:53:
In file included from ./tcp_unix.c:29:
./ip_unix.c:253:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (!getaddrinfo (lcase (strcpy (lcname,name)),NIL,hints,&ai))) {
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/netdb.h:662:48: note: passing argument to parameter '__name' here
extern int getaddrinfo (const char *__restrict __name,
                                               ^
In file included from osdep.c:53:
./tcp_unix.c:175:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:175:13: note: place parentheses around the assignment to silence this warning
    if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
            ^
        (                                          )
./tcp_unix.c:175:13: note: use '==' to turn this assignment into an equality comparison
    if (adr = ip_stringtoaddr (tmp,&adrlen,&family)) {
            ^
            ==
./tcp_unix.c:215:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
        ~~~~~~~~~~~~~^~~~~
./tcp_unix.c:215:22: note: place parentheses around the assignment to silence this warning
    if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
                     ^
        (                 )
./tcp_unix.c:215:22: note: use '==' to turn this assignment into an equality comparison
    if (stream->ictr = ctr) *(stream->iptr = stream->ibuf) = tmp[0];
                     ^
                     ==
./tcp_unix.c:362:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:362:13: note: place parentheses around the assignment to silence this warning
    if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
            ^
        (                                   )
./tcp_unix.c:362:13: note: use '==' to turn this assignment into an equality comparison
    if (adr = ip_stringtoaddr (host,&len,&i)) fs_give ((void **) &adr);
            ^
            ==
./tcp_unix.c:462:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
  char *ret = tcp_getline_work (stream,&n,&contd);
                                          ^~~~~~
./tcp_unix.c:59:17: note: passing argument to parameter 'contd' here
                               long *contd);
                                     ^
./tcp_unix.c:470:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = tcp_getline_work (stream,&n,&contd);
                                        ^~~~~~
./tcp_unix.c:59:17: note: passing argument to parameter 'contd' here
                               long *contd);
                                     ^
./tcp_unix.c:538:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (n = min (size,stream->ictr)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:538:9: note: place parentheses around the assignment to silence this warning
  if (n = min (size,stream->ictr)) {
        ^
      (                          )
./tcp_unix.c:538:9: note: use '==' to turn this assignment into an equality comparison
  if (n = min (size,stream->ictr)) {
        ^
        ==
./tcp_unix.c:856:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (v = strchr (s,' ')) *v = '\0';
            ~~^~~~~~~~~~~~~~~~
./tcp_unix.c:856:8: note: place parentheses around the assignment to silence this warning
        if (v = strchr (s,' ')) *v = '\0';
              ^
            (                 )
./tcp_unix.c:856:8: note: use '==' to turn this assignment into an equality comparison
        if (v = strchr (s,' ')) *v = '\0';
              ^
              ==
./tcp_unix.c:983:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./tcp_unix.c:983:11: note: place parentheses around the assignment to silence this warning
    if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
          ^
        (                                            )
./tcp_unix.c:983:11: note: use '==' to turn this assignment into an equality comparison
    if (t = tcp_name_valid (ip_sockaddrtoname (sadr))) {
          ^
          ==
./tcp_unix.c:1024:17: warning: unused variable 'sadrlen' [-Wunused-variable]
  size_t adrlen,sadrlen,len;
                ^
osdep.c:163:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
      ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:163:10: note: place parentheses around the assignment to silence this warning
  if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
         ^
osdep.c:163:10: note: use '==' to turn this assignment into an equality comparison
  if (pw = ((pam_start ((char *) mail_parameters (NIL,GET_SERVICENAME,NIL),
         ^
         ==
osdep.c:470:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:470:9: note: place parentheses around the assignment to silence this warning
  if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
        ^
      (                                                   )
osdep.c:470:9: note: use '==' to turn this assignment into an equality comparison
  if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
        ^
        ==
osdep.c:474:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
        ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:474:14: note: place parentheses around the assignment to silence this warning
    if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
             ^
        (                                                                  )
osdep.c:474:14: note: use '==' to turn this assignment into an equality comparison
    if (cert = PEM_read_bio_X509 (bio = BIO_new_mem_buf (s,sl),NIL,NIL,NIL)) {
             ^
             ==
osdep.c:483:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
          ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:483:15: note: place parentheses around the assignment to silence this warning
      if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
              ^
osdep.c:483:15: note: use '==' to turn this assignment into an equality comparison
      if (key = PEM_read_bio_PrivateKey (bio = BIO_new_mem_buf (t,tl),
              ^
              ==
osdep.c:563:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (s = strstr (cert->name,"/CN=")) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
osdep.c:563:14: note: place parentheses around the assignment to silence this warning
  else if (s = strstr (cert->name,"/CN=")) {
             ^
           (                             )
osdep.c:563:14: note: use '==' to turn this assignment into an equality comparison
  else if (s = strstr (cert->name,"/CN=")) {
             ^
             ==
osdep.c:564:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = strchr (s += 4,'/')) *t = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~~
osdep.c:564:11: note: place parentheses around the assignment to silence this warning
    if (t = strchr (s += 4,'/')) *t = '\0';
          ^
        (                      )
osdep.c:564:11: note: use '==' to turn this assignment into an equality comparison
    if (t = strchr (s += 4,'/')) *t = '\0';
          ^
          ==
osdep.c:566:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    ret = ssl_compare_hostnames (host,s) ? NIL :
                                 ^~~~
osdep.c:299:51: note: passing argument to parameter 's' here
static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
                                                  ^
osdep.c:566:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    ret = ssl_compare_hostnames (host,s) ? NIL :
                                      ^
osdep.c:299:68: note: passing argument to parameter 'pat' here
static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
                                                                   ^
osdep.c:575:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            (name->type = GEN_DNS) && (s = name->d.ia5->data) &&
                                         ^ ~~~~~~~~~~~~~~~~~
osdep.c:576:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            ssl_compare_hostnames (host,s)) ret = NIL;
                                   ^~~~
osdep.c:299:51: note: passing argument to parameter 's' here
static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
                                                  ^
osdep.c:576:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            ssl_compare_hostnames (host,s)) ret = NIL;
                                        ^
osdep.c:299:68: note: passing argument to parameter 'pat' here
static long ssl_compare_hostnames (unsigned char *s,unsigned char *pat);
                                                                   ^
osdep.c:617:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
  char *ret = ssl_getline_work (stream,&n,&contd);
                                          ^~~~~~
osdep.c:301:17: note: passing argument to parameter 'contd' here
                               long *contd);
                                     ^
osdep.c:625:41: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = ssl_getline_work (stream,&n,&contd);
                                        ^~~~~~
osdep.c:301:17: note: passing argument to parameter 'contd' here
                               long *contd);
                                     ^
osdep.c:994:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (i = ERR_get_error ())  /* SSL failure */
         ~~^~~~~~~~~~~~~~~~~~
osdep.c:994:12: note: place parentheses around the assignment to silence this warning
  while (i = ERR_get_error ())  /* SSL failure */
           ^
         (                   )
osdep.c:994:12: note: use '==' to turn this assignment into an equality comparison
  while (i = ERR_get_error ())  /* SSL failure */
           ^
           ==
osdep.c:1016:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (i = ERR_get_error ())
             ~~^~~~~~~~~~~~~~~~~~
osdep.c:1016:16: note: place parentheses around the assignment to silence this warning
      while (i = ERR_get_error ())
               ^
             (                   )
osdep.c:1016:16: note: use '==' to turn this assignment into an equality comparison
      while (i = ERR_get_error ())
               ^
               ==
278 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mail.c
mail.c:212:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (stream->cache[i] = stream->cache[msgno])
          ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:212:28: note: place parentheses around the assignment to silence this warning
      if (stream->cache[i] = stream->cache[msgno])
                           ^
          (                                      )
mail.c:212:28: note: use '==' to turn this assignment into an equality comparison
      if (stream->cache[i] = stream->cache[msgno])
                           ^
                           ==
mail.c:378:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:378:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                        ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:383:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:383:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                        ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:385:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) d) d->flags &= ~DR_DISABLE;
        ~~~~^~~~~~~~~~~~
mail.c:385:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) d) d->flags &= ~DR_DISABLE;
            ^
        (               )
mail.c:385:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) d) d->flags &= ~DR_DISABLE;
            ^
            ==
mail.c:388:49: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:388:57: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (d = maildrivers; d && compare_cstring (d->name,(char *) value);
                                                        ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:390:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) d) d->flags |= DR_DISABLE;
        ~~~~^~~~~~~~~~~~
mail.c:390:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) d) d->flags |= DR_DISABLE;
            ^
        (               )
mail.c:390:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) d) d->flags |= DR_DISABLE;
            ^
            ==
mail.c:394:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                               ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:394:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                                       ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:395:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) a) a->flags &= ~AU_DISABLE;
        ~~~~^~~~~~~~~~~~
mail.c:395:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) a) a->flags &= ~AU_DISABLE;
            ^
        (               )
mail.c:395:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) a) a->flags &= ~AU_DISABLE;
            ^
            ==
mail.c:399:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                               ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:399:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                                       ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:400:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) a) a->flags |= AU_DISABLE;
        ~~~~^~~~~~~~~~~~
mail.c:400:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) a) a->flags |= AU_DISABLE;
            ^
        (               )
mail.c:400:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) a) a->flags |= AU_DISABLE;
            ^
            ==
mail.c:404:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                               ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:404:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                                       ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:405:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) a) a->flags &= ~AU_HIDE;
        ~~~~^~~~~~~~~~~~
mail.c:405:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) a) a->flags &= ~AU_HIDE;
            ^
        (               )
mail.c:405:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) a) a->flags &= ~AU_HIDE;
            ^
            ==
mail.c:409:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                               ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:409:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         a && compare_cstring (a->name,(char *) value); a = a->next);
                                       ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:410:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = (void *) a) a->flags |= AU_HIDE;
        ~~~~^~~~~~~~~~~~
mail.c:410:13: note: place parentheses around the assignment to silence this warning
    if (ret = (void *) a) a->flags |= AU_HIDE;
            ^
        (               )
mail.c:410:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = (void *) a) a->flags |= AU_HIDE;
            ^
            ==
mail.c:644:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (r = smtp_parameters (function,value)) ret = r;
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:644:11: note: place parentheses around the assignment to silence this warning
    if (r = smtp_parameters (function,value)) ret = r;
          ^
        (                                   )
mail.c:644:11: note: use '==' to turn this assignment into an equality comparison
    if (r = smtp_parameters (function,value)) ret = r;
          ^
          ==
mail.c:645:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (r = env_parameters (function,value)) ret = r;
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:645:11: note: place parentheses around the assignment to silence this warning
    if (r = env_parameters (function,value)) ret = r;
          ^
        (                                  )
mail.c:645:11: note: use '==' to turn this assignment into an equality comparison
    if (r = env_parameters (function,value)) ret = r;
          ^
          ==
mail.c:646:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (r = tcp_parameters (function,value)) ret = r;
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:646:11: note: place parentheses around the assignment to silence this warning
    if (r = tcp_parameters (function,value)) ret = r;
          ^
        (                                  )
mail.c:646:11: note: use '==' to turn this assignment into an equality comparison
    if (r = tcp_parameters (function,value)) ret = r;
          ^
          ==
mail.c:648:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (r = (*stream->dtb->parameters) (function,value)) ret = r;
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:648:13: note: place parentheses around the assignment to silence this warning
      if (r = (*stream->dtb->parameters) (function,value)) ret = r;
            ^
          (                                              )
mail.c:648:13: note: use '==' to turn this assignment into an equality comparison
      if (r = (*stream->dtb->parameters) (function,value)) ret = r;
            ^
            ==
mail.c:652:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (r = (d->parameters) (function,value)) ret = r;
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:652:13: note: place parentheses around the assignment to silence this warning
      if (r = (d->parameters) (function,value)) ret = r;
            ^
          (                                   )
mail.c:652:13: note: use '==' to turn this assignment into an equality comparison
      if (r = (d->parameters) (function,value)) ret = r;
            ^
            ==
mail.c:766:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (t = strpbrk (s = t,"/:=")) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~
mail.c:766:13: note: place parentheses around the assignment to silence this warning
      if (t = strpbrk (s = t,"/:=")) {
            ^
          (                        )
mail.c:766:13: note: use '==' to turn this assignment into an equality comparison
      if (t = strpbrk (s = t,"/:=")) {
            ^
            ==
mail.c:784:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (t = strpbrk (v = t,"/:")) {
              ~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:784:10: note: place parentheses around the assignment to silence this warning
          if (t = strpbrk (v = t,"/:")) {
                ^
              (                       )
mail.c:784:10: note: use '==' to turn this assignment into an equality comparison
          if (t = strpbrk (v = t,"/:")) {
                ^
                ==
mail.c:791:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service)
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:791:26: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"service") && (i < NETMAXSRV) && !*mb->service)
                                ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:792:11: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          lcase (strcpy (mb->service,v));
                 ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:793:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user)
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:793:31: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"user") && (i < NETMAXUSER) && !*mb->user)
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:795:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) &&
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:795:31: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"authuser") && (i < NETMAXUSER) &&
                                     ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:801:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"anonymous")) mb->anoflag = T;
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:801:26: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (s,"anonymous")) mb->anoflag = T;
                                ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:802:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"debug")) mb->dbgflag = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:802:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"debug")) mb->dbgflag = T;
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:803:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:803:31: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"readonly")) mb->readonlyflag = T;
                                     ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:804:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"secure")) mb->secflag = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:804:31: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"secure")) mb->secflag = T;
                                     ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:805:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"norsh")) mb->norsh = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:805:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"norsh")) mb->norsh = T;
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:806:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"loser")) mb->loser = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:806:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"loser")) mb->loser = T;
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:807:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tls") && !mb->notlsflag)
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:807:31: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tls") && !mb->notlsflag)
                                     ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag)
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:809:31: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tls-sslv23") && !mb->notlsflag)
                                     ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"notls") && !mb->tlsflag)
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"notls") && !mb->tlsflag)
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tryssl"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:813:31: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"tryssl"))
                                     ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:815:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag)
                                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:815:48: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"ssl") && !mb->tlsflag)
                                                      ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:817:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"novalidate-cert"))
                                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:817:48: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"novalidate-cert"))
                                                      ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:820:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"validate-cert"));
                                                    ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:820:48: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (mailssldriver && !compare_cstring (s,"validate-cert"));
                                                      ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:823:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"imap") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:823:31: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"imap") ||
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:824:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"nntp") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:824:24: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"nntp") ||
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:825:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"pop3") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:825:24: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"pop3") ||
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:826:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"smtp") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:826:24: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"smtp") ||
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:827:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"submit"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:827:24: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"submit"))
                                     ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:828:11: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          lcase (strcpy (mb->service,s));
                 ^~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:829:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"imap2") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:829:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"imap2") ||
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap2bis") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:830:24: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap2bis") ||
                                     ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap4") ||
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:831:24: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap4") ||
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap4rev1"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:832:24: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 !compare_cstring (s,"imap4rev1"))
                                     ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:834:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"pop"))
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:834:31: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"pop"))
                                     ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:919:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (d = d->next);          /* until at the end */
         ~~^~~~~~~~~
mail.c:919:12: note: place parentheses around the assignment to silence this warning
  while (d = d->next);          /* until at the end */
           ^
         (          )
mail.c:919:12: note: use '==' to turn this assignment into an equality comparison
  while (d = d->next);          /* until at the end */
           ^
           ==
mail.c:952:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (d = d->next);          /* until at the end */
         ~~^~~~~~~~~
mail.c:952:12: note: place parentheses around the assignment to silence this warning
  while (d = d->next);          /* until at the end */
           ^
         (          )
mail.c:952:12: note: use '==' to turn this assignment into an equality comparison
  while (d = d->next);          /* until at the end */
           ^
           ==
mail.c:996:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = strpbrk (mailbox,"\015\012")) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:996:9: note: place parentheses around the assignment to silence this warning
  if (s = strpbrk (mailbox,"\015\012")) {
        ^
      (                               )
mail.c:996:9: note: use '==' to turn this assignment into an equality comparison
  if (s = strpbrk (mailbox,"\015\012")) {
        ^
        ==
mail.c:1007:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) {
                        ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:1007:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) {
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:1012:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = mail_utf7_valid (mailbox)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1012:9: note: place parentheses around the assignment to silence this warning
  if (s = mail_utf7_valid (mailbox)) {
        ^
      (                            )
mail.c:1012:9: note: use '==' to turn this assignment into an equality comparison
  if (s = mail_utf7_valid (mailbox)) {
        ^
        ==
mail.c:1092:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = mail_utf7_valid (newname)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1092:9: note: place parentheses around the assignment to silence this warning
  if (s = mail_utf7_valid (newname)) {
        ^
      (                            )
mail.c:1092:9: note: use '==' to turn this assignment into an equality comparison
  if (s = mail_utf7_valid (newname)) {
        ^
        ==
mail.c:1199:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (stream = mail_open (stream,s+1,options)) {
          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1199:18: note: place parentheses around the assignment to silence this warning
      if (stream = mail_open (stream,s+1,options)) {
                 ^
          (                                      )
mail.c:1199:18: note: use '==' to turn this assignment into an equality comparison
      if (stream = mail_open (stream,s+1,options)) {
                 ^
                 ==
mail.c:1216:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (stream = mail_open (stream,mb.mailbox,options)) {
          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1216:18: note: place parentheses around the assignment to silence this warning
      if (stream = mail_open (stream,mb.mailbox,options)) {
                 ^
          (                                             )
mail.c:1216:18: note: use '==' to turn this assignment into an equality comparison
      if (stream = mail_open (stream,mb.mailbox,options)) {
                 ^
                 ==
mail.c:1243:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
          ~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:1243:13: note: place parentheses around the assignment to silence this warning
      if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
            ^
          (                       )
mail.c:1243:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strpbrk (tmp,"/\\:")) *s++ = '\0';
            ^
            ==
mail.c:1249:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next);
                                                  ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:1249:59: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      for (d = maildrivers; d && compare_cstring (d->name,tmp); d = d->next);
                                                          ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:1471:48: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (stream->dtb && mail_uid_sequence (stream,sequence) &&
                                               ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mail.c:1487:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (stream->dtb && mail_sequence (stream,sequence) &&
                                           ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mail.c:1512:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ov.date = env->date;
              ^ ~~~~~~~~~
mail.c:1543:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1543:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1543:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1655:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1655:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1655:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1725:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1725:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1725:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1730:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((b = mail_body (stream,msgno,section)) &&
                                       ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:1778:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (rt.data = (unsigned char *)
          ~~~~~~~~^~~~~~~~~~~~~~~~~~~
mail.c:1778:19: note: place parentheses around the assignment to silence this warning
      if (rt.data = (unsigned char *)
                  ^
mail.c:1778:19: note: use '==' to turn this assignment into an equality comparison
      if (rt.data = (unsigned char *)
                  ^
                  ==
mail.c:1816:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1816:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1816:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1821:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((b = mail_body (stream,msgno,section)) &&
                                       ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:1871:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1871:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1871:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1875:61: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(section && *section && (b = mail_body (stream,msgno,section))))
                                                            ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:1954:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:1954:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:1954:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:1958:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(b = mail_body (stream,msgno,section))) return "";
                                    ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:2012:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2012:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:2012:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:2018:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((b = mail_body (stream,msgno,section)) &&
                                       ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:2082:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2082:15: note: place parentheses around the assignment to silence this warning
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
        (                                )
mail.c:2082:15: note: use '==' to turn this assignment into an equality comparison
    if (msgno = mail_msgno (stream,msgno)) flags &= ~FT_UID;
              ^
              ==
mail.c:2086:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(b = mail_body (stream,msgno,section))) return NIL;
                                    ^~~~~~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
mail.c:2232:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (delta = ((last - first) / 2)) {
            ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mail.c:2232:12: note: place parentheses around the assignment to silence this warning
        if (delta = ((last - first) / 2)) {
                  ^
            (                           )
mail.c:2232:12: note: use '==' to turn this assignment into an equality comparison
        if (delta = ((last - first) / 2)) {
                  ^
                  ==
mail.c:2308:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ((flags & ST_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mail.c:2309:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)) &&
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mail.c:2386:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (msg = utf8_badcharset (charset)) {
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2386:11: note: place parentheses around the assignment to silence this warning
  if (msg = utf8_badcharset (charset)) {
          ^
      (                              )
mail.c:2386:11: note: use '==' to turn this assignment into an equality comparison
  if (msg = utf8_badcharset (charset)) {
          ^
          ==
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:898:32: note: expanded from macro 'strncmp'
                  && ((__builtin_constant_p (s1)                              \
                                             ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:802:29: note: expanded from macro 'strcmp'
     (__builtin_constant_p (s1) && __builtin_constant_p (s2)                  \
                            ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:32: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                               ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:872:51: note: expanded from macro '__strcmp_cg'
                      (((const unsigned char *) (const char *) (s1))[0]       \
                                                                ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:877:26: note: expanded from macro '__strcmp_cg'
                                     (const char *) (s1))[1] - __s2[1]);      \
                                                     ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:881:23: note: expanded from macro '__strcmp_cg'
                                         (const char *) (s1))[2] - __s2[2]);  \
                                                         ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:884:25: note: expanded from macro '__strcmp_cg'
                                          (const char *)  (s1))[3]            \
                                                           ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:31: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                     ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:816:24: note: expanded from macro 'strcmp'
               : __strcmp_gc (s1, s2, __s2_len))                              \
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:890:54: note: expanded from macro '__strcmp_gc'
# define __strcmp_gc(s1, s2, l2) (- __strcmp_cg (s2, s1, l2))
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:870:49: note: expanded from macro '__strcmp_cg'
                      (const unsigned char *) (const char *) (s2);            \
                                                              ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
mail.c:2598:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                            ^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
mail.c:2598:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strncmp (lcase (strcpy (tmp,mailbox)),"#driver.",8)) {
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
mail.c:2612:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (d = mail_valid (stream,mailbox,NIL))
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2612:14: note: place parentheses around the assignment to silence this warning
  else if (d = mail_valid (stream,mailbox,NIL))
             ^
           (                                  )
mail.c:2612:14: note: use '==' to turn this assignment into an equality comparison
  else if (d = mail_valid (stream,mailbox,NIL))
             ^
             ==
mail.c:2650:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:2650:13: note: place parentheses around the assignment to silence this warning
    if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
            ^
        (                                                    )
mail.c:2650:13: note: use '==' to turn this assignment into an equality comparison
    if (elt = (MESSAGECACHE *) (*mailcache) (stream,i,CH_ELT))
            ^
            ==
mail.c:2720:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!(i = strtoul (section,(char **) &section,10)) ||
                           ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2725:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (pt = b->nested.part) while (--i && (pt = pt->next));
              ~~~^~~~~~~~~~~~~~~~
mail.c:2725:11: note: place parentheses around the assignment to silence this warning
          if (pt = b->nested.part) while (--i && (pt = pt->next));
                 ^
              (                  )
mail.c:2725:11: note: use '==' to turn this assignment into an equality comparison
          if (pt = b->nested.part) while (--i && (pt = pt->next));
                 ^
                 ==
mail.c:2852:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mail.c:2852:76: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
                                                                           ^
/usr/include/x86_64-linux-gnu/bits/string3.h:102:64: note: passing argument to parameter '__src' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                                               ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
mail.c:2852:64: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s && *s && (strlen (s) < (size_t)MAILTMPLEN)) s = ucase (strcpy (tmp,s));
                                                               ^~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
mail.c:2858:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(m = strtoul (s,(char **) &s,10))) return NIL;
                     ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2862:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (isdigit (*++s) && (d = strtoul (s,(char **) &s,10)) &&
                                        ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2864:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      y = strtoul (s,(char **) &s,10);
                   ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2874:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if ((m = strtoul (s+1,(char **) &s,10)) && (*s++ == '-') && 
                        ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2875:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          (d = strtoul (s,(char **) &s,10)) && !*s) break;
                        ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2880:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (strlen (s) < (size_t) 5) return NIL;
                ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mail.c:2908:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      y = strtoul (s,(char **) &s,10);
                   ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2932:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    d = strtoul (s+1,(char **) &s,10);
                 ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2934:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    m = strtoul (++s,(char **) &s,10);
                 ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:2935:32: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    y = (*s == ':') ? strtoul (++s,(char **) &s,10) : 0;
                               ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:3085:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = gmtime (&tn)) {     /* minus UTC minutes since midnight */
        ~~^~~~~~~~~~~~~~
mail.c:3085:11: note: place parentheses around the assignment to silence this warning
    if (t = gmtime (&tn)) {     /* minus UTC minutes since midnight */
          ^
        (               )
mail.c:3085:11: note: use '==' to turn this assignment into an equality comparison
    if (t = gmtime (&tn)) {     /* minus UTC minutes since midnight */
          ^
          ==
mail.c:3265:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!(i = strtoul (sequence,(char **) &sequence,10))) {
                            ^~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:3276:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!(j = strtoul (sequence,(char **) &sequence,10))) {
                              ^~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:3306:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
          ~~^~~~~~~~~~~~~~~~~~~~~~~
mail.c:3306:13: note: place parentheses around the assignment to silence this warning
      if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
            ^
          (                        )
mail.c:3306:13: note: use '==' to turn this assignment into an equality comparison
      if (x = mail_msgno (stream,i)) mail_elt (stream,x)->sequence = T;
            ^
            ==
mail.c:3339:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (lines = lines->next);
         ~~~~~~^~~~~~~~~~~~~
mail.c:3339:16: note: place parentheses around the assignment to silence this warning
  while (lines = lines->next);
               ^
         (                  )
mail.c:3339:16: note: use '==' to turn this assignment into an equality comparison
  while (lines = lines->next);
               ^
               ==
mail.c:3371:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = t - tmp)            /* see if found in header */
        ~~^~~~~~~~~
mail.c:3371:11: note: place parentheses around the assignment to silence this warning
    if (i = t - tmp)            /* see if found in header */
          ^
        (          )
mail.c:3371:11: note: use '==' to turn this assignment into an equality comparison
    if (i = t - tmp)            /* see if found in header */
          ^
          ==
mail.c:3373:53: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((hdrs->text.size == i) && !compare_csizedtext (tmp,&hdrs->text))
                                                           ^~~
./misc.h:110:40: note: passing argument to parameter 's1' here
int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
                                       ^
mail.c:3515:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      BODY *body = mail_body (stream,msgno,section);
                                           ^~~~~~~
mail.c:2710:72: note: passing argument to parameter 'section' here
BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section)
                                                                       ^
mail.c:3621:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (h.data = (unsigned char *) s) {
      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
mail.c:3621:14: note: place parentheses around the assignment to silence this warning
  if (h.data = (unsigned char *) s) {
             ^
      (                           )
mail.c:3621:14: note: use '==' to turn this assignment into an equality comparison
  if (h.data = (unsigned char *) s) {
             ^
             ==
mail.c:3672:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (st = st->next) s = s->next = mail_newstringlist ();
        ~~~^~~~~~~~~~
mail.c:3672:12: note: place parentheses around the assignment to silence this warning
    if (st = st->next) s = s->next = mail_newstringlist ();
           ^
        (            )
mail.c:3672:12: note: use '==' to turn this assignment into an equality comparison
    if (st = st->next) s = s->next = mail_newstringlist ();
           ^
           ==
mail.c:3687:46: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((body = mail_body (stream,msgno,section)) &&
                                             ^~~~~~~
mail.c:2710:72: note: passing argument to parameter 'section' here
BODY *mail_body (MAILSTREAM *stream,unsigned long msgno,unsigned char *section)
                                                                       ^
mail.c:3754:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (body = body->nested.msg->body)
          ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:3754:16: note: place parentheses around the assignment to silence this warning
      if (body = body->nested.msg->body)
               ^
          (                            )
mail.c:3754:16: note: use '==' to turn this assignment into an equality comparison
      if (body = body->nested.msg->body)
               ^
               ==
mail.c:3771:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (st.data = (unsigned char *)
            ~~~~~~~~^~~~~~~~~~~~~~~~~~~
mail.c:3771:14: note: place parentheses around the assignment to silence this warning
        if (st.data = (unsigned char *)
                    ^
mail.c:3771:14: note: use '==' to turn this assignment into an equality comparison
        if (st.data = (unsigned char *)
                    ^
                    ==
mail.c:3778:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
            ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:3778:14: note: place parentheses around the assignment to silence this warning
        if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
                    ^
            (                                                       )
mail.c:3778:14: note: use '==' to turn this assignment into an equality comparison
        if (st.data = rfc822_qprint ((unsigned char *) s,i,&st.size)) {
                    ^
                    ==
mail.c:3806:16: warning: unused variable 'sc' [-Wunused-variable]
  STRINGLIST **sc = st;
               ^
mail.c:3854:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_csizedtext (stream->user_flags[i],&st->text)) {
                               ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
int compare_csizedtext (unsigned char *s1,SIZEDTEXT *s2);
                                       ^
mail.c:3859:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  } while (st = st->next);
           ~~~^~~~~~~~~~
mail.c:3859:15: note: place parentheses around the assignment to silence this warning
  } while (st = st->next);
              ^
           (            )
mail.c:3859:15: note: use '==' to turn this assignment into an equality comparison
  } while (st = st->next);
              ^
              ==
mail.c:3888:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
          ~~~~~~~~~~~~~~^~~~~~~~~~~~~
mail.c:3888:25: note: place parentheses around the assignment to silence this warning
      if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
                        ^
          (                          )
mail.c:3888:25: note: use '==' to turn this assignment into an equality comparison
      if (tadr.personal = a->personal) k += 3 + 2*strlen (a->personal);
                        ^
                        ==
mail.c:3889:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
          ~~~~~~~~~^~~~~~~~
mail.c:3889:20: note: place parentheses around the assignment to silence this warning
      if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
                   ^
          (                )
mail.c:3889:20: note: use '==' to turn this assignment into an equality comparison
      if (tadr.adl = a->adl) k += 3 + 2*strlen (a->adl);
                   ^
                   ==
mail.c:3890:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
          ~~~~~~~~~~^~~~~~~~~
mail.c:3890:21: note: place parentheses around the assignment to silence this warning
      if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
                    ^
          (                  )
mail.c:3890:21: note: use '==' to turn this assignment into an equality comparison
      if (tadr.host = a->host) k += 3 + 2*strlen (a->host);
                    ^
                    ==
mail.c:3985:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      switch (*ucase (criterion)) {
                      ^~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
mail.c:4076:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             mail_parse_date (&elt,(char *) s->text.data) &&
                                   ^~~~~~~~~~~~~~~~~~~~~
mail.c:2834:56: note: passing argument to parameter 's' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
                                                       ^
mail.c:4125:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (d = strtok_r (c,end,r)) n = strlen (d);
        ~~^~~~~~~~~~~~~~~~~~~~
mail.c:4125:11: note: place parentheses around the assignment to silence this warning
    if (d = strtok_r (c,end,r)) n = strlen (d);
          ^
        (                     )
mail.c:4125:11: note: use '==' to turn this assignment into an equality comparison
    if (d = strtok_r (c,end,r)) n = strlen (d);
          ^
          ==
mail.c:4332:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (env) t = env->date;
                     ^ ~~~~~~~~~
mail.c:4336:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4336:22: note: place parentheses around the assignment to silence this warning
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                          (                         )
mail.c:4336:22: note: use '==' to turn this assignment into an equality comparison
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                            ==
mail.c:4348:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(t && mail_parse_date (&telt,t) && 
                                            ^
mail.c:2834:56: note: passing argument to parameter 's' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
                                                       ^
mail.c:4372:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4372:22: note: place parentheses around the assignment to silence this warning
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                          (                         )
mail.c:4372:22: note: use '==' to turn this assignment into an equality comparison
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                            ==
mail.c:4380:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if (v = strchr (v,':')) {
                    ~~^~~~~~~~~~~~~~~~
mail.c:4380:9: note: place parentheses around the assignment to silence this warning
                if (v = strchr (v,':')) {
                      ^
                    (                 )
mail.c:4380:9: note: use '==' to turn this assignment into an equality comparison
                if (v = strchr (v,':')) {
                      ^
                      ==
mail.c:4387:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4387:14: note: place parentheses around the assignment to silence this warning
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                (                                                 )
mail.c:4387:14: note: use '==' to turn this assignment into an equality comparison
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                    ==
mail.c:4405:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4405:22: note: place parentheses around the assignment to silence this warning
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                          (                         )
mail.c:4405:22: note: use '==' to turn this assignment into an equality comparison
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                            ==
mail.c:4413:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if (v = strchr (v,':')) {
                    ~~^~~~~~~~~~~~~~~~
mail.c:4413:9: note: place parentheses around the assignment to silence this warning
                if (v = strchr (v,':')) {
                      ^
                    (                 )
mail.c:4413:9: note: use '==' to turn this assignment into an equality comparison
                if (v = strchr (v,':')) {
                      ^
                      ==
mail.c:4420:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4420:14: note: place parentheses around the assignment to silence this warning
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                (                                                 )
mail.c:4420:14: note: use '==' to turn this assignment into an equality comparison
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                    ==
mail.c:4438:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4438:22: note: place parentheses around the assignment to silence this warning
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                          (                         )
mail.c:4438:22: note: use '==' to turn this assignment into an equality comparison
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                            ==
mail.c:4446:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if (v = strchr (v,':')) {
                    ~~^~~~~~~~~~~~~~~~
mail.c:4446:9: note: place parentheses around the assignment to silence this warning
                if (v = strchr (v,':')) {
                      ^
                    (                 )
mail.c:4446:9: note: use '==' to turn this assignment into an equality comparison
                if (v = strchr (v,':')) {
                      ^
                      ==
mail.c:4453:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4453:14: note: place parentheses around the assignment to silence this warning
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                (                                                 )
mail.c:4453:14: note: use '==' to turn this assignment into an equality comparison
            if (adr = rfc822_parse_address (&adr,adr,&t,BADHOST,0)) {
                    ^
                    ==
mail.c:4472:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4472:22: note: place parentheses around the assignment to silence this warning
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                          (                         )
mail.c:4472:22: note: use '==' to turn this assignment into an equality comparison
            for (x = ++t; x = strpbrk (x,"\012\015"); x++)
                            ^
                            ==
mail.c:4506:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (src.size = strlen (t)) {  /* have non-empty subject? */
      ~~~~~~~~~^~~~~~~~~~~~
mail.c:4506:16: note: place parentheses around the assignment to silence this warning
  if (src.size = strlen (t)) {  /* have non-empty subject? */
               ^
      (                    )
mail.c:4506:16: note: use '==' to turn this assignment into an equality comparison
  if (src.size = strlen (t)) {  /* have non-empty subject? */
               ^
               ==
mail.c:4648:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->from,s2->from);
                           ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4648:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->from,s2->from);
                                    ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4651:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->to,s2->to);
                           ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4651:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->to,s2->to);
                                  ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4654:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->cc,s2->cc);
                           ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4654:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->cc,s2->cc);
                                  ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4657:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->subject,s2->subject);
                           ^~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4657:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      i = compare_cstring (s1->subject,s2->subject);
                                       ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4662:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (pgm = i ? NIL : pgm->next);
         ~~~~^~~~~~~~~~~~~~~~~~~~~
mail.c:4662:14: note: place parentheses around the assignment to silence this warning
  while (pgm = i ? NIL : pgm->next);
             ^
         (                        )
mail.c:4662:14: note: use '==' to turn this assignment into an equality comparison
  while (pgm = i ? NIL : pgm->next);
             ^
             ==
mail.c:4756:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (type,t->name)) {
                          ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4756:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (type,t->name)) {
                               ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4789:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4789:11: note: place parentheses around the assignment to silence this warning
  if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
          ^
      (                                                                    )
mail.c:4789:11: note: use '==' to turn this assignment into an equality comparison
  if (lst = (*sorter) (stream,charset,spg,&pgm,flags & ~(SE_FREE | SE_UID))){
          ^
          ==
mail.c:4800:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (compare_cstring (top->sc->subject,s->subject)) {
                             ^~~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:4800:40: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (compare_cstring (top->sc->subject,s->subject)) {
                                              ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:4903:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
            ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:4903:10: note: place parentheses around the assignment to silence this warning
        if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
                ^
            (                                                 )
mail.c:4903:10: note: use '==' to turn this assignment into an equality comparison
        if (env = mail_fetch_structure (stream,s->num,NIL,NIL)) {
                ^
                ==
mail.c:4951:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                                      THREADLINKS); st = st->next; con = nxc) {
                                                    ~~~^~~~~~~~~~
mail.c:4951:28: note: place parentheses around the assignment to silence this warning
                                      THREADLINKS); st = st->next; con = nxc) {
                                                       ^
                                                    (            )
mail.c:4951:28: note: use '==' to turn this assignment into an equality comparison
                                      THREADLINKS); st = st->next; con = nxc) {
                                                       ^
                                                       ==
mail.c:5122:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!s->date && ov->date && mail_parse_date (&telt,ov->date)) {
                                                       ^~~~~~~~
mail.c:2834:56: note: passing argument to parameter 's' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *s)
                                                       ^
mail.c:5189:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = mail_thread_parse_msgid (s,&s)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:5189:9: note: place parentheses around the assignment to silence this warning
  if (t = mail_thread_parse_msgid (s,&s)) {
        ^
      (                                 )
mail.c:5189:9: note: use '==' to turn this assignment into an equality comparison
  if (t = mail_thread_parse_msgid (s,&s)) {
        ^
        ==
mail.c:5193:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
                      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:5193:25: note: place parentheses around the assignment to silence this warning
      for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
                        ^
                      (                                 )
mail.c:5193:25: note: use '==' to turn this assignment into an equality comparison
      for (cur = ret; t = mail_thread_parse_msgid (s,&s); cur = cur->next) {
                        ^
                        ==
mail.c:5295:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
        ~~~~^~~~~~~~~~~~~
mail.c:5295:13: note: place parentheses around the assignment to silence this warning
    if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
            ^
        (                )
mail.c:5295:13: note: use '==' to turn this assignment into an equality comparison
    if (nxt = CHILD (con)) cur->next = mail_thread_c2node (stream,nxt,flags);
            ^
            ==
mail.c:5377:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!(i = strtoul (sequence,(char **) &sequence,10)) ||
                            ^~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:5393:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!(j = strtoul (sequence,(char **) &sequence,10)) ||
                              ^~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mail.c:5446:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (n = strchr (t,' ')) *n++ = '\0';
          ~~^~~~~~~~~~~~~~~~
mail.c:5446:13: note: place parentheses around the assignment to silence this warning
      if (n = strchr (t,' ')) *n++ = '\0';
            ^
          (                 )
mail.c:5446:13: note: use '==' to turn this assignment into an equality comparison
      if (n = strchr (t,' ')) *n++ = '\0';
            ^
            ==
mail.c:5448:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (t+1,"SEEN")) f |= fSEEN;
                              ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5448:28: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (t+1,"SEEN")) f |= fSEEN;
                                  ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5449:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED;
                                   ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5449:33: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"DELETED")) f |= fDELETED;
                                       ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5450:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED;
                                   ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5450:33: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"FLAGGED")) f |= fFLAGGED;
                                       ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5451:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED;
                                   ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5451:33: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"ANSWERED")) f |= fANSWERED;
                                       ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5452:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT;
                                   ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5452:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (t+1,"DRAFT")) f |= fDRAFT;
                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5462:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (t,s)) *uf |= i = 1 << j;
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5462:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (t,s)) *uf |= i = 1 << j;
                                  ^
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5511:24: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          ((!compare_cstring (smb.host,
                              ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5512:10: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                              trustdns ? tcp_canonical (nmb.host) : nmb.host)&&
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:5517:24: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (!compare_cstring (omb.host,nmb.host) &&
                              ^~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:5517:33: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (!compare_cstring (omb.host,nmb.host) &&
                                       ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:6087:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (auth->server && !compare_cstring (auth->name,mechanism))
                                          ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:6087:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (auth->server && !compare_cstring (auth->name,mechanism))
                                                     ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:6120:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism))
                                                         ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mail.c:6120:62: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !(auth->flags & AU_DISABLE) && !compare_cstring (auth->name,mechanism))
                                                                    ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mail.c:6207:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (tstream = (*dv->open) (host,service,port | flags)) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:6207:15: note: place parentheses around the assignment to silence this warning
  if (tstream = (*dv->open) (host,service,port | flags)) {
              ^
      (                                                )
mail.c:6207:15: note: use '==' to turn this assignment into an equality comparison
  if (tstream = (*dv->open) (host,service,port | flags)) {
              ^
              ==
mail.c:6229:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (tstream = (*dv->aopen) (mb,service,user)) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mail.c:6229:15: note: place parentheses around the assignment to silence this warning
  if (tstream = (*dv->aopen) (mb,service,user)) {
              ^
      (                                       )
mail.c:6229:15: note: use '==' to turn this assignment into an equality comparison
  if (tstream = (*dv->aopen) (mb,service,user)) {
              ^
              ==
246 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` misc.c
misc.c:276:41: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
      for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
                                      ~~^~~~~~~~~
misc.c:276:41: note: remove extraneous parentheses around the comparison to silence this warning
      for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
                                     ~  ^        ~
misc.c:276:41: note: use '=' to turn this equality comparison into an assignment
      for (j = patc,c = base[k = i]; (c == pat[j]); j--,c = base[--k])
                                        ^~
                                        =
misc.c:318:47: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
                                          ~~~~^~~~~~~~~~~~~~~~~~~
misc.c:318:47: note: place parentheses around the assignment to silence this warning
  for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
                                              ^
                                          (                      )
misc.c:318:47: note: use '==' to turn this assignment into an equality comparison
  for (i = 0; i < hashtab->size; i++) if (ent = hashtab->table[i])
                                              ^
                                              ==
misc.c:335:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
                ~~^~~~~~~~~~~~~~~~~~~~~~~
misc.c:335:19: note: place parentheses around the assignment to silence this warning
  for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
                  ^
                (                        )
misc.c:335:19: note: use '==' to turn this assignment into an equality comparison
  for (ret = 0; i = (unsigned int) *key++; ret += i) ret *= HASHMULT;
                  ^
                  ==
misc.c:452:39: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
                                    ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
misc.c:452:39: note: place parentheses around the assignment to silence this warning
  for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
                                      ^
                                    (                            )
misc.c:452:39: note: use '==' to turn this assignment into an equality comparison
  for (; *s1 && *s2; s1++,s2++) if (i = (compare_uchar (*s1,*s2))) return i;
                                      ^
                                      ==
misc.c:471:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  for (s = (char *) s2->data,j = s2->size; *s1 && j; ++s1,++s,--j)
         ^ ~~~~~~~~~~~~~~~~~
misc.c:472:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = (compare_uchar (*s1,*s))) return i;
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
misc.c:472:11: note: place parentheses around the assignment to silence this warning
    if (i = (compare_uchar (*s1,*s))) return i;
          ^
        (                           )
misc.c:472:11: note: use '==' to turn this assignment into an equality comparison
    if (i = (compare_uchar (*s1,*s))) return i;
          ^
          ==
6 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` newsrc.c
newsrc.c:126:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (k = elt->private.uid - 1) {
            ~~^~~~~~~~~~~~~~~~~~~~~~
newsrc.c:126:8: note: place parentheses around the assignment to silence this warning
        if (k = elt->private.uid - 1) {
              ^
            (                       )
newsrc.c:126:8: note: use '==' to turn this assignment into an equality comparison
        if (k = elt->private.uid - 1) {
              ^
              ==
newsrc.c:128:54: warning: data argument not used by format string [-Wformat-extra-args]
          sprintf (tmp,(j == k) ? "%c%ld" : "%c%ld-%ld",c,j,k);
                                  ~~~~~~~                   ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
newsrc.c:136:57: warning: data argument not used by format string [-Wformat-extra-args]
      sprintf (tmp,(j == k) ? "%c%ld" : "%c%ld-%ld",c,j,k);
                              ~~~~~~~                   ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
newsrc.c:167:19: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.')) mm_lsub (stream,'.',name,NIL);
                         ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.')) mm_lsub (stream,'.',name,NIL);
                              ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
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 with different sign [-Wpointer-sign]
          if (pmatch_full (name,pattern,'.'))
                           ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
          if (pmatch_full (name,pattern,'.'))
                                ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
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]
  if (f = fopen (newsrc,"rb")) {/* have existing newsrc file? */
      ~~^~~~~~~~~~~~~~~~~~~~~
newsrc.c:343:9: note: place parentheses around the assignment to silence this warning
  if (f = fopen (newsrc,"rb")) {/* have existing newsrc file? */
        ^
      (                      )
newsrc.c:343:9: note: use '==' to turn this assignment into an equality comparison
  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]
      if (f = newsrc_create (stream,NIL)) bf = NIL;
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
newsrc.c:368:13: note: place parentheses around the assignment to silence this warning
      if (f = newsrc_create (stream,NIL)) bf = NIL;
            ^
          (                             )
newsrc.c:368:13: note: use '==' to turn this assignment into an equality comparison
      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]
    if (f = newsrc_create (stream,T)) bf = NIL;
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
newsrc.c:384:11: note: place parentheses around the assignment to silence this warning
    if (f = newsrc_create (stream,T)) bf = NIL;
          ^
        (                           )
newsrc.c:384:11: note: use '==' to turn this assignment into an equality comparison
    if (f = newsrc_create (stream,T)) bf = NIL;
          ^
          ==
newsrc.c:468:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        fread (s,(size_t) 1,size,f);
        ^~~~~  ~~~~~~~~~~~~~~~~~~~
11 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` smanager.c
smanager.c:44:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
                        ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smanager.c:44:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smanager.c:46:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (f = fopen (db,"r")) {     /* make sure not already there */
      ~~^~~~~~~~~~~~~~~~
smanager.c:46:9: note: place parentheses around the assignment to silence this warning
  if (f = fopen (db,"r")) {     /* make sure not already there */
        ^
      (                 )
smanager.c:46:9: note: use '==' to turn this assignment into an equality comparison
  if (f = fopen (db,"r")) {     /* make sure not already there */
        ^
        ==
smanager.c:48:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (tmp,'\n')) *s = '\0';
          ~~^~~~~~~~~~~~~~~~~~~
smanager.c:48:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (tmp,'\n')) *s = '\0';
            ^
          (                    )
smanager.c:48:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (tmp,'\n')) *s = '\0';
            ^
            ==
smanager.c:77:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
                        ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smanager.c:77:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) mailbox = "INBOX";
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smanager.c:88:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (tmp,'\n')) *s = '\0';
          ~~^~~~~~~~~~~~~~~~~~~
smanager.c:88:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (tmp,'\n')) *s = '\0';
            ^
          (                    )
smanager.c:88:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (tmp,'\n')) *s = '\0';
            ^
            ==
smanager.c:119:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (f = fopen (sbname,"r")) *sdb = (void *) f;
        ~~^~~~~~~~~~~~~~~~~~~~
smanager.c:119:11: note: place parentheses around the assignment to silence this warning
    if (f = fopen (sbname,"r")) *sdb = (void *) f;
          ^
        (                     )
smanager.c:119:11: note: use '==' to turn this assignment into an equality comparison
    if (f = fopen (sbname,"r")) *sdb = (void *) f;
          ^
          ==
smanager.c:123:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (sbname,'\n')) *s = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~~~
smanager.c:123:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (sbname,'\n')) *s = '\0';
          ^
        (                       )
smanager.c:123:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (sbname,'\n')) *s = '\0';
          ^
          ==
9 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` utf8.c
utf8.c:342:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
  NIL
  ^~~
  {  }
./mail.h:67:13: note: expanded from macro 'NIL'
#define NIL 0                   /* convenient name */
            ^
utf8.c:369:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
  NIL
  ^~~
  {  }
./mail.h:67:13: note: expanded from macro 'NIL'
#define NIL 0                   /* convenient name */
            ^
utf8.c:383:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (script,utf8_scvalid[i].name))
                            ^~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:383:36: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (script,utf8_scvalid[i].name))
                                   ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:400:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (charset,utf8_csvalid[i].name))
                            ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:400:37: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (charset,utf8_csvalid[i].name))
                                    ^~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:586:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  short iso2022jp = !compare_cstring (charset,"ISO-2022-JP");
                                      ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:586:47: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  short iso2022jp = !compare_cstring (charset,"ISO-2022-JP");
                                              ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:613:26: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            !compare_cstring (dcs->name,"ISO-2022-JP"))) ?
                                              ^~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:613:36: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            !compare_cstring (dcs->name,"ISO-2022-JP"))) ?
                                                        ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:647:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap :
                                         ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:647:50: warning: passing 'char *const' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  return (currmapcs && !compare_cstring (charset,currmapcs->name)) ? currmap :
                                                 ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:662:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (ret = utf8_rmap_gen (cs,currmap)) {
           ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:662:16: note: place parentheses around the assignment to silence this warning
  else if (ret = utf8_rmap_gen (cs,currmap)) {
               ^
           (                               )
utf8.c:662:16: note: use '==' to turn this assignment into an equality comparison
  else if (ret = utf8_rmap_gen (cs,currmap)) {
               ^
               ==
utf8.c:794:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:794:9: note: place parentheses around the assignment to silence this warning
  if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
        ^
      (                                            )
utf8.c:794:9: note: use '==' to turn this assignment into an equality comparison
  if (i = utf8_rmapsize (text,rmap,errch,iso2022jp)) {
        ^
        ==
utf8.c:1189:11: warning: implicit conversion from 'int' to 'unsigned char' changes value from 65533 to 253 [-Wconstant-conversion]
      c = JISTOUNICODE (c,c1,ku,ten);
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
./jis_0208.c:49:26: note: expanded from macro 'JISTOUNICODE'
   jis0208tab[ku][ten] : UBOGON)
                         ^~~~~~
./utf8.h:386:16: note: expanded from macro 'UBOGON'
#define UBOGON UCS2_BOGON
               ^~~~~~~~~~
./utf8.h:351:20: note: expanded from macro 'UCS2_BOGON'
#define UCS2_BOGON 0xfffd       /* replacement character */
                   ^~~~~~
utf8.c:1186:11: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
      if (j--) c1 = *t++;       /* get second octet */
          ^~~
utf8.c:1230:10: note: uninitialized use occurs here
  return ret;
         ^~~
utf8.c:1186:7: note: remove the 'if' if its condition is always false
      if (j--) c1 = *t++;       /* get second octet */
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:1066:20: note: initialize the variable 'ret' to silence this warning
  unsigned long ret,d;
                   ^
                    = 0
utf8.c:1291:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP";
                          ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
utf8.c:1291:29: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (s,"ISO-2022-JP")) s = "EUC-JP";
                            ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
utf8.c:1293:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (cs = utf8_charset (s)) {
        ~~~^~~~~~~~~~~~~~~~~~
utf8.c:1293:12: note: place parentheses around the assignment to silence this warning
    if (cs = utf8_charset (s)) {
           ^
        (                    )
utf8.c:1293:12: note: use '==' to turn this assignment into an equality comparison
    if (cs = utf8_charset (s)) {
           ^
           ==
utf8.c:2395:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (m = (struct decomposemore *) *more) switch (m->type) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2395:11: note: place parentheses around the assignment to silence this warning
    if (m = (struct decomposemore *) *more) switch (m->type) {
          ^
        (                                 )
utf8.c:2395:11: note: use '==' to turn this assignment into an equality comparison
    if (m = (struct decomposemore *) *more) switch (m->type) {
          ^
          ==
utf8.c:2418:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2418:13: note: place parentheses around the assignment to silence this warning
      if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
            ^
          (                                      )
utf8.c:2418:13: note: use '==' to turn this assignment into an equality comparison
      if (i = ucs4_dbmploixtab[c - UCS4_BMPLOMIN]) {
            ^
            ==
utf8.c:2448:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2448:13: note: place parentheses around the assignment to silence this warning
      if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
            ^
          (                                      )
utf8.c:2448:13: note: use '==' to turn this assignment into an equality comparison
      if (i = ucs4_dbmphiixtab[c - UCS4_BMPHIMIN]) {
            ^
            ==
utf8.c:2404:5: warning: variable 'ret' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
    default:                    /* uh-oh */
    ^~~~~~~
utf8.c:2497:10: note: uninitialized use occurs here
  return ret;
         ^~~
utf8.c:2395:9: warning: variable 'ret' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    if (m = (struct decomposemore *) *more) switch (m->type) {
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2497:10: note: uninitialized use occurs here
  return ret;
         ^~~
utf8.c:2395:5: note: remove the 'if' if its condition is always true
    if (m = (struct decomposemore *) *more) switch (m->type) {
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2391:25: note: initialize the variable 'ret' to silence this warning
  unsigned long i,ix,ret;
                        ^
                         = 0
utf8.c:2513:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
        ~~~^~~~~~~~~~~~~~~~~~~~~~~~~
utf8.c:2513:12: note: place parentheses around the assignment to silence this warning
    if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
           ^
        (                           )
utf8.c:2513:12: note: use '==' to turn this assignment into an equality comparison
    if (mr = (RECURSIVEMORE *) *more) switch (mr->more->type) {
           ^
           ==
utf8.c:2533:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (mr = mn) {              /* did this value recurse on us? */
        ~~~^~~~
utf8.c:2533:12: note: place parentheses around the assignment to silence this warning
    if (mr = mn) {              /* did this value recurse on us? */
           ^
        (      )
utf8.c:2533:12: note: use '==' to turn this assignment into an equality comparison
    if (mr = mn) {              /* did this value recurse on us? */
           ^
           ==
26 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` utf8aux.c
utf8aux.c:47:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  } while (st = st->next);
           ~~~^~~~~~~~~~
utf8aux.c:47:15: note: place parentheses around the assignment to silence this warning
  } while (st = st->next);
              ^
           (            )
utf8aux.c:47:15: note: use '==' to turn this assignment into an equality comparison
  } while (st = st->next);
              ^
              ==
utf8aux.c:136:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (ls = strchr (cs,'*')) *ls = '\0';
            ~~~^~~~~~~~~~~~~~~~~
utf8aux.c:136:9: note: place parentheses around the assignment to silence this warning
        if (ls = strchr (cs,'*')) *ls = '\0';
               ^
            (                   )
utf8aux.c:136:9: note: use '==' to turn this assignment into an equality comparison
        if (ls = strchr (cs,'*')) *ls = '\0';
               ^
               ==
utf8aux.c:241:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    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
    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
    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 with different sign [-Wpointer-sign]
  if (mail_utf7_valid (src)) return NIL;
                       ^~~
./mail.h:1624:30: note: passing argument to parameter 'mailbox' here
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 with different sign [-Wpointer-sign]
  for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
                                     ^~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
utf8aux.c:420:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
                         ^~~
./misc.h:89:36: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
  for (s = cpytxt (&utf7,src,strlen (src)); *s; ++s) switch (*s) {
         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` siglocal.c
`cat CCTYPE` -c `cat CFLAGS` dummy.c
dummy.c:124:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (name,"INBOX")) return &dummydriver;
                               ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:124:37: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (name,"INBOX")) return &dummydriver;
                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:162:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (test,'/')) *++s = '\0';
          ~~^~~~~~~~~~~~~~~~~~~
dummy.c:162:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (test,'/')) *++s = '\0';
            ^
          (                    )
dummy.c:162:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (test,'/')) *++s = '\0';
            ^
            ==
dummy.c:170:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strpbrk (test,"%*")) {
        ~~^~~~~~~~~~~~~~~~~~~~~
dummy.c:170:11: note: place parentheses around the assignment to silence this warning
    if (s = strpbrk (test,"%*")) {
          ^
        (                      )
dummy.c:170:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strpbrk (test,"%*")) {
          ^
          ==
dummy.c:176:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (file,'/')){/* find directory name */
        ~~^~~~~~~~~~~~~~~~~~~~
dummy.c:176:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (file,'/')){/* find directory name */
          ^
        (                     )
dummy.c:176:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strrchr (file,'/')){/* find directory name */
          ^
          ==
dummy.c:185:32: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (pmatch ("INBOX",ucase (test))) {
                               ^~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dummy.c:185:17: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (pmatch ("INBOX",ucase (test))) {
                ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"INBOX") &&
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:224:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"INBOX") &&
                              ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:225:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          pmatch ("INBOX",ucase (strcpy (tmp,test))))
                                 ^~~~~~~~~~~~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dummy.c:225:12: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          pmatch ("INBOX",ucase (strcpy (tmp,test))))
                  ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:227:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
                            ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:227:31: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
                              ^~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:230:19: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,LATT_NOSELECT);
                         ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:230:21: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,LATT_NOSELECT);
                           ^~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:233:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (s = sm_read (&sdb));   /* until no more subscriptions */
         ~~^~~~~~~~~~~~~~~~
dummy.c:233:12: note: place parentheses around the assignment to silence this warning
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
         (                 )
dummy.c:233:12: note: use '==' to turn this assignment into an equality comparison
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
           ==
dummy.c:282:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (dp = opendir (tmp)) {     /* do nothing if can't open directory */
      ~~~^~~~~~~~~~~~~~~
dummy.c:282:10: note: place parentheses around the assignment to silence this warning
  if (dp = opendir (tmp)) {     /* do nothing if can't open directory */
         ^
      (                 )
dummy.c:282:10: note: use '==' to turn this assignment into an equality comparison
  if (dp = opendir (tmp)) {     /* do nothing if can't open directory */
         ^
         ==
dummy.c:290:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
                                      ^~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:290:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
                                          ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:290:64: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
                                                               ^~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:290:68: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!level && dir && pmatch_full (dir,pat,'/') && !pmatch (dir,"INBOX"))
                                                                   ^~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:294:64: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
                                                             ~~^~~~~~~~~~~~~~
dummy.c:294:64: note: place parentheses around the assignment to silence this warning
    if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
                                                               ^
                                                             (               )
dummy.c:294:64: note: use '==' to turn this assignment into an equality comparison
    if (!dir || dir[(len = strlen (dir)) - 1] == '/') while (d = readdir (dp))
                                                               ^
                                                               ==
dummy.c:304:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((pmatch_full (strcpy (path,tmp),pat,'/') ||
                          ^~~~~~~~~~~~~~~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:304:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((pmatch_full (strcpy (path,tmp),pat,'/') ||
                                            ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:305:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             pmatch_full (strcat (path,"/"),pat,'/') ||
                          ^~~~~~~~~~~~~~~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:305:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             pmatch_full (strcat (path,"/"),pat,'/') ||
                                            ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:306:15: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             dmatch (path,pat,'/')) &&
                     ^~~~
./env.h:30:29: note: passing argument to parameter 's' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                            ^
dummy.c:306:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             dmatch (path,pat,'/')) &&
                          ^~~
./env.h:30:46: note: passing argument to parameter 'pat' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                                             ^
dummy.c:315:19: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!pmatch (tmp,"INBOX")) {
                         ^~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:315:23: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!pmatch (tmp,"INBOX")) {
                             ^~~~~~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:316:25: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (pmatch_full (tmp,pat,'/')) {
                               ^~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:316:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (pmatch_full (tmp,pat,'/')) {
                                   ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:321:30: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (pmatch_full (path,pat,'/') &&
                                    ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:321:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (pmatch_full (path,pat,'/') &&
                                         ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:325:18: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (dmatch (path,pat,'/') &&
                        ^~~~
./env.h:30:29: note: passing argument to parameter 's' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                            ^
dummy.c:325:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (dmatch (path,pat,'/') &&
                             ^~~
./env.h:30:46: note: passing argument to parameter 'pat' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                                             ^
dummy.c:331:23: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
                             ^~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
dummy.c:331:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
                                 ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
dummy.c:331:56: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
                                                              ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:331:60: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (pmatch_full (tmp,pat,'/') && compare_cstring (tmp,"INBOX"))
                                                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:383:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      read (fd,buf+ssiz,bsiz = min (fsiz,BUFSIZE));
      ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dummy.c:458:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) {
                         ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:458:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(compare_cstring (mailbox,"INBOX") && (s = dummy_file (tmp,mailbox)))) {
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:485:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = strrchr (path,'/')) { /* found superior to this name? */
      ~~^~~~~~~~~~~~~~~~~~~~
dummy.c:485:9: note: place parentheses around the assignment to silence this warning
  if (s = strrchr (path,'/')) { /* found superior to this name? */
        ^
      (                     )
dummy.c:485:9: note: use '==' to turn this assignment into an equality comparison
  if (s = strrchr (path,'/')) { /* found superior to this name? */
        ^
        ==
dummy.c:568:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf))
                        ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:568:29: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (old,"INBOX") && stat (oldname,&sbuf))
                            ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:597:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (compare_cstring (stream->mailbox,"INBOX"))
                         ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:597:42: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (compare_cstring (stream->mailbox,"INBOX"))
                                         ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:704:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                     ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
dummy.c:705:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_sequence (stream,sequence)) fatal ("Impossible dummy_copy");
                            ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
dummy.c:726:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) {
                        ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
dummy.c:726:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) {
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dummy.c:728:23: warning: unsequenced modification and access to 'ts' [-Wunsequenced]
    if (!ts && !(*(ts = default_proto (NIL))->dtb->create) (ts,"INBOX"))
                      ^                                     ~~
dummy.c:803:28: warning: expression result unused [-Wunused-value]
  for (i = 0, s = tmp; *s; *s++) if ((*s == '*') || (*s == '%')) ++i;
                           ^~~~
54 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` pseudo.c
`cat CCTYPE` -c `cat CFLAGS` netmsg.c
netmsg.c:64:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (f = fopen (tmp,"wb+")) unlink (tmp);
        ~~^~~~~~~~~~~~~~~~~~~
netmsg.c:64:11: note: place parentheses around the assignment to silence this warning
    if (f = fopen (tmp,"wb+")) unlink (tmp);
          ^
        (                    )
netmsg.c:64:11: note: use '==' to turn this assignment into an equality comparison
    if (f = fopen (tmp,"wb+")) unlink (tmp);
          ^
          ==
netmsg.c:73:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (s = net_getline (stream)) {
         ~~^~~~~~~~~~~~~~~~~~~~~~
netmsg.c:73:12: note: place parentheses around the assignment to silence this warning
  while (s = net_getline (stream)) {
           ^
         (                       )
netmsg.c:73:12: note: use '==' to turn this assignment into an equality comparison
  while (s = net_getline (stream)) {
           ^
           ==
2 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` flstring.c
`cat CCTYPE` -c `cat CFLAGS` fdstring.c
fdstring.c:67:3: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
  read (d->fd,s->chunk,(size_t) s->cursize);
  ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fdstring.c:94:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s->cursize = min (s->chunksize,SIZE (s))) {
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fdstring.c:94:18: note: place parentheses around the assignment to silence this warning
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
      (                                       )
fdstring.c:94:18: note: use '==' to turn this assignment into an equality comparison
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
                 ==
fdstring.c:97:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read ((long) s->data,s->curpos,(size_t) s->cursize);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` rfc822.c
rfc822.c:156:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = d = strchr (tmp,':')) {
        ~~^~~~~~~~~~~~~~~~~~~~~~
rfc822.c:156:11: note: place parentheses around the assignment to silence this warning
    if (t = d = strchr (tmp,':')) {
          ^
        (                       )
rfc822.c:156:11: note: use '==' to turn this assignment into an equality comparison
    if (t = d = strchr (tmp,':')) {
          ^
          ==
rfc822.c:160:14: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ucase (tmp);              /* coerce to uppercase */
             ^~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:199:53: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!env->date && !strcmp (tmp+1,"ATE")) env->date = cpystr (d);
                                                           ^ ~~~~~~~~~~
rfc822.c:205:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (c = *d++) if (c != ' ') *t++ = c;
                 ~~^~~~~~
rfc822.c:205:13: note: place parentheses around the assignment to silence this warning
          while (c = *d++) if (c != ' ') *t++ = c;
                   ^
                 (       )
rfc822.c:205:13: note: use '==' to turn this assignment into an equality comparison
          while (c = *d++) if (c != ' ') *t++ = c;
                   ^
                   ==
rfc822.c:219:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (t = rfc822_parse_phrase (d)) *t = '\0';
              ~~^~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:219:10: note: place parentheses around the assignment to silence this warning
          if (t = rfc822_parse_phrase (d)) *t = '\0';
                ^
              (                          )
rfc822.c:219:10: note: use '==' to turn this assignment into an equality comparison
          if (t = rfc822_parse_phrase (d)) *t = '\0';
                ^
                ==
rfc822.c:230:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (c = *d++) if (c != ' ') *t++ = c;
                 ~~^~~~~~
rfc822.c:230:13: note: place parentheses around the assignment to silence this warning
          while (c = *d++) if (c != ' ') *t++ = c;
                   ^
                 (       )
rfc822.c:230:13: note: use '==' to turn this assignment into an equality comparison
          while (c = *d++) if (c != ' ') *t++ = c;
                   ^
                   ==
rfc822.c:131:8: warning: unused variable 'PathP' [-Wunused-variable]
  long PathP = NIL;             /* flag that a Path: was seen */
       ^
rfc822.c:385:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (m = GETPOS (bs)) m--; /* get position in front of character */
          ~~^~~~~~~~~~~~~
rfc822.c:385:13: note: place parentheses around the assignment to silence this warning
      if (m = GETPOS (bs)) m--; /* get position in front of character */
            ^
          (              )
rfc822.c:385:13: note: use '==' to turn this assignment into an equality comparison
      if (m = GETPOS (bs)) m--; /* get position in front of character */
            ^
            ==
rfc822.c:395:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
            ~~^~~~~~~
rfc822.c:395:8: note: place parentheses around the assignment to silence this warning
        if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
              ^
            (        )
rfc822.c:395:8: note: use '==' to turn this assignment into an equality comparison
        if (k = j - 2) for (s = s1; i-- && *s++ == (c = SNX (bs)) && --k;);
              ^
              ==
rfc822.c:450:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (i = part->body.mime.text.size) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:450:13: note: place parentheses around the assignment to silence this warning
      if (i = part->body.mime.text.size) {
            ^
          (                            )
rfc822.c:450:13: note: use '==' to turn this assignment into an equality comparison
      if (i = part->body.mime.text.size) {
            ^
            ==
rfc822.c:494:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            rfc822_parse_content_header (&part->body,ucase (s1+8),s);
                                                            ^~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:494:47: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            rfc822_parse_content_header (&part->body,ucase (s1+8),s);
                                                     ^~~~~~~~~~~~
./rfc822.h:64:52: note: passing argument to parameter 'name' here
void rfc822_parse_content_header (BODY *body,char *name,char *s);
                                                   ^
rfc822.c:551:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = strchr (name,' ')) *t = '\0';
      ~~^~~~~~~~~~~~~~~~~~~
rfc822.c:551:9: note: place parentheses around the assignment to silence this warning
  if (t = strchr (name,' ')) *t = '\0';
        ^
      (                    )
rfc822.c:551:9: note: use '==' to turn this assignment into an equality comparison
  if (t = strchr (name,' ')) *t = '\0';
        ^
        ==
rfc822.c:564:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      body->disposition.type = ucase (cpystr (s));
                                      ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:564:30: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      body->disposition.type = ucase (cpystr (s));
                             ^ ~~~~~~~~~~~~~~~~~~
rfc822.c:578:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        stl->text.data = (unsigned char *) ucase (cpystr (s));
                                                  ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:605:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             compare_cstring (s,body_types[i]); i++);
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
rfc822.c:605:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             compare_cstring (s,body_types[i]); i++);
                                ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
rfc822.c:616:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          body_types[body->type] = ucase (s);
                                          ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:616:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          body_types[body->type] = ucase (s);
                                 ^ ~~~~~~~~~
rfc822.c:628:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (s) body->subtype = ucase (rfc822_cpy (s));
                                      ^~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:628:23: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (s) body->subtype = ucase (rfc822_cpy (s));
                             ^ ~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:646:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             compare_cstring (s,body_encodings[i]); i++);
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
rfc822.c:646:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             compare_cstring (s,body_encodings[i]); i++);
                                ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
rfc822.c:657:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          body_encodings[body->encoding] = ucase (s);
                                                  ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:657:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          body_encodings[body->encoding] = ucase (s);
                                         ^ ~~~~~~~~~
rfc822.c:690:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      param->attribute = ucase (cpystr (s));
                                ^~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
rfc822.c:690:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      param->attribute = ucase (cpystr (s));
                       ^ ~~~~~~~~~~~~~~~~~~
rfc822.c:741:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
             ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:741:18: note: place parentheses around the assignment to silence this warning
    else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
                 ^
             (                                                   )
rfc822.c:741:18: note: use '==' to turn this assignment into an equality comparison
    else if (adr = rfc822_parse_address (lst,last,&string,host,0)) {
                 ^
                 ==
rfc822.c:795:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:795:11: note: place parentheses around the assignment to silence this warning
  if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
          ^
      (                                                           )
rfc822.c:795:11: note: use '==' to turn this assignment into an equality comparison
  if (adr = rfc822_parse_group (lst,last,string,defaulthost,depth)) last = adr;
          ^
          ==
rfc822.c:797:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
           ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:797:16: note: place parentheses around the assignment to silence this warning
  else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
               ^
           (                                              )
rfc822.c:797:16: note: use '==' to turn this assignment into an equality comparison
  else if (adr = rfc822_parse_mailbox (string,defaulthost)) {
               ^
               ==
rfc822.c:843:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:843:13: note: place parentheses around the assignment to silence this warning
    if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
            ^
        (                                                               )
rfc822.c:843:13: note: use '==' to turn this assignment into an equality comparison
    if (adr = rfc822_parse_address (lst,last,string,defaulthost,depth+1)) {
            ^
            ==
rfc822.c:902:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (end = rfc822_parse_phrase (s)) {
           ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:902:16: note: place parentheses around the assignment to silence this warning
  else if (end = rfc822_parse_phrase (s)) {
               ^
           (                            )
rfc822.c:902:16: note: use '==' to turn this assignment into an equality comparison
  else if (end = rfc822_parse_phrase (s)) {
               ^
               ==
rfc822.c:1031:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = rfc822_parse_word (string,wspecials)) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1031:11: note: place parentheses around the assignment to silence this warning
    if (t = rfc822_parse_word (string,wspecials)) {
          ^
        (                                       )
rfc822.c:1031:11: note: use '==' to turn this assignment into an equality comparison
    if (t = rfc822_parse_word (string,wspecials)) {
          ^
          ==
rfc822.c:1099:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (t = rfc822_parse_word (string,wspecials)) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1099:14: note: place parentheses around the assignment to silence this warning
  else if (t = rfc822_parse_word (string,wspecials)) {
             ^
           (                                       )
rfc822.c:1099:14: note: use '==' to turn this assignment into an equality comparison
  else if (t = rfc822_parse_word (string,wspecials)) {
             ^
             ==
rfc822.c:1109:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (string = rfc822_parse_domain (string,&t)) {
          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1109:18: note: place parentheses around the assignment to silence this warning
      if (string = rfc822_parse_domain (string,&t)) {
                 ^
          (                                       )
rfc822.c:1109:18: note: use '==' to turn this assignment into an equality comparison
      if (string = rfc822_parse_domain (string,&t)) {
                 ^
                 ==
rfc822.c:1176:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (st = strchr (st,I2C_ESC))
                 ~~~^~~~~~~~~~~~~~~~~~~~~
rfc822.c:1176:14: note: place parentheses around the assignment to silence this warning
          while (st = strchr (st,I2C_ESC))
                    ^
                 (                       )
rfc822.c:1176:14: note: use '==' to turn this assignment into an equality comparison
          while (st = strchr (st,I2C_ESC))
                    ^
                    ==
rfc822.c:1375:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = min (len,buf->end - buf->cur)) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1375:11: note: place parentheses around the assignment to silence this warning
    if (i = min (len,buf->end - buf->cur)) {
          ^
        (                                )
rfc822.c:1375:11: note: use '==' to turn this assignment into an equality comparison
    if (i = min (len,buf->end - buf->cur)) {
          ^
          ==
rfc822.c:1466:45: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    rfc822_output_header_line (buf,"Date",i,env->date) &&
                                            ^~~~~~~~~
./rfc822.h:89:11: note: passing argument to parameter 'text' here
                                char *text);
                                      ^
rfc822.c:1623:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    for (; s = strpbrk (src,"\\\""); src = s + 1) {
           ~~^~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1623:14: note: place parentheses around the assignment to silence this warning
    for (; s = strpbrk (src,"\\\""); src = s + 1) {
             ^
           (                       )
rfc822.c:1623:14: note: use '==' to turn this assignment into an equality comparison
    for (; s = strpbrk (src,"\\\""); src = s + 1) {
             ^
             ==
rfc822.c:1741:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (part = part->next);  /* until done */
           ~~~~~^~~~~~~~~~~~
rfc822.c:1741:17: note: place parentheses around the assignment to silence this warning
    while (part = part->next);  /* until done */
                ^
           (                )
rfc822.c:1741:17: note: use '==' to turn this assignment into an equality comparison
    while (part = part->next);  /* until done */
                ^
                ==
rfc822.c:1809:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (part = part->next);  /* until done */
           ~~~~~^~~~~~~~~~~~
rfc822.c:1809:17: note: place parentheses around the assignment to silence this warning
    while (part = part->next);  /* until done */
                ^
           (                )
rfc822.c:1809:17: note: use '==' to turn this assignment into an equality comparison
    while (part = part->next);  /* until done */
                ^
                ==
rfc822.c:1965:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strpbrk (tmp,"\015\012")) *s = NIL;
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
rfc822.c:1965:8: note: place parentheses around the assignment to silence this warning
        if (s = strpbrk (tmp,"\015\012")) *s = NIL;
              ^
            (                           )
rfc822.c:1965:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strpbrk (tmp,"\015\012")) *s = NIL;
              ^
              ==
43 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` nntp.c
nntp.c:353:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (s = net_getline (LOCAL->nntpstream->netstream)) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:353:14: note: place parentheses around the assignment to silence this warning
    while (s = net_getline (LOCAL->nntpstream->netstream)) {
             ^
           (                                             )
nntp.c:353:14: note: use '==' to turn this assignment into an equality comparison
    while (s = net_getline (LOCAL->nntpstream->netstream)) {
             ^
             ==
nntp.c:358:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (t = strchr (s,' ')) { /* tie off after newsgroup name */
          ~~^~~~~~~~~~~~~~~~
nntp.c:358:13: note: place parentheses around the assignment to silence this warning
      if (t = strchr (s,' ')) { /* tie off after newsgroup name */
            ^
          (                 )
nntp.c:358:13: note: use '==' to turn this assignment into an equality comparison
      if (t = strchr (s,' ')) { /* tie off after newsgroup name */
            ^
            ==
nntp.c:362:19: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
                         ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
nntp.c:362:24: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
                              ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
nntp.c:365:21: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (pmatch_full (name,pattern,'.'))
                           ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
nntp.c:365:26: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (pmatch_full (name,pattern,'.'))
                                ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
nntp.c:397:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
      ~~^~~~~~~~~~~~~~~~
nntp.c:397:9: note: place parentheses around the assignment to silence this warning
  if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
        ^
      (                 )
nntp.c:397:9: note: use '==' to turn this assignment into an equality comparison
  if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
        ^
        ==
nntp.c:397:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
                                                           ^
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
nntp.c:397:62: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (nntp_valid (s) && pmatch (s,mbx))
                                                             ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
nntp.c:399:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (s = sm_read (&sdb));   /* until no more subscriptions */
         ~~^~~~~~~~~~~~~~~~
nntp.c:399:12: note: place parentheses around the assignment to silence this warning
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
         (                 )
nntp.c:399:12: note: use '==' to turn this assignment into an equality comparison
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
           ==
nntp.c:430:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    for (s = wildmat; s = strchr (s,'%'); *s = '*');
                      ~~^~~~~~~~~~~~~~~~
nntp.c:430:25: note: place parentheses around the assignment to silence this warning
    for (s = wildmat; s = strchr (s,'%'); *s = '*');
                        ^
                      (                 )
nntp.c:430:25: note: use '==' to turn this assignment into an equality comparison
    for (s = wildmat; s = strchr (s,'%'); *s = '*');
                        ^
                        ==
nntp.c:556:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (state = newsrc_state (stream,name)) {
             ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:556:20: note: place parentheses around the assignment to silence this warning
    else if (state = newsrc_state (stream,name)) {
                   ^
             (                                 )
nntp.c:556:20: note: use '==' to turn this assignment into an equality comparison
    else if (state = newsrc_state (stream,name)) {
                   ^
                   ==
nntp.c:566:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            newsrc_check_uid (state,k,&status.recent,&status.unseen);
                              ^~~~~
./newsrc.h:42:39: note: passing argument to parameter 'state' here
void newsrc_check_uid (unsigned char *state,unsigned long uid,
                                      ^
nntp.c:575:20: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        newsrc_check_uid (state,i++,&status.recent,&status.unseen);
                          ^~~~~
./newsrc.h:42:39: note: passing argument to parameter 'state' here
void newsrc_check_uid (unsigned char *state,unsigned long uid,
                                      ^
nntp.c:734:12: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    lcase (strcpy (s,(long) mail_parameters (NIL,GET_NEWSRCCANONHOST,NIL) ?
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:87:38: note: passing argument to parameter 'string' here
unsigned char *lcase (unsigned char *string);
                                     ^
nntp.c:764:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fread (LOCAL->over_fmt = (char *) fs_get ((size_t) k + 3),
    ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:853:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
nntp.c:854:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_sequence (stream,sequence)))
                                                ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
nntp.c:896:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
                                ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
nntp.c:896:67: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
                                                                  ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
nntp.c:922:9: warning: data argument not used by format string [-Wformat-extra-args]
               mail_uid (stream,j - 1));
               ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
nntp.c:929:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          for (t = v = s; c = *v++;)
                          ~~^~~~~~
nntp.c:929:22: note: place parentheses around the assignment to silence this warning
          for (t = v = s; c = *v++;)
                            ^
                          (       )
nntp.c:929:22: note: use '==' to turn this assignment into an equality comparison
          for (t = v = s; c = *v++;)
                            ^
                            ==
nntp.c:999:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
              ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
nntp.c:999:72: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = net_getline (LOCAL->nntpstream->netstream)) && strcmp (s,".")){
                                                                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
nntp.c:1039:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = strchr (ov->subject,'\t')) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1039:9: note: place parentheses around the assignment to silence this warning
  if (t = strchr (ov->subject,'\t')) {
        ^
      (                            )
nntp.c:1039:9: note: use '==' to turn this assignment into an equality comparison
  if (t = strchr (ov->subject,'\t')) {
        ^
        ==
nntp.c:1042:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ov->date = strchr (t,'\t')) {
        ~~~~~~~~~^~~~~~~~~~~~~~~~~
nntp.c:1042:18: note: place parentheses around the assignment to silence this warning
    if (ov->date = strchr (t,'\t')) {
                 ^
        (                         )
nntp.c:1042:18: note: use '==' to turn this assignment into an equality comparison
    if (ov->date = strchr (t,'\t')) {
                 ^
                 ==
nntp.c:1045:43: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!elt->day) mail_parse_date (elt,ov->date);
                                          ^~~~~~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
nntp.c:1049:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (ov->message_id = strchr (ov->date,'\t')) {
          ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1049:26: note: place parentheses around the assignment to silence this warning
      if (ov->message_id = strchr (ov->date,'\t')) {
                         ^
          (                                      )
nntp.c:1049:26: note: use '==' to turn this assignment into an equality comparison
      if (ov->message_id = strchr (ov->date,'\t')) {
                         ^
                         ==
nntp.c:1053:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (ov->references = strchr (ov->message_id,'\t')) {
            ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1053:21: note: place parentheses around the assignment to silence this warning
        if (ov->references = strchr (ov->message_id,'\t')) {
                           ^
            (                                            )
nntp.c:1053:21: note: use '==' to turn this assignment into an equality comparison
        if (ov->references = strchr (ov->message_id,'\t')) {
                           ^
                           ==
nntp.c:1057:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (t = strchr (ov->references,'\t')) {
              ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1057:10: note: place parentheses around the assignment to silence this warning
          if (t = strchr (ov->references,'\t')) {
                ^
              (                               )
nntp.c:1057:10: note: use '==' to turn this assignment into an equality comparison
          if (t = strchr (ov->references,'\t')) {
                ^
                ==
nntp.c:1062:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (t = strchr (t,'\t')) {
                ~~^~~~~~~~~~~~~~~~~
nntp.c:1062:12: note: place parentheses around the assignment to silence this warning
            if (t = strchr (t,'\t')) {
                  ^
                (                  )
nntp.c:1062:12: note: use '==' to turn this assignment into an equality comparison
            if (t = strchr (t,'\t')) {
                  ^
                  ==
nntp.c:1066:30: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              if (ov->optional.xref = strchr (t,'\t'))
                  ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
nntp.c:1066:30: note: place parentheses around the assignment to silence this warning
              if (ov->optional.xref = strchr (t,'\t'))
                                    ^
                  (                                  )
nntp.c:1066:30: note: use '==' to turn this assignment into an equality comparison
              if (ov->optional.xref = strchr (t,'\t'))
                                    ^
                                    ==
nntp.c:1099:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1099:13: note: place parentheses around the assignment to silence this warning
      if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
            ^
          (                                                       )
nntp.c:1099:13: note: use '==' to turn this assignment into an equality comparison
      if (f = netmsg_slurp (LOCAL->nntpstream->netstream,size,NIL)) {
            ^
            ==
nntp.c:1100:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        fread (elt->private.msg.header.text.data =
        ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1151:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
          ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1151:22: note: place parentheses around the assignment to silence this warning
      if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
                     ^
nntp.c:1151:22: note: use '==' to turn this assignment into an equality comparison
      if (LOCAL->txt = netmsg_slurp (LOCAL->nntpstream->netstream,
                     ^
                     ==
nntp.c:1216:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (msg = utf8_badcharset (charset)) {
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1216:11: note: place parentheses around the assignment to silence this warning
  if (msg = utf8_badcharset (charset)) {
          ^
      (                              )
nntp.c:1216:11: note: use '==' to turn this assignment into an equality comparison
  if (msg = utf8_badcharset (charset)) {
          ^
          ==
nntp.c:1269:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (set = pgm->msgno) {     /* must be inside this sequence */
        ~~~~^~~~~~~~~~~~
nntp.c:1269:13: note: place parentheses around the assignment to silence this warning
    if (set = pgm->msgno) {     /* must be inside this sequence */
            ^
        (               )
nntp.c:1269:13: note: use '==' to turn this assignment into an equality comparison
    if (set = pgm->msgno) {     /* must be inside this sequence */
            ^
            ==
nntp.c:1277:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (set = pgm->uid) {       /* must be inside this sequence */
        ~~~~^~~~~~~~~~
nntp.c:1277:13: note: place parentheses around the assignment to silence this warning
    if (set = pgm->uid) {       /* must be inside this sequence */
            ^
        (             )
nntp.c:1277:13: note: use '==' to turn this assignment into an equality comparison
    if (set = pgm->uid) {       /* must be inside this sequence */
            ^
            ==
nntp.c:1314:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (!mail_parse_date (&delt,ov->date) ||
                                 ^~~~~~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
nntp.c:1513:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
                      ~~^~~~~~
nntp.c:1513:25: note: place parentheses around the assignment to silence this warning
      for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
                        ^
                      (       )
nntp.c:1513:25: note: use '==' to turn this assignment into an equality comparison
      for (t = v = s; c = *v++;) if ((c != '\012') && (c != '\015')) *t++ = c;
                        ^
                        ==
nntp.c:1522:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (t = strchr (v,'\t')) {
            ~~^~~~~~~~~~~~~~~~~
nntp.c:1522:8: note: place parentheses around the assignment to silence this warning
        if (t = strchr (v,'\t')) {
              ^
            (                  )
nntp.c:1522:8: note: use '==' to turn this assignment into an equality comparison
        if (t = strchr (v,'\t')) {
              ^
              ==
nntp.c:1524:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1524:12: note: place parentheses around the assignment to silence this warning
          if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
                  ^
              (                                                 )
nntp.c:1524:12: note: use '==' to turn this assignment into an equality comparison
          if (adr = rfc822_parse_address (&adr,adr,&v,BADHOST,0)) {
                  ^
                  ==
nntp.c:1529:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (v = strchr (t,'\t')) {
              ~~^~~~~~~~~~~~~~~~~
nntp.c:1529:10: note: place parentheses around the assignment to silence this warning
          if (v = strchr (t,'\t')) {
                ^
              (                  )
nntp.c:1529:10: note: use '==' to turn this assignment into an equality comparison
          if (v = strchr (t,'\t')) {
                ^
                ==
nntp.c:1531:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (mail_parse_date (&telt,t)) r->date = mail_longdate (&telt);
                                       ^
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
nntp.c:1679:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (netstream =           /* try to open ordinary connection */
          ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1679:21: note: place parentheses around the assignment to silence this warning
      if (netstream =           /* try to open ordinary connection */
                    ^
nntp.c:1679:21: note: use '==' to turn this assignment into an equality comparison
      if (netstream =           /* try to open ordinary connection */
                    ^
                    ==
nntp.c:1720:35: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (stream->netstream->stream =
        ~~~~~~~~~~~~~~~~~~~~~~~~~~^
nntp.c:1720:35: note: place parentheses around the assignment to silence this warning
    if (stream->netstream->stream =
                                  ^
nntp.c:1720:35: note: use '==' to turn this assignment into an equality comparison
    if (stream->netstream->stream =
                                  ^
                                  ==
nntp.c:1817:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (args = strchr (t,' ')) *args++ = '\0';
        ~~~~~^~~~~~~~~~~~~~~~
nntp.c:1817:14: note: place parentheses around the assignment to silence this warning
    if (args = strchr (t,' ')) *args++ = '\0';
             ^
        (                    )
nntp.c:1817:14: note: use '==' to turn this assignment into an equality comparison
    if (args = strchr (t,' ')) *args++ = '\0';
             ^
             ==
nntp.c:1818:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T;
                          ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1818:29: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"LISTGROUP")) NNTP.ext.listgroup = T;
                            ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1819:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"OVER")) NNTP.ext.over = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"HDR")) NNTP.ext.hdr = T;
                                 ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"PAT")) NNTP.ext.pat = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1821:34: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"PAT")) NNTP.ext.pat = T;
                                 ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1822:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"STARTTLS")) NNTP.ext.starttls = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
nntp.c:1823:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1823:34: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MULTIDOMAIN")) NNTP.ext.multidomain = T;
                                 ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
nntp.c:1825:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"AUTHINFO") && args) {
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1825:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"AUTHINFO") && args) {
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
nntp.c:1828:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T;
                              ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
nntp.c:1828:29: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (args,"USER")) NNTP.ext.authuser = T;
                                   ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
nntp.c:1916:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = strstr (env->date," (")) *s = NIL;
                  ^~~~~~~~~
/usr/include/string.h:338:34: note: passing argument to parameter '__haystack' here
extern char *strstr (const char *__haystack, const char *__needle)
                                 ^
nntp.c:1916:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = strstr (env->date," (")) *s = NIL;
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:1916:9: note: place parentheses around the assignment to silence this warning
  if (s = strstr (env->date," (")) *s = NIL;
        ^
      (                          )
nntp.c:1916:9: note: use '==' to turn this assignment into an equality comparison
  if (s = strstr (env->date," (")) *s = NIL;
        ^
        ==
nntp.c:1886:8: warning: unused variable 'error' [-Wunused-variable]
  long error = NIL;
       ^
nntp.c:1887:8: warning: unused variable 'retry' [-Wunused-variable]
  long retry = NIL;
       ^
nntp.c:2214:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (t = strstr (s,"\015\012.")) {
         ~~^~~~~~~~~~~~~~~~~~~~~~~~
nntp.c:2214:12: note: place parentheses around the assignment to silence this warning
  while (t = strstr (s,"\015\012.")) {
           ^
         (                         )
nntp.c:2214:12: note: use '==' to turn this assignment into an equality comparison
  while (t = strstr (s,"\015\012.")) {
           ^
           ==
73 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` smtp.c
smtp.c:166:34: warning: passing 'char [21]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (mb.service,"submit")) {
                                 ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:166:45: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (mb.service,"submit")) {
                                            ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:172:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (netstream =           /* try to open ordinary connection */
          ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smtp.c:172:21: note: place parentheses around the assignment to silence this warning
      if (netstream =           /* try to open ordinary connection */
                    ^
smtp.c:172:21: note: use '==' to turn this assignment into an equality comparison
      if (netstream =           /* try to open ordinary connection */
                    ^
                    ==
smtp.c:184:23: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        s = compare_cstring ("localhost",mb.host) ?
                             ^~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:184:35: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        s = compare_cstring ("localhost",mb.host) ?
                                         ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:690:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"SIZE")) {
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:690:31: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (s,"SIZE")) {
                              ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:694:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"DELIVERBY")) {
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:694:36: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"DELIVERBY")) {
                                   ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:698:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"ATRN")) {
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:698:36: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"ATRN")) {
                                   ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:702:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"AUTH"))
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:702:36: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (s,"AUTH"))
                                   ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:708:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SIZE")) ESMTP.size.ok = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:708:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SIZE")) ESMTP.size.ok = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:709:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:709:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"8BITMIME")) ESMTP.eightbit.ok = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:710:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:710:34: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"DSN")) ESMTP.dsn.ok = T;
                                 ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ATRN")) ESMTP.atrn.ok = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ATRN")) ESMTP.atrn.ok = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SEND")) ESMTP.service.send = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:712:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SEND")) ESMTP.service.send = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SOML")) ESMTP.service.soml = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:713:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SOML")) ESMTP.service.soml = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SAML")) ESMTP.service.saml = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"SAML")) ESMTP.service.saml = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"EXPN")) ESMTP.service.expn = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"EXPN")) ESMTP.service.expn = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"HELP")) ESMTP.service.help = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"TURN")) ESMTP.service.turn = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ETRN")) ESMTP.service.etrn = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:719:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"STARTTLS")) ESMTP.service.starttls = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:720:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"RELAY")) ESMTP.service.relay = T;
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"PIPELINING")) ESMTP.service.pipe = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:721:34: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"PIPELINING")) ESMTP.service.pipe = T;
                                 ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ENHANCEDSTATUSCODES"))
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:722:34: warning: passing 'char [20]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"ENHANCEDSTATUSCODES"))
                                 ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"BINARYMIME")) ESMTP.service.bmime = T;
                                 ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
smtp.c:725:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (s,"CHUNKING")) ESMTP.service.chunk = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
smtp.c:783:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (t = strstr (s,"\015\012.")) {
         ~~^~~~~~~~~~~~~~~~~~~~~~~~
smtp.c:783:12: note: place parentheses around the assignment to silence this warning
  while (t = strstr (s,"\015\012.")) {
           ^
         (                         )
smtp.c:783:12: note: use '==' to turn this assignment into an equality comparison
  while (t = strstr (s,"\015\012.")) {
           ^
           ==
48 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` imap4r1.c
imap4r1.c:505:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
      ~~^~~~~~~~~~~~~~~~
imap4r1.c:505:9: note: place parentheses around the assignment to silence this warning
  if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
        ^
      (                 )
imap4r1.c:505:9: note: use '==' to turn this assignment into an equality comparison
  if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
        ^
        ==
imap4r1.c:505:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
                                                           ^
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
imap4r1.c:505:62: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (imap_valid (s) && pmatch (s,mbx))
                                                             ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
imap4r1.c:507:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (s = sm_read (&sdb));   /* until no more subscriptions */
         ~~^~~~~~~~~~~~~~~~
imap4r1.c:507:12: note: place parentheses around the assignment to silence this warning
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
         (                 )
imap4r1.c:507:12: note: use '==' to turn this assignment into an equality comparison
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
           ==
imap4r1.c:564:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (cmd,"LIST")) cmd = "RLIST";
                            ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:564:33: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (cmd,"LIST")) cmd = "RLIST";
                                ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:566:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB";
                                 ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:566:38: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (cmd,"LSUB")) cmd = "RLSUB";
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:578:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strcmp (imap_send (stream,"FIND ALL.MAILBOXES",args)->key,"BAD")) &&
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:579:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (imap_send (stream,"FIND MAILBOXES",args)->key,"BAD"))
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:702:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mm_log (reply->text,ret ? NIL : ERROR);
            ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:849:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
             ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:849:20: note: place parentheses around the assignment to silence this warning
    else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
                   ^
             (                                              )
imap4r1.c:849:20: note: use '==' to turn this assignment into an equality comparison
    else if (reply = imap_rimap (stream,"*imap",&mb,usr,tmp));
                   ^
                   ==
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:870:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!reply || strcmp (reply->tag,"*") ||
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:871:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:871:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (strcmp (reply->key,"OK") && strcmp (reply->key,"PREAUTH"))) {
                                             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:872:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (reply) mm_log (reply->text,ERROR);
                         ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:877:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (LOCAL->netstream && strcmp (reply->key,"PREAUTH")) {
                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:985:36: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        stream->inbox = !compare_cstring (mb.mailbox,"INBOX");
                                          ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:985:47: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        stream->inbox = !compare_cstring (mb.mailbox,"INBOX");
                                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:995:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mm_log (reply->text,ERROR);
                ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:1041:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !strcmp ((reply = imap_parse_reply (stream,cpystr (tmp)))->tag,"*")){
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:1045:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:1045:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH")) {
                                                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:1081:37: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (compare_cstring (reply->tag,tag)) {
                                    ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:1083:70: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag))
                                                                     ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:1098:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  mm_log (reply->text,ERROR);
          ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1148:39: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (compare_cstring (reply->tag,tag))
                                             ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:1149:67: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          while (compare_cstring ((reply = imap_reply (stream,tag))->tag,tag))
                                                                         ^~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:1158:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        lsterr = cpystr (reply->text);
                         ^~~~~~~~~~~
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imap4r1.c:1210:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mm_log (reply->text,WARN);
                  ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:1240:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         !strcmp (reply->tag,"*")) imap_parse_unsolicited (stream,reply);
                  ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:1245:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                             strlen (reply->text),len))) {
                                     ^~~~~~~~~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imap4r1.c:1302:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mm_log (reply->text,WARN);
                ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1317:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (t = thr) {
        ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1317:13: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (t = thr) {
            ^
        (                        )
imap4r1.c:1317:13: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (t = thr) {
            ^
            ==
imap4r1.c:1317:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                          ~~^~~~~
imap4r1.c:1317:45: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                            ^
                                          (      )
imap4r1.c:1317:45: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                            ^
                                            ==
imap4r1.c:1342:40: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!imap_OK (stream,reply)) mm_log (reply->text,ERROR);
                                       ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1363:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mm_log (reply->text,ERROR);
            ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1416:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ov.date = env->date;
              ^ ~~~~~~~~~
imap4r1.c:1464:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1499:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (j = (set->last == 0xffffffff) ? stream->nmsgs :
              ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1499:10: note: place parentheses around the assignment to silence this warning
          if (j = (set->last == 0xffffffff) ? stream->nmsgs :
                ^
imap4r1.c:1499:10: note: use '==' to turn this assignment into an equality comparison
          if (j = (set->last == 0xffffffff) ? stream->nmsgs :
                ^
                ==
imap4r1.c:1522:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if (k = (k > i) ? k - i : 0)
                    ~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1522:9: note: place parentheses around the assignment to silence this warning
                if (k = (k > i) ? k - i : 0)
                      ^
                    (                      )
imap4r1.c:1522:9: note: use '==' to turn this assignment into an equality comparison
                if (k = (k > i) ? k - i : 0)
                      ^
                      ==
imap4r1.c:1591:17: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else mm_log (reply->text,ERROR);
                       ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1593:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else mm_log (reply->text,ERROR);
                     ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1700:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (t = strstr (section,".HEADER")) {
             ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:1700:16: note: place parentheses around the assignment to silence this warning
    else if (t = strstr (section,".HEADER")) {
               ^
             (                             )
imap4r1.c:1700:16: note: use '==' to turn this assignment into an equality comparison
    else if (t = strstr (section,".HEADER")) {
               ^
               ==
imap4r1.c:1823:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,WARN);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1833:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1842:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,WARN);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1846:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mm_log (reply->text,ERROR);
            ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1884:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (k = imap_uidlookahead) {/* build UID list */
        ~~^~~~~~~~~~~~~~~~~~~
imap4r1.c:1884:11: note: place parentheses around the assignment to silence this warning
    if (k = imap_uidlookahead) {/* build UID list */
          ^
        (                    )
imap4r1.c:1884:11: note: use '==' to turn this assignment into an equality comparison
    if (k = imap_uidlookahead) {/* build UID list */
          ^
          ==
imap4r1.c:1899:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1935:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:1976:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mm_log (reply->text,ERROR);
            ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2044:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        !strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2048:50: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      for (set = ss; set; set = set->next) if (i = set->first) {
                                               ~~^~~~~~~~~~~~
imap4r1.c:2048:50: note: place parentheses around the assignment to silence this warning
      for (set = ss; set; set = set->next) if (i = set->first) {
                                                 ^
                                               (             )
imap4r1.c:2048:50: note: use '==' to turn this assignment into an equality comparison
      for (set = ss; set; set = set->next) if (i = set->first) {
                                                 ^
                                                 ==
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2063:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2069:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2105:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mm_log (reply->text,ERROR);
                ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2168:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2175:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD"))
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2184:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else mm_log (reply->text,ERROR);
                 ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2271:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (thr->name,type)) 
                            ^~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:2271:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (thr->name,type)) 
                                      ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2331:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(flags & SE_UID) && !strcmp (reply->key,"BAD")) {
                                      ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:2338:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"BAD"))
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:2346:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else mm_log (reply->text,ERROR);
               ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2370:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  mm_log (reply->text,imap_OK (stream,reply) ? (long) NIL : ERROR);
          ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2395:36: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (mail_sequence (stream,sequence)) {
                                   ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
imap4r1.c:2423:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (reply) mm_log (reply->text,ret ? (long) NIL : ERROR);
                     ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2461:65: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (ir && pc && LOCAL->referral && mail_sequence (stream,sequence) &&
                                                                ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
imap4r1.c:2465:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else mm_log (reply->text,ERROR);
               ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2518:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mm_log (reply->text,ERROR);
                ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2581:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (reply->text,ERROR);
              ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2611:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!mail_parse_date (&elt,date)) {
                               ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
imap4r1.c:2615:44: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->reply.tag = LOCAL->reply.line = cpystr ("*");
                                           ^ ~~~~~~~~~~~~
imap4r1.c:2616:24: warning: assigning to 'unsigned char *' from 'char [4]' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->reply.key = "BAD";
                       ^ ~~~~~
imap4r1.c:2617:25: warning: assigning to 'unsigned char *' from 'char [19]' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->reply.text = "Bad date in append";
                        ^ ~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2650:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
          ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2650:15: note: place parentheses around the assignment to silence this warning
      if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
              ^
          (                                             )
imap4r1.c:2650:15: note: use '==' to turn this assignment into an equality comparison
      if (elt = (MESSAGECACHE *) (*mc) (stream,i,CH_ELT))
              ^
              ==
imap4r1.c:2705:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (t = thr) {
        ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2705:13: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (t = thr) {
            ^
        (                        )
imap4r1.c:2705:13: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (t = thr) {
            ^
            ==
imap4r1.c:2705:45: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                          ~~^~~~~
imap4r1.c:2705:45: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                            ^
                                          (      )
imap4r1.c:2705:45: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (t = thr) {
                                            ^
                                            ==
imap4r1.c:2813:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else mm_log (reply->text,ERROR);
                 ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2837:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else mm_log (reply->text,ERROR);
                 ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2859:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else mm_log (reply->text,ERROR);
                 ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2882:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else mm_log (reply->text,ERROR);
                 ^~~~~~~~~~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
imap4r1.c:2919:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") &&
                                         ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:2919:46: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (*sc) (stream,cmd,((compare_cstring (cmd,"FETCH") &&
                                             ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                        compare_cstring (cmd,"STORE") &&
                                         ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:2920:25: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        compare_cstring (cmd,"STORE") &&
                                             ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:2921:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        compare_cstring (cmd,"SEARCH")) ? 
                                         ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:2921:25: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        compare_cstring (cmd,"SEARCH")) ? 
                                             ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:2927:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (arglst = args) while (arg = *arglst++) {
      ~~~~~~~^~~~~~
imap4r1.c:2927:14: note: place parentheses around the assignment to silence this warning
  if (arglst = args) while (arg = *arglst++) {
             ^
      (            )
imap4r1.c:2927:14: note: use '==' to turn this assignment into an equality comparison
  if (arglst = args) while (arg = *arglst++) {
             ^
             ==
imap4r1.c:2927:33: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (arglst = args) while (arg = *arglst++) {
                            ~~~~^~~~~~~~~~~
imap4r1.c:2927:33: note: place parentheses around the assignment to silence this warning
  if (arglst = args) while (arg = *arglst++) {
                                ^
                            (              )
imap4r1.c:2927:33: note: use '==' to turn this assignment into an equality comparison
  if (arglst = args) while (arg = *arglst++) {
                                ^
                                ==
imap4r1.c:2947:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
          ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2947:17: note: place parentheses around the assignment to silence this warning
      if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
                ^
          (                                                                   )
imap4r1.c:2947:17: note: use '==' to turn this assignment into an equality comparison
      if (reply = imap_send_astring (stream,tag,&s,&st,NIL,CMDBASE+MAXCOMMAND))
                ^
                ==
imap4r1.c:2951:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
          ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2951:17: note: place parentheses around the assignment to silence this warning
      if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
                ^
          (                                                  )
imap4r1.c:2951:17: note: use '==' to turn this assignment into an equality comparison
      if (reply = imap_send_literal (stream,tag,&s,arg->text)) return reply;
                ^
                ==
imap4r1.c:2959:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
            ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2959:12: note: place parentheses around the assignment to silence this warning
        if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
                  ^
imap4r1.c:2959:12: note: use '==' to turn this assignment into an equality comparison
        if (reply = imap_send_astring (stream,tag,&s,&list->text,NIL,
                  ^
                  ==
imap4r1.c:2963:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (list = list->next);
             ~~~~~^~~~~~~~~~~~
imap4r1.c:2963:19: note: place parentheses around the assignment to silence this warning
      while (list = list->next);
                  ^
             (                )
imap4r1.c:2963:19: note: use '==' to turn this assignment into an equality comparison
      while (list = list->next);
                  ^
                  ==
imap4r1.c:2967:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
          ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:2967:17: note: place parentheses around the assignment to silence this warning
      if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
                ^
imap4r1.c:2967:17: note: use '==' to turn this assignment into an equality comparison
      if (reply = imap_send_spgm (stream,tag,CMDBASE,&s,arg->text,
                ^
                ==
imap4r1.c:3053:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
          ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3053:17: note: place parentheses around the assignment to silence this warning
      if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
                ^
          (                                                                 )
imap4r1.c:3053:17: note: use '==' to turn this assignment into an equality comparison
      if (reply = imap_send_astring (stream,tag,&s,&st,T,CMDBASE+MAXCOMMAND))
                ^
                ==
imap4r1.c:3074:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!map->date || mail_parse_date (&elt,map->date)) {
                                                ^~~~~~~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
imap4r1.c:3075:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (t = map->flags) { /* flags given? */
              ~~^~~~~~~~~~~~
imap4r1.c:3075:10: note: place parentheses around the assignment to silence this warning
          if (t = map->flags) { /* flags given? */
                ^
              (             )
imap4r1.c:3075:10: note: use '==' to turn this assignment into an equality comparison
          if (t = map->flags) { /* flags given? */
                ^
                ==
imap4r1.c:3087:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
                ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3087:16: note: place parentheses around the assignment to silence this warning
            if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
                      ^
imap4r1.c:3087:16: note: use '==' to turn this assignment into an equality comparison
            if (reply = imap_send_astring (stream,tag,&s,&st,NIL,
                      ^
                      ==
imap4r1.c:3091:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (reply = imap_send_literal (stream,tag,&s,map->message))
              ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3091:14: note: place parentheses around the assignment to silence this warning
          if (reply = imap_send_literal (stream,tag,&s,map->message))
                    ^
              (                                                     )
imap4r1.c:3091:14: note: use '==' to turn this assignment into an equality comparison
          if (reply = imap_send_literal (stream,tag,&s,map->message))
                    ^
                    ==
imap4r1.c:3121:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (list = list->next);
             ~~~~~^~~~~~~~~~~~
imap4r1.c:3121:19: note: place parentheses around the assignment to silence this warning
      while (list = list->next);
                  ^
             (                )
imap4r1.c:3121:19: note: use '==' to turn this assignment into an equality comparison
      while (list = list->next);
                  ^
                  ==
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3200:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (reply->tag,"+")) {/* prompt for more data? */
              ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3355:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (hdr = pgm->header) do {
      ~~~~^~~~~~~~~~~~~
imap4r1.c:3355:11: note: place parentheses around the assignment to silence this warning
  if (hdr = pgm->header) do {
          ^
      (                )
imap4r1.c:3355:11: note: use '==' to turn this assignment into an equality comparison
  if (hdr = pgm->header) do {
          ^
          ==
imap4r1.c:3357:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3357:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
              ^
        (                                                            )
imap4r1.c:3357:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_astring (stream,tag,s,&hdr->line,NIL,limit))
              ^
              ==
imap4r1.c:3360:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3360:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
              ^
        (                                                            )
imap4r1.c:3360:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_astring (stream,tag,s,&hdr->text,NIL,limit))
              ^
              ==
imap4r1.c:3362:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  } while (hdr = hdr->next);
           ~~~~^~~~~~~~~~~
imap4r1.c:3362:16: note: place parentheses around the assignment to silence this warning
  } while (hdr = hdr->next);
               ^
           (              )
imap4r1.c:3362:16: note: use '==' to turn this assignment into an equality comparison
  } while (hdr = hdr->next);
               ^
               ==
imap4r1.c:3365:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3365:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
              ^
        (                                                          )
imap4r1.c:3365:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->first,limit))
              ^
              ==
imap4r1.c:3368:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3368:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
              ^
        (                                                           )
imap4r1.c:3368:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_spgm (stream,tag,base,s,pgo->second,limit))
              ^
              ==
imap4r1.c:3374:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3374:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
              ^
        (                                                        )
imap4r1.c:3374:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_spgm (stream,tag,base,s,pgl->pgm,limit))
              ^
              ==
imap4r1.c:3452:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3452:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
              ^
        (                                           )
imap4r1.c:3452:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_literal (stream,tag,s,&st)) return reply;
              ^
              ==
imap4r1.c:3454:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3454:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
              ^
        (                                                         )
imap4r1.c:3454:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_send_sset (stream,tag,NIL,s,set,prefix,limit))
              ^
              ==
imap4r1.c:3555:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
        ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3555:15: note: place parentheses around the assignment to silence this warning
    if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
              ^
        (                                                               )
imap4r1.c:3555:15: note: use '==' to turn this assignment into an equality comparison
    if (reply = imap_parse_reply (stream,net_getline (LOCAL->netstream))) {
              ^
              ==
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3557:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (reply->tag,"+")) return reply;
                   ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3559:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (reply->tag,"*")) {
                        ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3564:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (tag && !compare_cstring (tag,reply->tag)) return reply;
                                     ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:3590:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(LOCAL->reply.line = text)) {
                          ^ ~~~~
imap4r1.c:3596:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (stream->debug) mm_dlog (LOCAL->reply.line);
                              ^~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
./mail.h:1600:21: note: passing argument to parameter 'string' here
void mm_dlog (char *string);
                    ^
imap4r1.c:3597:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) {
                                     ^
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3597:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) {
                                     ^
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3597:26: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!(LOCAL->reply.tag = strtok_r (LOCAL->reply.line," ",&r))) {
                         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3603:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (strcmp (LOCAL->reply.tag,"+")) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3605:28: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(LOCAL->reply.key = strtok_r (NIL," ",&r))) {
                           ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3615:29: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r)))
                            ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3616:54: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->reply.text = LOCAL->reply.key + strlen (LOCAL->reply.key);
                                                     ^~~~~~~~~~~~~~~~
imap4r1.c:108:15: note: expanded from macro 'LOCAL'
#define LOCAL ((IMAPLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imap4r1.c:3619:22: warning: assigning to 'unsigned char *' from 'char [4]' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->reply.key = "BAD";   /* so it barfs if not expecting continuation */
                     ^ ~~~~~
imap4r1.c:3620:29: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(LOCAL->reply.text = strtok_r (NIL,"\n",&r)))
                            ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3621:25: warning: assigning to 'unsigned char *' from 'char [1]' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->reply.text = "";
                        ^ ~~
imap4r1.c:3641:40: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  LOCAL->reply.tag = LOCAL->reply.line = cpystr (tag ? tag : "*");
                                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3642:20: warning: assigning to 'unsigned char *' from 'char [3]' converts between pointers to integer types with different sign [-Wpointer-sign]
  LOCAL->reply.key = "NO";
                   ^ ~~~~
imap4r1.c:3643:21: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  LOCAL->reply.text = text;
                    ^ ~~~~
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3658:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (reply->key,"OK")) {
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3659:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,NIL,NIL);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
                                                   ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3663:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3664:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,WARN,NIL);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
                                                   ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3666:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (reply->key,"BAD")) {
                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3667:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      imap_parse_response (stream,reply->text,ERROR,NIL);
                                  ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
                                                   ^
imap4r1.c:3691:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    msgno = strtoul (reply->key,(char **) &s,10);
                     ^~~~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3705:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    s = ucase (strtok_r (reply->text," ",&r));
                         ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3705:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    s = ucase (strtok_r (reply->text," ",&r));
                         ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3705:16: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    s = ucase (strtok_r (reply->text," ",&r));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:35: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1140:3: note: expanded from macro '__strtok_r'
  (__extension__ (__builtin_constant_p (sep) && __string2_1bptr_p (sep)       \
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3707:7: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    t = strtok_r (NIL,"\n",&r);
      ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3710:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"EXISTS") && (msgno >= stream->nmsgs))
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3712:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RECENT") && (msgno <= stream->nmsgs))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3714:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"EXPUNGE") && msgno && (msgno <= stream->nmsgs)) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3722:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3722:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if ((!strcmp (s,"FETCH") || !strcmp (s,"STORE")) &&
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3733:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while (prop = (strtok_r (t," )",&r))) {
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3733:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while (prop = (strtok_r (t," )",&r))) {
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3733:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (prop = (strtok_r (t," )",&r))) {
             ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3733:19: note: place parentheses around the assignment to silence this warning
      while (prop = (strtok_r (t," )",&r))) {
                  ^
             (                            )
imap4r1.c:3733:19: note: use '==' to turn this assignment into an equality comparison
      while (prop = (strtok_r (t," )",&r))) {
                  ^
                  ==
imap4r1.c:3734:4: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        t = strtok_r (NIL,"\n",&r);
          ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:802:29: note: expanded from macro 'strcmp'
     (__builtin_constant_p (s1) && __builtin_constant_p (s2)                  \
                            ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:32: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                               ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:872:51: note: expanded from macro '__strcmp_cg'
                      (((const unsigned char *) (const char *) (s1))[0]       \
                                                                ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:877:26: note: expanded from macro '__strcmp_cg'
                                     (const char *) (s1))[1] - __s2[1]);      \
                                                     ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:881:23: note: expanded from macro '__strcmp_cg'
                                         (const char *) (s1))[2] - __s2[2]);  \
                                                         ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:884:25: note: expanded from macro '__strcmp_cg'
                                          (const char *)  (s1))[3]            \
                                                           ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:31: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                     ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:816:24: note: expanded from macro 'strcmp'
               : __strcmp_gc (s1, s2, __s2_len))                              \
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:890:54: note: expanded from macro '__strcmp_gc'
# define __strcmp_gc(s1, s2, l2) (- __strcmp_cg (s2, s1, l2))
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:870:49: note: expanded from macro '__strcmp_cg'
                      (const unsigned char *) (const char *) (s2);            \
                                                              ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:22: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:3738:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (ucase (prop),"FLAGS")) imap_parse_flags (stream,elt,&t);
                     ^~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3746:27: warning: passing 'char [27]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            mail_parse_date (elt,"01-Jan-1970 00:00:00 +0000");
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
imap4r1.c:3752:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          LOCAL->lastuid.uid = elt->private.uid = strtoul (t,(char **) &t,10);
                                                           ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3793:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!(s = strchr (md.what,']'))) {
                    ^ ~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3795:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              for (s = md.what; *s && (isdigit (*s) || (*s == '.')); s++);
                     ^ ~~~~~~~
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3797:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (strncmp (s,"HEADER.FIELDS",13) &&
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3798:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (!s[13] || strcmp (s+13,".NOT")))
                                     ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3808:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (t = strchr (s = t,' ')) *t++ = '\0';
                                   ^~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imap4r1.c:3808:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (t = strchr (s = t,' ')) *t++ = '\0';
                         ^ ~~~~~~~~~~~~~~~~~~
imap4r1.c:3808:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              else if (t = strchr (s = t,' ')) *t++ = '\0';
                       ~~^~~~~~~~~~~~~~~~~~~~
imap4r1.c:3808:19: note: place parentheses around the assignment to silence this warning
              else if (t = strchr (s = t,' ')) *t++ = '\0';
                         ^
                       (                     )
imap4r1.c:3808:19: note: use '==' to turn this assignment into an equality comparison
              else if (t = strchr (s = t,' ')) *t++ = '\0';
                         ^
                         ==
imap4r1.c:3813:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                md.first = strtoul (s+1,(char **) &s,10) + 1;
                                    ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3856:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            elt->rfc822_size = strtoul (t,(char **) &t,10);
                                        ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3887:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (strcmp (s,"COPY")) {
                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3894:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"FLAGS") && reply->text &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3896:20: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (s = strtok_r (reply->text+1," )",&r)))
                          ^~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3896:20: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (s = strtok_r (reply->text+1," )",&r)))
                          ^~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3896:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (s = strtok_r (reply->text+1," )",&r)))
              ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3899:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             compare_cstring (s,stream->user_flags[i]); i++);
                                ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3905:74: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!stream->user_flags[i]) stream->user_flags[i++] = cpystr (s);
                                                                         ^
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imap4r1.c:3907:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while (s = strtok_r (NIL," )",&r));
             ^ ~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3907:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (s = strtok_r (NIL," )",&r));
           ~~^~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3907:14: note: place parentheses around the assignment to silence this warning
    while (s = strtok_r (NIL," )",&r));
             ^
           (                         )
imap4r1.c:3907:14: note: use '==' to turn this assignment into an equality comparison
    while (s = strtok_r (NIL," )",&r));
             ^
             ==
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3908:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SEARCH")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3910:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) do
                                      ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3910:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) do
                                      ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3910:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) do
                          ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3911:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (i = strtoul (t,NIL,10)) {
                       ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3911:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (i = strtoul (t,NIL,10)) {
          ~~^~~~~~~~~~~~~~~~~~~~
imap4r1.c:3911:13: note: place parentheses around the assignment to silence this warning
      if (i = strtoul (t,NIL,10)) {
            ^
          (                     )
imap4r1.c:3911:13: note: use '==' to turn this assignment into an equality comparison
      if (i = strtoul (t,NIL,10)) {
            ^
            ==
imap4r1.c:3920:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      } while (t = strtok_r (NIL," ",&r));
                 ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3920:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      } while (t = strtok_r (NIL," ",&r));
               ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3920:18: note: place parentheses around the assignment to silence this warning
      } while (t = strtok_r (NIL," ",&r));
                 ^
               (                        )
imap4r1.c:3920:18: note: use '==' to turn this assignment into an equality comparison
      } while (t = strtok_r (NIL," ",&r));
                 ^
                 ==
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3922:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"SORT")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3930:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) {
                                      ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:3930:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) {
                                      ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:3930:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (reply->text && (t = strtok_r (reply->text," ",&r))) {
                          ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3931:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      do if ((i = atol (t)) && (LOCAL->filter ?
                        ^
/usr/include/stdlib.h:283:26: note: passing argument to parameter '__nptr' here
__NTH (atol (const char *__nptr))
                         ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imap4r1.c:3934:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while ((t = strtok_r (NIL," ",&r)) && (LOCAL->sortsize < stream->nmsgs));
                ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3940:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"THREAD")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3944:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = reply->text) {
        ~~^~~~~~~~~~~~~
imap4r1.c:3944:11: note: place parentheses around the assignment to silence this warning
    if (s = reply->text) {
          ^
        (              )
imap4r1.c:3944:11: note: use '==' to turn this assignment into an equality comparison
    if (s = reply->text) {
          ^
          ==
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:3955:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"STATUS") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:3959:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) &&
                                                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imap4r1.c:3959:43: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (*txt++ == ' ') && (*txt++ == '(') && (s = strchr (txt,')')) &&
                                                 ^ ~~~~~~~~~~~~~~~~
imap4r1.c:3965:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while (*txt && (s = strchr (txt,' '))) {
                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imap4r1.c:3965:25: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while (*txt && (s = strchr (txt,' '))) {
                        ^ ~~~~~~~~~~~~~~~~
imap4r1.c:3968:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        i = strtoul (s,(char **) &s,10);
                     ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:3969:28: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (txt,"MESSAGES")) {
                                  ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3973:33: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (txt,"RECENT")) {
                                       ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3977:33: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (txt,"UNSEEN")) {
                                       ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3981:33: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (txt,"UIDNEXT")) {
                                       ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3985:33: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (txt,"UIDVALIDITY")) {
                                       ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:3994:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        strcpy (strncpy (LOCAL->tmp,stream->mailbox,i) + i,t);
                                                           ^
/usr/include/x86_64-linux-gnu/bits/string3.h:102:64: note: passing argument to parameter '__src' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                                               ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4002:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                     ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4002:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((!strcmp (reply->key,"LIST") || !strcmp (reply->key,"LSUB")) &&
                                                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4004:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (s = strchr (reply->text,')')) && (s[1] == ' ')) {
                        ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imap4r1.c:4004:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           (s = strchr (reply->text,')')) && (s[1] == ' ')) {
              ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (t = strtok_r (reply->text+1," ",&r)) do {
                      ^~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1143:22: note: expanded from macro '__strtok_r'
                  ? __strtok_r_1c (s, ((const char *) (sep))[0], nextp)       \
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1149:22: note: passing argument to parameter '__s' here
__strtok_r_1c (char *__s, char __sep, char **__nextp)
                     ^
imap4r1.c:4008:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (t = strtok_r (reply->text+1," ",&r)) do {
                      ^~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1171:47: note: expanded from macro 'strtok_r'
#  define strtok_r(s, sep, nextp) __strtok_r (s, sep, nextp)
                                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1144:19: note: expanded from macro '__strtok_r'
                  : __strtok_r (s, sep, nextp)))
                                ^
/usr/include/string.h:350:43: note: passing argument to parameter '__s' here
extern char *__strtok_r (char *__restrict __s,
                                          ^
imap4r1.c:4008:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (t = strtok_r (reply->text+1," ",&r)) do {
          ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = strtok_r (reply->text+1," ",&r)) do {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4008:11: note: place parentheses around the assignment to silence this warning
    if (t = strtok_r (reply->text+1," ",&r)) do {
          ^
        (                                  )
imap4r1.c:4008:11: note: use '==' to turn this assignment into an equality comparison
    if (t = strtok_r (reply->text+1," ",&r)) do {
          ^
          ==
imap4r1.c:4009:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"\\NoInferiors")) i |= LATT_NOINFERIORS;
                              ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4010:36: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"\\NoSelect")) i |= LATT_NOSELECT;
                                   ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4011:36: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"\\Marked")) i |= LATT_MARKED;
                                   ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"\\Unmarked")) i |= LATT_UNMARKED;
                                   ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4013:36: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"\\HasChildren")) i |= LATT_HASCHILDREN;
                                   ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4014:36: warning: passing 'char [15]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"\\HasNoChildren")) i |= LATT_HASNOCHILDREN;
                                   ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4017:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while (t = strtok_r (NIL," ",&r));
             ^ ~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4017:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (t = strtok_r (NIL," ",&r));
           ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4017:14: note: place parentheses around the assignment to silence this warning
    while (t = strtok_r (NIL," ",&r));
             ^
           (                        )
imap4r1.c:4017:14: note: use '==' to turn this assignment into an equality comparison
    while (t = strtok_r (NIL," ",&r));
             ^
             ==
imap4r1.c:4028:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = imap_parse_astring (stream,&s,reply,&j)) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4028:11: note: place parentheses around the assignment to silence this warning
    if (t = imap_parse_astring (stream,&s,reply,&j)) {
          ^
        (                                          )
imap4r1.c:4028:11: note: use '==' to turn this assignment into an equality comparison
    if (t = imap_parse_astring (stream,&s,reply,&j)) {
          ^
          ==
imap4r1.c:4031:13: warning: assigning to 'unsigned char *' from 'char [16384]' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t);
        ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imap4r1.c:4031:13: warning: assigning to 'unsigned char *' from 'char [16384]' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t);
                   ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
imap4r1.c:4031:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (s = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) t);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imap4r1.c:4034:59: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (reply->key[1] == 'S') mm_lsub (stream,delimiter,s,i);
                                                          ^
./mail.h:1597:54: note: passing argument to parameter 'name' here
void mm_lsub (MAILSTREAM *stream,int delimiter,char *name,long attributes);
                                                     ^
imap4r1.c:4035:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else mm_list (stream,delimiter,s,i);
                                     ^
./mail.h:1596:54: note: passing argument to parameter 'name' here
void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes);
                                                     ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4039:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NAMESPACE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4046:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = reply->text) {      /* parse namespace results */
        ~~^~~~~~~~~~~~~
imap4r1.c:4046:11: note: place parentheses around the assignment to silence this warning
    if (s = reply->text) {      /* parse namespace results */
          ^
        (              )
imap4r1.c:4046:11: note: use '==' to turn this assignment into an equality comparison
    if (s = reply->text) {      /* parse namespace results */
          ^
          ==
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4062:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"ACL") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4068:30: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      do if ((ac->identifier = imap_parse_astring (stream,&s,reply,NIL)) &&
                             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4070:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ac->rights = imap_parse_astring (stream,&s,reply,NIL);
                   ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4079:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (ar) (*ar) (stream,t,al);
                                 ^
imap4r1.c:4083:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (ar) (*ar) (stream,t,NIL);
                               ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4087:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"LISTRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4091:35: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s && (*s++ == ' ') && (id = imap_parse_astring (stream,&s,reply,NIL))){
                                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4093:7: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          (r = imap_parse_astring (stream,&s,reply,NIL))) {
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4107:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (lr) (*lr) (stream,t,id,r,rl);
                                     ^
imap4r1.c:4112:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (lr) (*lr) (stream,t,id,r,NIL);
                                   ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4130:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MYRIGHTS") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4134:34: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s && (*s++ == ' ') && (r = imap_parse_astring (stream,&s,reply,NIL))) {
                                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4140:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (mr) (*mr) (stream,t,r);
                                 ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4152:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTA") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4163:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((qc->name = imap_parse_astring (stream,&s,reply,NIL)) && s &&
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4165:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (isdigit (*s)) qc->usage = strtoul (s,(char **) &s,10);
                                                 ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:4166:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (t = strchr (s,' ')) t = s;
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imap4r1.c:4166:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (t = strchr (s,' ')) t = s;
                     ^ ~~~~~~~~~~~~~~
imap4r1.c:4166:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          else if (t = strchr (s,' ')) t = s;
                   ~~^~~~~~~~~~~~~~~~
imap4r1.c:4166:15: note: place parentheses around the assignment to silence this warning
          else if (t = strchr (s,' ')) t = s;
                     ^
                   (                 )
imap4r1.c:4166:15: note: use '==' to turn this assignment into an equality comparison
          else if (t = strchr (s,' ')) t = s;
                     ^
                     ==
imap4r1.c:4168:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (isdigit (*s)) qc->limit = strtoul (s,(char **) &s,10);
                                                   ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
imap4r1.c:4169:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
imap4r1.c:4169:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (t = strpbrk (s," )")) t = s;
                       ^ ~~~~~~~~~~~~~~~~
imap4r1.c:4169:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            else if (t = strpbrk (s," )")) t = s;
                     ~~^~~~~~~~~~~~~~~~~~
imap4r1.c:4169:17: note: place parentheses around the assignment to silence this warning
            else if (t = strpbrk (s," )")) t = s;
                       ^
                     (                   )
imap4r1.c:4169:17: note: use '==' to turn this assignment into an equality comparison
            else if (t = strpbrk (s," )")) t = s;
                       ^
                       ==
imap4r1.c:4174:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (qt) (*qt) (stream,t,ql);
                                    ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4193:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"QUOTAROOT") && (s = reply->text) &&
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4208:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (qr) (*qr) (stream,t,rl);
                                 ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4219:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4219:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"OK") || !strcmp (reply->key,"PREAUTH"))
                                                 ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4220:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,NIL,T);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
                                                   ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4221:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"NO"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4222:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,WARN,T);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4223:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BAD"))
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4224:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,ERROR,T);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4225:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"BYE")) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4227:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_response (stream,reply->text,BYE,T);
                                ^~~~~~~~~~~
imap4r1.c:229:52: note: passing argument to parameter 'text' here
void imap_parse_response (MAILSTREAM *stream,char *text,long errflg,long ntfy);
                                                   ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4229:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"CAPABILITY") && reply->text)
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4230:37: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    imap_parse_capabilities (stream,reply->text);
                                    ^~~~~~~~~~~
imap4r1.c:264:56: note: passing argument to parameter 't' here
void imap_parse_capabilities (MAILSTREAM *stream,char *t);
                                                       ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imap4r1.c:4231:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!strcmp (reply->key,"MAILBOX") && reply->text) {
                    ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imap4r1.c:4233:37: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ((strlen (LOCAL->prefix) + strlen (reply->text)) < IMAPTMPLEN))
                                           ^~~~~~~~~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imap4r1.c:4234:18: warning: assigning to 'unsigned char *' from 'char [16384]' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text);
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imap4r1.c:4234:18: warning: assigning to 'unsigned char *' from 'char [16384]' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
imap4r1.c:4234:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (t = LOCAL->tmp,"%s%s",LOCAL->prefix,(char *) reply->text);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imap4r1.c:4236:25: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mm_list (stream,NIL,t,NIL);
                        ^
./mail.h:1596:54: note: passing argument to parameter 'name' here
void mm_list (MAILSTREAM *stream,int delimiter,char *name,long attributes);
                                                     ^
imap4r1.c:4266:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4266:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
          ^
        (                                            )
imap4r1.c:4266:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (strncpy (t = LOCAL->tmp,s,i),' ')) *s++ = '\0';
          ^
          ==
imap4r1.c:4269:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"UIDVALIDITY") &&
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4269:31: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"UIDVALIDITY") &&
                              ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4275:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4275:12: note: place parentheses around the assignment to silence this warning
          if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
                  ^
              (                                             )
imap4r1.c:4275:12: note: use '==' to turn this assignment into an equality comparison
          if (elt = (MESSAGECACHE *) (*mc) (stream,j,CH_ELT))
                  ^
                  ==
imap4r1.c:4278:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"UIDNEXT"))
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4278:36: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"UIDNEXT"))
                                   ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4280:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') &&
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4280:36: warning: passing 'char [15]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"PERMANENTFLAGS") && (*s == '(') &&
                                   ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4286:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strtok_r (s+1," ",&r)) do {
            ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4286:8: note: place parentheses around the assignment to silence this warning
        if (s = strtok_r (s+1," ",&r)) do {
              ^
            (                        )
imap4r1.c:4286:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strtok_r (s+1," ",&r)) do {
              ^
              ==
imap4r1.c:4288:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T;
                                  ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4288:30: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"\\Seen")) stream->perm_seen = T;
                                    ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4289:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Deleted"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4289:35: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Deleted"))
                                         ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4291:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Flagged"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4291:35: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Flagged"))
                                         ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4293:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Answered"))
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4293:35: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Answered"))
                                         ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4295:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T;
                                       ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4295:35: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"\\Draft")) stream->perm_draft = T;
                                         ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4300:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        while (s = strtok_r (NIL," ",&r));
               ~~^~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4300:11: note: place parentheses around the assignment to silence this warning
        while (s = strtok_r (NIL," ",&r));
                 ^
               (                        )
imap4r1.c:4300:11: note: use '==' to turn this assignment into an equality comparison
        while (s = strtok_r (NIL," ",&r));
                 ^
                 ==
imap4r1.c:4303:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"CAPABILITY"))
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4303:36: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"CAPABILITY"))
                                   ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4306:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
               !compare_cstring (t,"COPYUID") &&
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4306:29: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
               !compare_cstring (t,"COPYUID") &&
                                   ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4312:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (j && !compare_cstring (t,"APPENDUID") &&
                                      ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4312:41: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (j && !compare_cstring (t,"APPENDUID") &&
                                        ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4319:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (t,"REFERRAL"))
                              ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4319:26: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!compare_cstring (t,"REFERRAL"))
                                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4326:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"UIDNOTSTICKY")) {
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4326:31: warning: passing 'char [13]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"UIDNOTSTICKY")) {
                              ^~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4330:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T;
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4330:36: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"READ-ONLY")) stream->rdonly = T;
                                   ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4331:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"READ-WRITE"))
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4331:36: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"READ-WRITE"))
                                   ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"PARSE") && !errflg)
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4333:36: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"PARSE") && !errflg)
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4375:12: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        nam->name = imap_parse_string (stream,txtptr,reply,NIL,NIL,NIL);
                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4400:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(par->attribute = imap_parse_string (stream,txtptr,reply,NIL,
                               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4412:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,
                               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4485:29: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (isdigit (*(s = *txtptr)) &&
                            ^ ~~~~~~~
/usr/include/ctype.h:200:32: note: expanded from macro 'isdigit'
# define isdigit(c)     __isctype((c), _ISdigit)
                                   ^
/usr/include/ctype.h:89:31: note: expanded from macro '__isctype'
  ((*__ctype_b_loc ())[(int) (c)] & (unsigned short int) type)
                              ^
imap4r1.c:4487:12: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strtoul (*txtptr,(char **) txtptr,10))) {
                         ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:4572:21: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (*env)->subject = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                    ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4579:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (*env)->in_reply_to = imap_parse_string (stream,txtptr,reply,NIL,NIL,
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4581:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (*env)->message_id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4679:21: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      adr->personal = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                    ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4680:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      adr->adl = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4681:20: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      adr->mailbox = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                   ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4682:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      adr->host = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4779:19: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while (*(flag = ++*txtptr) == ' ');
                  ^ ~~~~~~~~~
imap4r1.c:4787:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (flag,"\\Seen")) elt->seen = T;
                            ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4787:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (flag,"\\Seen")) elt->seen = T;
                                 ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4788:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T;
                                 ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4788:39: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Deleted")) elt->deleted = T;
                                      ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4789:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T;
                                 ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4789:39: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Flagged")) elt->flagged = T;
                                      ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Answered")) elt->answered = T;
                                 ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4790:39: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Answered")) elt->answered = T;
                                      ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Recent")) elt->recent = T;
                                 ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4791:39: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Recent")) elt->recent = T;
                                      ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Draft")) elt->draft = T;
                                 ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4792:39: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (flag,"\\Draft")) elt->draft = T;
                                      ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4816:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i);
                          ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:4816:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (flag,stream->user_flags[i])) return (1 << i);
                               ^~~~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:4847:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = *txtptr - s) {      /* atom ends at atom_special */
        ~~^~~~~~~~~~~~~
imap4r1.c:4847:11: note: place parentheses around the assignment to silence this warning
    if (i = *txtptr - s) {      /* atom ends at atom_special */
          ^
        (              )
imap4r1.c:4847:11: note: use '==' to turn this assignment into an equality comparison
    if (i = *txtptr - s) {      /* atom ends at atom_special */
          ^
          ==
imap4r1.c:4849:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = strncpy ((char *) fs_get (i + 1),s,i);
                                             ^
/usr/include/x86_64-linux-gnu/bits/string3.h:117:65: note: passing argument to parameter '__src' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imap4r1.c:4849:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = strncpy ((char *) fs_get (i + 1),s,i);
          ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4890:6: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  st = ++*txtptr;               /* remember start of string */
     ^ ~~~~~~~~~
imap4r1.c:4939:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((i = strtoul (*txtptr,(char **) txtptr,10)) > MAXSERVERLIT) {
                      ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:4960:29: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4960:29: note: place parentheses around the assignment to silence this warning
      if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
                            ^
                          (                                   )
imap4r1.c:4960:29: note: use '==' to turn this assignment into an equality comparison
      if (rp) for (k = 0; j = min ((long) MAILTMPLEN,(long) i); i -= j) {
                            ^
                            ==
imap4r1.c:4968:28: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
                        ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4968:28: note: place parentheses around the assignment to silence this warning
      for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
                           ^
                        (                               )
imap4r1.c:4968:28: note: use '==' to turn this assignment into an equality comparison
      for (st = string; st = strpbrk (st,"\015\012\011"); *st++ = ' ');
                           ^
                           ==
imap4r1.c:4970:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(reply->line = net_getline (LOCAL->netstream)))
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:4971:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      reply->line = cpystr ("");
                  ^ ~~~~~~~~~~~
imap4r1.c:4972:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (stream->debug) mm_dlog (reply->line);
                                ^~~~~~~~~~~
./mail.h:1600:21: note: passing argument to parameter 'string' here
void mm_dlog (char *string);
                    ^
imap4r1.c:5040:39: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(b = mail_body (stream,msgno,seg))) {
                                      ^~~
./mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
imap4r1.c:5117:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5117:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
          ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5117:25: note: place parentheses around the assignment to silence this warning
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^
          (                                                                   )
imap4r1.c:5117:25: note: use '==' to turn this assignment into an equality comparison
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^
                        ==
imap4r1.c:5118:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ucase (body->subtype);
               ^~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:5136:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5157:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5157:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5157:13: note: place parentheses around the assignment to silence this warning
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^
          (                                                        )
imap4r1.c:5157:13: note: use '==' to turn this assignment into an equality comparison
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^
            ==
imap4r1.c:5158:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ucase (s);              /* application always gets uppercase form */
               ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:5167:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5167:25: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
          ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5167:25: note: place parentheses around the assignment to silence this warning
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^
          (                                                                   )
imap4r1.c:5167:25: note: use '==' to turn this assignment into an equality comparison
      if (body->subtype = imap_parse_string(stream,txtptr,reply,NIL,NIL,LONGT))
                        ^
                        ==
imap4r1.c:5168:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ucase (body->subtype);  /* parse subtype */
               ^~~~~~~~~~~~~
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:5175:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      body->id = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5176:25: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      body->description = imap_parse_string (stream,txtptr,reply,NIL,NIL,
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5178:13: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5178:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5178:13: note: place parentheses around the assignment to silence this warning
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^
          (                                                        )
imap4r1.c:5178:13: note: use '==' to turn this assignment into an equality comparison
      if (s = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT)) {
            ^
            ==
imap4r1.c:5179:9: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        ucase (s);              /* application always gets uppercase form */
               ^
./misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imap4r1.c:5192:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      body->size.bytes = strtoul (*txtptr,(char **) txtptr,10);
                                  ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:5212:30: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        body->size.lines = strtoul (*txtptr,(char **) txtptr,10);
                                    ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:5219:12: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        body->md5 = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5232:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        body->location = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT);
                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5280:24: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if(!(par->attribute=imap_parse_string (stream,txtptr,reply,NIL,NIL,
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5286:22: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(par->value = imap_parse_string (stream,txtptr,reply,NIL,NIL,LONGT))){
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5308:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           ((*(s = *txtptr) == 'I') || (*s == 'i')) &&
                 ^ ~~~~~~~
imap4r1.c:5332:28: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    body->disposition.type = imap_parse_string (stream,txtptr,reply,NIL,NIL,
                           ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5375:14: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5375:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5375:14: note: place parentheses around the assignment to silence this warning
  else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
             ^
           (                                                       )
imap4r1.c:5375:14: note: use '==' to turn this assignment into an equality comparison
  else if (s = imap_parse_string (stream,txtptr,reply,NIL,&i,LONGT)) {
             ^
             ==
imap4r1.c:5443:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (i = strtoul (*txtptr,(char **) txtptr,10)) do
                     ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:5443:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = strtoul (*txtptr,(char **) txtptr,10)) do
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5443:11: note: place parentheses around the assignment to silence this warning
    if (i = strtoul (*txtptr,(char **) txtptr,10)) do
          ^
        (                                        )
imap4r1.c:5443:11: note: use '==' to turn this assignment into an equality comparison
    if (i = strtoul (*txtptr,(char **) txtptr,10)) do
          ^
          ==
imap4r1.c:5448:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(reply->line = net_getline (LOCAL->netstream)))
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5449:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      reply->line = cpystr ("");
                  ^ ~~~~~~~~~~~
imap4r1.c:5450:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (stream->debug) mm_dlog (reply->line);
                                ^~~~~~~~~~~
./mail.h:1600:21: note: passing argument to parameter 'string' here
void mm_dlog (char *string);
                    ^
imap4r1.c:5455:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    strtoul (*txtptr,(char **) txtptr,10);
             ^~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imap4r1.c:5479:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (th = thr) {
        ~~~~^~~~~~~~~~~~~~~~~~~~~
imap4r1.c:5479:13: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (th = thr) {
            ^
        (                        )
imap4r1.c:5479:13: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (th = thr) {
            ^
            ==
imap4r1.c:5479:46: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (thr = LOCAL->cap.threader) while (th = thr) {
                                          ~~~^~~~~
imap4r1.c:5479:46: note: place parentheses around the assignment to silence this warning
    if (thr = LOCAL->cap.threader) while (th = thr) {
                                             ^
                                          (       )
imap4r1.c:5479:46: note: use '==' to turn this assignment into an equality comparison
    if (thr = LOCAL->cap.threader) while (th = thr) {
                                             ^
                                             ==
imap4r1.c:5489:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"IMAP4"))
                          ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5489:29: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"IMAP4"))
                            ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5491:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP4rev1"))
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5491:34: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP4rev1"))
                                 ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5493:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5493:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP2")) LOCAL->cap.rfc1176 = T;
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5494:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP2bis"))
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5494:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMAP2bis"))
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5496:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5496:34: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ACL")) LOCAL->cap.acl = T;
                                 ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5497:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5497:34: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"QUOTA")) LOCAL->cap.quota = T;
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5498:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5498:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LITERAL+")) LOCAL->cap.litplus = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5499:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5499:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IDLE")) LOCAL->cap.idle = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5500:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5500:34: warning: passing 'char [18]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MAILBOX-REFERRALS")) LOCAL->cap.mbx_ref = T;
                                 ^~~~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5501:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5501:34: warning: passing 'char [16]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGIN-REFERRALS")) LOCAL->cap.log_ref = T;
                                 ^~~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5502:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5502:34: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"NAMESPACE")) LOCAL->cap.namespace = T;
                                 ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5503:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5503:34: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UIDPLUS")) LOCAL->cap.uidplus = T;
                                 ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5504:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5504:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"STARTTLS")) LOCAL->cap.starttls = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5505:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5505:34: warning: passing 'char [14]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGINDISABLED"))LOCAL->cap.logindisabled = T;
                                 ^~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5506:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5506:34: warning: passing 'char [3]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ID")) LOCAL->cap.id = T;
                                 ^~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5507:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5507:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CHILDREN")) LOCAL->cap.children = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5508:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5508:34: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"MULTIAPPEND")) LOCAL->cap.multiappend = T;
                                 ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5509:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5509:34: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"BINARY")) LOCAL->cap.binary = T;
                                 ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5510:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5510:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UNSELECT")) LOCAL->cap.unselect = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5511:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5511:34: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SASL-IR")) LOCAL->cap.sasl_ir = T;
                                 ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5512:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5512:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SCAN")) LOCAL->cap.scan = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5513:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5513:34: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"URLAUTH")) LOCAL->cap.urlauth = T;
                                 ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5514:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5514:34: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CATENATE")) LOCAL->cap.catenate = T;
                                 ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5515:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5515:34: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"CONDSTORE")) LOCAL->cap.condstore = T;
                                 ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5516:34: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"ESEARCH")) LOCAL->cap.esearch = T;
                                 ^~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5522:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (s = strchr (t,'=')) {
             ~~^~~~~~~~~~~~~~~~
imap4r1.c:5522:16: note: place parentheses around the assignment to silence this warning
    else if (s = strchr (t,'=')) {
               ^
             (                 )
imap4r1.c:5522:16: note: use '==' to turn this assignment into an equality comparison
    else if (s = strchr (t,'=')) {
               ^
               ==
imap4r1.c:5524:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"THREAD") && !LOCAL->loser) {
                            ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5524:31: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!compare_cstring (t,"THREAD") && !LOCAL->loser) {
                              ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5531:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"AUTH")) {
                                 ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5531:36: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!compare_cstring (t,"AUTH")) {
                                   ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5534:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T;
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
imap4r1.c:5534:31: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!compare_cstring (s,"ANONYMOUS")) LOCAL->cap.authanon = T;
                                     ^~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imap4r1.c:5611:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
                     ~~^~~~~~~~~~~~~~~~~~
imap4r1.c:5611:24: note: place parentheses around the assignment to silence this warning
  for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
                       ^
                     (                   )
imap4r1.c:5611:24: note: use '==' to turn this assignment into an equality comparison
  for (s = sequence; t = strpbrk (s,",:"); ) switch (*t++) {
                       ^
                       ==
719 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` pop3.c
pop3.c:180:22: warning: passing 'char [256]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL;
                            ^~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:180:33: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          !compare_cstring (mb.mailbox,"INBOX")) ? &pop3driver : NIL;
                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:232:36: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (pop3_valid (ref) && pmatch ("INBOX",pat)) :
                                   ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
pop3.c:232:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (pop3_valid (ref) && pmatch ("INBOX",pat)) :
                                           ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
pop3.c:233:60: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)))
                                                           ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
pop3.c:233:68: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)))
                                                                   ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
pop3.c:248:37: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (pop3_valid (ref) && pmatch ("INBOX",pat)) {
                                    ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
pop3.c:248:45: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (pop3_valid (ref) && pmatch ("INBOX",pat)) {
                                            ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
pop3.c:253:64: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) {
                                                               ^~~~~~~
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
pop3.c:253:72: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (mail_valid_net (pat,&pop3driver,NIL,tmp) && pmatch ("INBOX",tmp)) {
                                                                       ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
pop3.c:279:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
      ~~^~~~~~~~~~~~~~~~
pop3.c:279:9: note: place parentheses around the assignment to silence this warning
  if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
        ^
      (                 )
pop3.c:279:9: note: use '==' to turn this assignment into an equality comparison
  if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
        ^
        ==
pop3.c:279:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
                                                           ^
./misc.h:82:16: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
               ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
pop3.c:279:62: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = sm_read (&sdb)) do if (pop3_valid (s) && pmatch (s,mbx))
                                                             ^~~
./misc.h:82:18: note: expanded from macro 'pmatch'
  pmatch_full (s,pat,NIL)
                 ^
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
pop3.c:281:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (s = sm_read (&sdb));   /* until no more subscriptions */
         ~~^~~~~~~~~~~~~~~~
pop3.c:281:12: note: place parentheses around the assignment to silence this warning
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
         (                 )
pop3.c:281:12: note: use '==' to turn this assignment into an equality comparison
  while (s = sm_read (&sdb));   /* until no more subscriptions */
           ^
           ==
pop3.c:429:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
          ~~~~~~~~~~~~~^~~~~~~~~~
pop3.c:429:24: note: place parentheses around the assignment to silence this warning
      if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
                       ^
          (                      )
pop3.c:429:24: note: use '==' to turn this assignment into an equality comparison
      if (LOCAL->loser = mb.loser) strcat (tmp,"/loser");
                       ^
                       ==
pop3.c:499:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (args = strchr (t,' ')) *args++ = '\0';
        ~~~~~^~~~~~~~~~~~~~~~
pop3.c:499:14: note: place parentheses around the assignment to silence this warning
    if (args = strchr (t,' ')) *args++ = '\0';
             ^
        (                    )
pop3.c:499:14: note: use '==' to turn this assignment into an equality comparison
    if (args = strchr (t,' ')) *args++ = '\0';
             ^
             ==
pop3.c:500:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T;
                          ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:500:29: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (t,"STLS")) LOCAL->cap.stls = T;
                            ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:501:34: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"PIPELINING")) LOCAL->cap.pipelining = T;
                                 ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:502:34: warning: passing 'char [11]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"RESP-CODES")) LOCAL->cap.respcodes = T;
                                 ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:503:34: warning: passing 'char [4]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"TOP")) LOCAL->cap.top = T;
                                 ^~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:504:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"UIDL")) LOCAL->cap.uidl = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:505:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T;
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:505:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"USER")) LOCAL->cap.user = T;
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMPLEMENTATION") && args)
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:506:34: warning: passing 'char [15]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"IMPLEMENTATION") && args)
                                 ^~~~~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:508:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"EXPIRE") && args) {
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:508:34: warning: passing 'char [7]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"EXPIRE") && args) {
                                 ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:510:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr(args,' ')){/* separate time from possible USER */
          ~~^~~~~~~~~~~~~~~~~~
pop3.c:510:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr(args,' ')){/* separate time from possible USER */
            ^
          (                   )
pop3.c:510:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr(args,' ')){/* separate time from possible USER */
            ^
            ==
pop3.c:516:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (!compare_cstring (args,"NEVER")) ? 65535 :
                           ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:516:26: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        (!compare_cstring (args,"NEVER")) ? 65535 :
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:517:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args));
                                   ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:517:31: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          ((s && !compare_cstring (s,"USER")) ? -atoi (args) : atoi (args));
                                     ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:519:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGIN-DELAY") && args) {
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:519:34: warning: passing 'char [12]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"LOGIN-DELAY") && args) {
                                 ^~~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:521:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr(args,' ')){/* separate time from possible USER */
          ~~^~~~~~~~~~~~~~~~~~
pop3.c:521:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr(args,' ')){/* separate time from possible USER */
            ^
          (                   )
pop3.c:521:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr(args,' ')){/* separate time from possible USER */
            ^
            ==
pop3.c:527:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ?
                                                     ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:527:56: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->cap.delaysecs = (s && !compare_cstring (s,"USER")) ?
                                                       ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:530:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SASL") && args)
                               ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
pop3.c:530:34: warning: passing 'char [5]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!compare_cstring (t,"SASL") && args)
                                 ^~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
pop3.c:784:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
pop3.c:785:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_sequence (stream,sequence)))
                                                ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
pop3.c:843:48: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
pop3.c:843:48: note: place parentheses around the assignment to silence this warning
    else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
                                               ^
             (                                                          )
pop3.c:843:48: note: use '==' to turn this assignment into an equality comparison
    else if (elt->private.msg.header.text.size = pop3_cache (stream,elt))
                                               ^
                                               ==
pop3.c:848:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      fread (elt->private.msg.header.text.data = (unsigned char *)
      ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pop3.c:948:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        mail_uid_sequence (stream,sequence) :
                                                  ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
pop3.c:949:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        mail_sequence (stream,sequence)) :
                                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
pop3.c:947:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (ret = sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pop3.c:947:11: note: place parentheses around the assignment to silence this warning
  if (ret = sequence ? ((options & EX_UID) ?
          ^
pop3.c:947:11: note: use '==' to turn this assignment into an equality comparison
  if (ret = sequence ? ((options & EX_UID) ?
          ^
          ==
51 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` unix.c
unix.c:231:2: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
        utime (file,tp);        /* set the times */
        ^
unix.c:405:11: warning: data argument not used by format string [-Wformat-extra-args]
             old,newname);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
unix.c:418:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strrchr (s,'/')) {
            ~~^~~~~~~~~~~~~~~~~
unix.c:418:8: note: place parentheses around the assignment to silence this warning
        if (s = strrchr (s,'/')) {
              ^
            (                  )
unix.c:418:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strrchr (s,'/')) {
              ^
              ==
unix.c:468:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  LOCAL->buf = (char *) fs_get (CHUNKSIZE);
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:519:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      ftruncate (fd,i);         /* make sure tied off */
      ^~~~~~~~~  ~~~~
unix.c:530:5: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
    flock (LOCAL->ld,LOCK_UN);  /* release the lock */
    ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
unix.c:626:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:630:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,elt->private.msg.header.text.size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:640:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    read (LOCAL->fd,s = (char *) fs_get (elt->private.msg.header.text.size+1),
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:640:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    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 with different sign [-Wpointer-sign]
  *length = mail_filter (LOCAL->buf,*length,unix_hlines,FT_NOT);
                         ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1700:34: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:707:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,elt->private.msg.text.text.size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:731:13: warning: assigning to 'char *' from 'unsigned char [65536]' converts between pointers to integer types with different sign [-Wpointer-sign]
    d.chunk = tmp;              /* initial buffer chunk */
            ^ ~~~
unix.c:734:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Mailbox stat failed, aborted: %s",
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:789:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,ERROR);
                  ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
                         mail_uid_sequence (stream,sequence) :
                                                   ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                         mail_sequence (stream,sequence)) : LONGT) &&
                                               ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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]
  if (ret = (sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:845:11: note: place parentheses around the assignment to silence this warning
  if (ret = (sequence ? ((options & EX_UID) ?
          ^
unix.c:845:11: note: use '==' to turn this assignment into an equality comparison
  if (ret = (sequence ? ((options & EX_UID) ?
          ^
          ==
unix.c:852:21: warning: unused variable 'elt' [-Wunused-variable]
      MESSAGECACHE *elt = mail_elt (stream,i);
                    ^
unix.c:860:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:860:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
                          ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
unix.c:902:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                       ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
        mail_sequence (stream,sequence))) return NIL;
                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                           ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:917:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Invalid UNIX-format mailbox name: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:922:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Not a UNIX-format mailbox: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:927:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to write-open mailbox for COPYUID: %.80s",
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:938:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,WARN);
            ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Can't open destination mailbox: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:948:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);/* log the error */
            ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      if (write (fd,LOCAL->buf,elt->private.special.text.size) < 0) ret = NIL;
                    ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
            unix_xstatus (stream,LOCAL->buf,elt,++(tstream->uid_last),LONGT) :
                                 ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:131:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
            unix_xstatus (stream,LOCAL->buf,elt,NIL,NIL);
                                 ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:131:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
                        ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
unix.c:956:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      read (LOCAL->fd,LOCAL->buf,elt->private.special.text.size);
      ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:981:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Message copy failed: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:982:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
unix.c:1007:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!ret) MM_LOG (LOCAL->buf,ERROR);
                    ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    if (compare_cstring (mailbox,"INBOX")) {
                         ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (compare_cstring (mailbox,"INBOX")) {
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    if (!mail_parse_date (&elt,date)) {
                               ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
unix.c:1152:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
unix.c:1037:17: warning: unused variable 'uidlocation' [-Wunused-variable]
  unsigned long uidlocation = 0;
                ^
unix.c:1196:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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]
      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
      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
      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]
      if ((c == '\n')) switch (tmp[0]) {
           ~~^~~~~~~
unix.c:1260:14: note: remove extraneous parentheses around the comparison to silence this warning
      if ((c == '\n')) switch (tmp[0]) {
          ~  ^      ~
unix.c:1260:14: note: use '=' to turn this equality comparison into an assignment
      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 with different sign [-Wpointer-sign]
    sprintf (tmp,"Mailbox open failed, aborted: %s",strerror (errno));
             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1463:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (tmp,ERROR);
            ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (tmp,"Mailbox shrank from %lu to %lu bytes, aborted",
             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1474:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (tmp,ERROR);         /* this is pretty bad */
            ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:1483:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (i = sbuf.st_size - LOCAL->filesize) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:1483:14: note: place parentheses around the assignment to silence this warning
  else if (i = sbuf.st_size - LOCAL->filesize) {
             ^
           (                                 )
unix.c:1483:14: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
    d.chunk = LOCAL->buf;       /* initial buffer chunk */
            ^ ~~~~~~~~~~
unix.c:1495:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
        sprintf (tmp,"Unexpected changes to mailbox (try restarting): %.20s",
                 ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1501:10: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (tmp,ERROR);
                ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
          sprintf (tmp,"Unable to parse internal date: %s",(char *) date);
                   ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1551:12: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (tmp,WARN);
                  ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:1555:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          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 with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
unix.c:1572:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
unix.c:1572:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  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 with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
unix.c:1578:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      if (!compare_csizedtext (stream->user_flags[j],&uf)) {
                                               ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
unix.c:1626:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
unix.c:1626:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      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 with different sign [-Wpointer-sign]
                        strncpy (stream->user_flags[j],s,k);
                                                       ^
/usr/include/x86_64-linux-gnu/bits/string3.h:117:65: note: passing argument to parameter '__src' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
unix.c:1661:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    sprintf (tmp,"Message %lu UID %lu already has UID %lu",
                             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1666:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    sprintf (tmp,"Message %lu UID %lu less than %lu",
                             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:1686:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  MM_LOG (tmp,WARN);
                          ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
              if (!compare_cstring (tmp,"STATUS") ||
                                        ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-STATUS") ||
                                        ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-KEYWORDS") ||
                                        ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-UID") ||
                                        ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-IMAP") ||
                                        ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-IMAPBASE")) {
                                        ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
              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]
              if (u = strpbrk (err,"\r\n")) *u = '\0';
                  ~~^~~~~~~~~~~~~~~~~~~~~~
unix.c:1770:14: note: place parentheses around the assignment to silence this warning
              if (u = strpbrk (err,"\r\n")) *u = '\0';
                    ^
                  (                       )
unix.c:1770:14: note: use '==' to turn this assignment into an equality comparison
              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 with different sign [-Wpointer-sign]
          s = unix_mbxline (stream,&bs,&i);
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2015:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    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
    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
    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]
    if (n = elt->user_flags) do {
        ~~^~~~~~~~~~~~~~~~~
unix.c:2037:11: note: place parentheses around the assignment to silence this warning
    if (n = elt->user_flags) do {
          ^
        (                  )
unix.c:2037:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
  unsigned long size = LOCAL->pseudo ? unix_pseudo (stream,LOCAL->buf) : 0;
                                                           ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
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 with different sign [-Wpointer-sign]
        unix_xstatus (stream,LOCAL->buf,elt,NIL,flag) +
                             ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1989:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
    size = unix_pseudo (stream,LOCAL->buf);
                               ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
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]
  if (ret = unix_extend (stream,size)) {
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2101:11: note: place parentheses around the assignment to silence this warning
  if (ret = unix_extend (stream,size)) {
          ^
      (                              )
unix.c:2101:11: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
      unix_write (&f,LOCAL->buf,unix_pseudo (stream,LOCAL->buf));
                                                    ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1962:53: note: passing argument to parameter 'hdr' here
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 with different sign [-Wpointer-sign]
      unix_write (&f,LOCAL->buf,unix_pseudo (stream,LOCAL->buf));
                     ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:136:36: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
              unix_xstatus (stream,LOCAL->buf,elt,NIL,flag)))) {
                                   ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1989:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          unix_write (&f,LOCAL->buf,elt->private.special.text.size);
                         ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:136:36: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
                      j = unix_xstatus (stream,LOCAL->buf,elt,NIL,flag));
                                               ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:1989:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          unix_write (&f,LOCAL->buf,
                         ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
unix.c:136:36: note: passing argument to parameter 's' here
void unix_write (UNIXFILE *f,char *s,unsigned long i);
                                   ^
unix.c:2139:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          read (LOCAL->fd,LOCAL->buf,elt->private.special.text.size);
          ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2255:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Mailbox open failed, aborted: %s",strerror (errno));
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2256:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:2239:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (LOCAL->fd,LOCAL->filesize = size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2277:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
      if ((write (LOCAL->fd,LOCAL->buf,i) >= 0) && !fsync (LOCAL->fd)) break;
                            ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Unable to extend mailbox: %s",strerror (e));
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2289:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!stream->silent) MM_LOG (LOCAL->buf,ERROR);
                                       ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:2285:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,LOCAL->filesize);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2311:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2311:11: note: place parentheses around the assignment to silence this warning
    if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
          ^
        (                                                     )
unix.c:2311:11: note: use '==' to turn this assignment into an equality comparison
    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]
    if (j = min (i,f->protect - f->filepos)) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2327:11: note: place parentheses around the assignment to silence this warning
    if (j = min (i,f->protect - f->filepos)) {
          ^
        (                                  )
unix.c:2327:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
  if (!compare_cstring (name,"INBOX") && (unix_valid ("mbox") || !errno) &&
                        ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  if (!compare_cstring (name,"INBOX") && (unix_valid ("mbox") || !errno) &&
                             ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) return unix_create (NIL,"mbox");
                        ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  if (!compare_cstring (mailbox,"INBOX")) return unix_create (NIL,"mbox");
                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Mail drop %s is not in standard Unix format",
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2606:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,ERROR);
                ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"New mail move failed: %s",strerror (errno));
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2619:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,WARN);
                  ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:2621:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (LOCAL->fd,LOCAL->filesize);
          ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2625:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Mail drop %s lock failure, old=%lu now=%lu",
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2627:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,ERROR);
                  ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:2629:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (LOCAL->fd,LOCAL->filesize);
          ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:2643:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            sprintf (LOCAL->buf,"Moved %lu bytes of new mail to %s from %s",
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
unix.c:2648:19: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else MM_LOG (LOCAL->buf,WARN);
                         ^~~~~~~~~~
unix.c:81:15: note: expanded from macro 'LOCAL'
#define LOCAL ((UNIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
unix.c:2640:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (sfd,0);    /* truncate sysinbox to zero bytes */
          ^~~~~~~~~  ~~~~~
unix.c:2611:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        read (sfd,s = (char *) fs_get (size + 1),size);
        ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
135 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mbx.c
mbx.c:233:12: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
              if (flock (fd,LOCK_SH) ||
                  ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
mbx.c:303:7: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
      utime (tmp,tp);           /* set the times */
      ^
mbx.c:307:61: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (((error = errno) == ENOENT) && !compare_cstring (name,"INBOX"))
                                                            ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  else if (((error = errno) == ENOENT) && !compare_cstring (name,"INBOX"))
                                                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mbx.c:455:11: warning: data argument not used by format string [-Wformat-extra-args]
             old,newname);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mbx.c:480:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (tmp,'/')) {
        ~~^~~~~~~~~~~~~~~~~~~
mbx.c:480:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (tmp,'/')) {
          ^
        (                    )
mbx.c:480:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strrchr (tmp,'/')) {
          ^
          ==
mbx.c:506:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) mbx_create (NIL,"INBOX");
                               ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) mbx_create (NIL,"INBOX");
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)))
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
    read (LOCAL->fd,s = LOCAL->buf,*length);
                      ^ ~~~~~~~~~~
mbx.c:709:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,s = LOCAL->buf,*length);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:746:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  d.chunk = LOCAL->buf; /* initial buffer chunk */
          ^ ~~~~~~~~~~
mbx.c:825:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      else if (ret = mbx_parse (stream)) {
               ~~~~^~~~~~~~~~~~~~~~~~~~
mbx.c:825:20: note: place parentheses around the assignment to silence this warning
      else if (ret = mbx_parse (stream)) {
                   ^
               (                       )
mbx.c:825:20: note: use '==' to turn this assignment into an equality comparison
      else if (ret = mbx_parse (stream)) {
                   ^
                   ==
mbx.c:829:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (elt = mbx_elt (stream,i,LOCAL->expok)) {
              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:829:12: note: place parentheses around the assignment to silence this warning
          if (elt = mbx_elt (stream,i,LOCAL->expok)) {
                  ^
              (                                    )
mbx.c:829:12: note: use '==' to turn this assignment into an equality comparison
          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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Reclaimed %lu bytes of expunged space",i);
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:857:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,(long) NIL);
                  ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
                        mail_uid_sequence (stream,sequence) :
                                                  ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                        mail_sequence (stream,sequence)) : LONGT) {
                                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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]
  if (ret = sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:888:11: note: place parentheses around the assignment to silence this warning
  if (ret = sequence ? ((options & EX_UID) ?
          ^
mbx.c:888:11: note: use '==' to turn this assignment into an equality comparison
  if (ret = sequence ? ((options & EX_UID) ?
          ^
          ==
mbx.c:895:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (nexp = mbx_rewrite (stream,&reclaimed,sequence ? -1 : 1)) {
             ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:895:19: note: place parentheses around the assignment to silence this warning
    else if (nexp = mbx_rewrite (stream,&reclaimed,sequence ? -1 : 1)) {
                  ^
             (                                                       )
mbx.c:895:19: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Expunged %lu messages",nexp);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:897:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,(long) NIL);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:901:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,(long) NIL);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mbx.c:938:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (j = hdrlen + txtlen) {
            ~~^~~~~~~~~~~~~~~~~
mbx.c:938:8: note: place parentheses around the assignment to silence this warning
        if (j = hdrlen + txtlen) {
              ^
            (                  )
mbx.c:938:8: note: use '==' to turn this assignment into an equality comparison
        if (j = hdrlen + txtlen) {
              ^
              ==
mbx.c:940:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
                     ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1688:24: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:941:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
                                        ^
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:941:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:947:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                                   ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:947:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:964:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,WARN);
                ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mbx.c:965:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,sbuf.st_size);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~
mbx.c:999:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                       ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
        mail_sequence (stream,sequence))) return NIL;
                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1010:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Invalid MBX-format mailbox name: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1015:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Not a MBX-format mailbox: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1020:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      mail_date(LOCAL->buf,elt);/* build target header */
                ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1688:24: note: passing argument to parameter 'string' here
char *mail_date (char *string,MESSAGECACHE *elt);
                       ^
mbx.c:1035:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = stream->user_flags[find_rightmost_bit (&j)])
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1035:8: note: place parentheses around the assignment to silence this warning
        if (s = stream->user_flags[find_rightmost_bit (&j)])
              ^
            (                                              )
mbx.c:1035:8: note: use '==' to turn this assignment into an equality comparison
        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 with different sign [-Wpointer-sign]
            if (!compare_cstring (s,t) && (k |= 1 << m)) break;
                                  ^
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
            if (!compare_cstring (s,t) && (k |= 1 << m)) break;
                                    ^
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf+strlen(LOCAL->buf),",%lu;%08lx%04x-%08lx\015\012",
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:1038:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf+strlen(LOCAL->buf),",%lu;%08lx%04x-%08lx\015\012",
                                 ^
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:1038:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf+strlen(LOCAL->buf),",%lu;%08lx%04x-%08lx\015\012",
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1044:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
                                              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:1044:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
                           ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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]
      if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
          ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1044:15: note: place parentheses around the assignment to silence this warning
      if (ret = (write (fd,LOCAL->buf,strlen (LOCAL->buf)) > 0)) {
              ^
          (                                                    )
mbx.c:1044:15: note: use '==' to turn this assignment into an equality comparison
      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 with different sign [-Wpointer-sign]
          ret = write (fd,LOCAL->buf,j) >= 0;
                          ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mbx.c:1046:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          read (LOCAL->fd,LOCAL->buf,j);
          ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1058:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1059:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mbx.c:1060:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
mbx.c:1065:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"%08lx",dstream->uid_last);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1066:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    write (fd,LOCAL->buf,8);
              ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                           ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
        if (!mail_parse_date (&elt,date)) {
                                   ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mbx.c:1195:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      ftruncate (fd,sbuf.st_size);
      ^~~~~~~~~  ~~~~~~~~~~~~~~~
mbx.c:1274:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->uid_validity = strtoul (LOCAL->buf + 7,NIL,16);
                                  ^~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1277:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  i = strtoul (LOCAL->buf + 15,NIL,16);
               ^~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1281:41: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
       (i < NUSERFLAGS) && (t = strchr (s,'\015')) && (t - s);
                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mbx.c:1281:31: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
       (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 with different sign [-Wpointer-sign]
    if (!stream->user_flags[i] && (strlen (s) <= MAXUSERFLAG))
                                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mbx.c:1285:39: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      stream->user_flags[i] = cpystr (s);
                                      ^
./misc.h:88:27: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    strtoul (LOCAL->buf + HDRSIZE - 8,NIL,16) : 0;
             ^~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1312:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
               ~~~~~~~~^~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mbx.c:1312:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
               ~~~~~~~~^~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mbx.c:1321:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
                                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mbx.c:1321:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!(j = strtoul (s,(char **) &x,10)) && (!(x && *x))) {
                       ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1369:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((m = strtoul (t+13,NIL,16)) &&
                      ^~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1385:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((k = strtoul (t+8,NIL,16)) & fEXPUNGED) {
                      ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1419:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      elt->user_flags = strtoul (t,NIL,16);
                                 ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1269:3: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
  read (LOCAL->fd,LOCAL->buf,HDRSIZE);
  ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1501:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Mailbox shrank from %lu to %lu in flag read!",
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1503:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    fatal (LOCAL->buf);
           ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1510:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1511:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    fatal (LOCAL->buf);
           ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1515:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf+50,"Invalid flags for message %lu (%lu %lu): %s",
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1518:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    fatal (LOCAL->buf+50);
           ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1522:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  i = strtoul (LOCAL->buf+9,NIL,16);
               ^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1531:30: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  elt->user_flags = strtoul (LOCAL->buf+1,NIL,16);
                             ^~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1547:9: warning: initializing 'char *' with an expression of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  char *s = LOCAL->buf;
        ^   ~~~~~~~~~~
mbx.c:1558:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  sprintf (LOCAL->buf + HDRSIZE - 10,"%08lx\015\012",LOCAL->lastpid);
  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1562:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (write (LOCAL->fd,LOCAL->buf + CYGKLUDGEOFFSET,
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Mailbox shrank from %lu to %lu in flag update!",
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1587:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      fatal (LOCAL->buf);
             ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1594:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Unable to read old status: %s",strerror (errno));
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1595:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      fatal (LOCAL->buf);
             ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1599:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf+50,"Invalid flags for message %lu (%lu %lu): %s",
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1602:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      fatal (LOCAL->buf+50);
             ^~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mbx.c:1607:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
               fEXPUNGED : (strtoul (LOCAL->buf+9,NIL,16)) & fEXPUNGED) +
               ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mbx.c:1605:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"%08lx%04x-%08lx",elt->user_flags,(unsigned)
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mbx.c:1615:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (write (LOCAL->fd,LOCAL->buf,21) > 0) break;
                           ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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]
  if (*size = elt->private.msg.header.text.size) return ret;
      ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1644:13: note: place parentheses around the assignment to silence this warning
  if (*size = elt->private.msg.header.text.size) return ret;
            ^
      (                                        )
mbx.c:1644:13: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
        if (hdr) *hdr = LOCAL->buf;
                      ^ ~~~~~~~~~~
mbx.c:1670:16: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (hdr) *hdr = LOCAL->buf;
                      ^ ~~~~~~~~~~
mbx.c:1680:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  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]
      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
      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
      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 with different sign [-Wpointer-sign]
              if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
                                   ^~~~~~~~~~
mbx.c:83:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MBXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mbx.c:1757:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            read (LOCAL->fd,LOCAL->buf,m);
            ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1776:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (m = (LOCAL->filesize -= delta) - pos) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1776:11: note: place parentheses around the assignment to silence this warning
    if (m = (LOCAL->filesize -= delta) - pos) {
          ^
        (                                   )
mbx.c:1776:11: note: use '==' to turn this assignment into an equality comparison
    if (m = (LOCAL->filesize -= delta) - pos) {
          ^
          ==
mbx.c:1781:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (LOCAL->fd,LOCAL->filesize);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
mbx.c:1795:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (elt = mbx_elt (stream,i,T)) {
          ~~~~^~~~~~~~~~~~~~~~~~~~~~
mbx.c:1795:15: note: place parentheses around the assignment to silence this warning
      if (elt = mbx_elt (stream,i,T)) {
              ^
          (                         )
mbx.c:1795:15: note: use '==' to turn this assignment into an equality comparison
      if (elt = mbx_elt (stream,i,T)) {
              ^
              ==
116 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mmdf.c
mmdf.c:382:2: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
        utime (file,tp);        /* set the times */
        ^
mmdf.c:544:11: warning: data argument not used by format string [-Wformat-extra-args]
             old,newname);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mmdf.c:557:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strrchr (s,'/')) {
            ~~^~~~~~~~~~~~~~~~~
mmdf.c:557:8: note: place parentheses around the assignment to silence this warning
        if (s = strrchr (s,'/')) {
              ^
            (                  )
mmdf.c:557:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strrchr (s,'/')) {
              ^
              ==
mmdf.c:607:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  LOCAL->buf = (char *) fs_get (CHUNKSIZE);
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:658:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      ftruncate (fd,i);         /* make sure tied off */
      ^~~~~~~~~  ~~~~
mmdf.c:669:5: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
    flock (LOCAL->ld,LOCK_UN);  /* release the lock */
    ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
mmdf.c:765:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:769:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,elt->private.msg.header.text.size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:779:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    read (LOCAL->fd,s = (char *) fs_get (elt->private.msg.header.text.size+1),
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:779:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    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 with different sign [-Wpointer-sign]
  *length = mail_filter (LOCAL->buf,*length,mmdf_hlines,FT_NOT);
                         ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1700:34: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get ((LOCAL->buflen =
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:846:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,elt->private.msg.text.text.size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:870:13: warning: assigning to 'char *' from 'unsigned char [65536]' converts between pointers to integer types with different sign [-Wpointer-sign]
    d.chunk = tmp;              /* initial buffer chunk */
            ^ ~~~
mmdf.c:873:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Mailbox stat failed, aborted: %s",
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:928:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,ERROR);
                  ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
                         mail_uid_sequence (stream,sequence) :
                                                   ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                         mail_sequence (stream,sequence)) : LONGT) &&
                                               ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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]
  if (ret = (sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:984:11: note: place parentheses around the assignment to silence this warning
  if (ret = (sequence ? ((options & EX_UID) ?
          ^
mmdf.c:984:11: note: use '==' to turn this assignment into an equality comparison
  if (ret = (sequence ? ((options & EX_UID) ?
          ^
          ==
mmdf.c:991:21: warning: unused variable 'elt' [-Wunused-variable]
      MESSAGECACHE *elt = mail_elt (stream,i);
                    ^
mmdf.c:999:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:999:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (i) sprintf (msg = LOCAL->buf,"Expunged %lu messages",i);
                          ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
mmdf.c:1038:56: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                       ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
        mail_sequence (stream,sequence))) return NIL;
                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                           ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
      if (compare_cstring (mailbox,"INBOX")) {
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1052:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Invalid MMDF-format mailbox name: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1057:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Not a MMDF-format mailbox: %.80s",mailbox);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1062:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to write-open mailbox for COPYUID: %.80s",
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1073:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,WARN);
            ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Can't open destination mailbox: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1083:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);  /* log the error */
            ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      if (write (fd,LOCAL->buf,elt->private.special.text.size) < 0) ret = NIL;
                    ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
            mmdf_xstatus (stream,LOCAL->buf,elt,++(tstream->uid_last),LONGT) :
                                 ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:287:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
            mmdf_xstatus (stream,LOCAL->buf,elt,NIL,NIL);
                                 ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:287:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
                        ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mmdf.c:1091:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      read (LOCAL->fd,LOCAL->buf,elt->private.special.text.size);
      ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1117:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Message copy failed: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1118:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
mmdf.c:1143:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!ret) MM_LOG (LOCAL->buf,ERROR);
                    ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    if (compare_cstring (mailbox,"INBOX")) {
                         ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (compare_cstring (mailbox,"INBOX")) {
                                 ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
    if (!mail_parse_date (&elt,date)) {
                               ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mmdf.c:1288:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
mmdf.c:1173:17: warning: unused variable 'uidlocation' [-Wunused-variable]
  unsigned long uidlocation = 0;
                ^
mmdf.c:1332:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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]
      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
      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
      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]
      if ((c == '\n')) switch (tmp[0]) {
           ~~^~~~~~~
mmdf.c:1397:14: note: remove extraneous parentheses around the comparison to silence this warning
      if ((c == '\n')) switch (tmp[0]) {
          ~  ^      ~
mmdf.c:1397:14: note: use '=' to turn this equality comparison into an assignment
      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 with different sign [-Wpointer-sign]
    sprintf (tmp,"Mailbox open failed, aborted: %s",strerror (errno));
             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1592:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (tmp,ERROR);
            ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (tmp,"Mailbox shrank from %lu to %lu bytes, aborted",
             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1603:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (tmp,ERROR);         /* this is pretty bad */
            ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mmdf.c:1612:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (i = sbuf.st_size - LOCAL->filesize) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1612:14: note: place parentheses around the assignment to silence this warning
  else if (i = sbuf.st_size - LOCAL->filesize) {
             ^
           (                                 )
mmdf.c:1612:14: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
    d.chunk = LOCAL->buf;       /* initial buffer chunk */
            ^ ~~~~~~~~~~
mmdf.c:1624:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
          sprintf (tmp,"Unexpected changes to mailbox (try restarting): %.20s",
                   ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1634:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            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 with different sign [-Wpointer-sign]
            MM_LOG (tmp,ERROR);
                    ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mmdf.c:1656:4: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        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 with different sign [-Wpointer-sign]
            sprintf (tmp,"Unable to parse internal date: %s",(char *) date);
                     ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1693:14: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            MM_LOG (tmp,WARN);
                    ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mmdf.c:1710:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          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 with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
mmdf.c:1736:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
mmdf.c:1736:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  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 with different sign [-Wpointer-sign]
                  if (!(u = strpbrk (s," \n\r"))) u = s + strlen (s);
                                                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mmdf.c:1742:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      if (!compare_csizedtext (stream->user_flags[j],&uf)) {
                                               ^~~~~~~~~~~~~~~~~~~~~
./misc.h:110:40: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
mmdf.c:1790:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      u = strpbrk (s," \n\r");
                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
mmdf.c:1790:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      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 with different sign [-Wpointer-sign]
                        strncpy (stream->user_flags[j],s,k);
                                                       ^
/usr/include/x86_64-linux-gnu/bits/string3.h:117:65: note: passing argument to parameter '__src' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
mmdf.c:1825:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    sprintf (tmp,"Message %lu UID %lu already has UID %lu",
                             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1830:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    sprintf (tmp,"Message %lu UID %lu less than %lu",
                             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:1850:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  MM_LOG (tmp,WARN);
                          ^~~
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
              if (!compare_cstring (tmp,"STATUS") ||
                                        ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-STATUS") ||
                                        ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-KEYWORDS") ||
                                        ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-UID") ||
                                        ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-IMAP") ||
                                        ^~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
                  !compare_cstring (tmp,"X-IMAPBASE")) {
                                        ^~~~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
              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]
              if (u = strpbrk (err,"\r\n")) *u = '\0';
                  ~~^~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1934:14: note: place parentheses around the assignment to silence this warning
              if (u = strpbrk (err,"\r\n")) *u = '\0';
                    ^
                  (                       )
mmdf.c:1934:14: note: use '==' to turn this assignment into an equality comparison
              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 with different sign [-Wpointer-sign]
          s = mmdf_mbxline (stream,&bs,&i);
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:1983:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          s = mmdf_mbxline (stream,&bs,&i);
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2178:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    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
    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
    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]
    if (n = elt->user_flags) do {
        ~~^~~~~~~~~~~~~~~~~
mmdf.c:2200:11: note: place parentheses around the assignment to silence this warning
    if (n = elt->user_flags) do {
          ^
        (                  )
mmdf.c:2200:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
  unsigned long size = LOCAL->pseudo ? mmdf_pseudo (stream,LOCAL->buf) : 0;
                                                           ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
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 with different sign [-Wpointer-sign]
        mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag) +
                             ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
    size = mmdf_pseudo (stream,LOCAL->buf);
                               ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
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]
  if (ret = mmdf_extend (stream,size)) {
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2264:11: note: place parentheses around the assignment to silence this warning
  if (ret = mmdf_extend (stream,size)) {
          ^
      (                              )
mmdf.c:2264:11: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
      mmdf_write (&f,LOCAL->buf,mmdf_pseudo (stream,LOCAL->buf));
                                                    ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2125:53: note: passing argument to parameter 'hdr' here
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 with different sign [-Wpointer-sign]
      mmdf_write (&f,LOCAL->buf,mmdf_pseudo (stream,LOCAL->buf));
                     ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:292:36: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
              mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag)))) {
                                   ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          mmdf_write (&f,LOCAL->buf,elt->private.special.text.size);
                         ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:292:36: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
                      j = mmdf_xstatus (stream,LOCAL->buf,elt,NIL,flag));
                                               ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:2152:54: note: passing argument to parameter 'status' here
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 with different sign [-Wpointer-sign]
          mmdf_write (&f,LOCAL->buf,
                         ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
mmdf.c:292:36: note: passing argument to parameter 's' here
void mmdf_write (MMDFFILE *f,char *s,unsigned long i);
                                   ^
mmdf.c:2302:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          read (LOCAL->fd,LOCAL->buf,elt->private.special.text.size);
          ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2401:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Mailbox open failed, aborted: %s",strerror (errno));
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:2402:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mmdf.c:2385:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (LOCAL->fd,LOCAL->filesize = size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2423:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
      if ((write (LOCAL->fd,LOCAL->buf,i) >= 0) && !fsync (LOCAL->fd)) break;
                            ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Unable to extend mailbox: %s",strerror (e));
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mmdf.c:2435:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!stream->silent) MM_LOG (LOCAL->buf,ERROR);
                                       ^~~~~~~~~~
mmdf.c:236:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MMDFLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mmdf.c:2431:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,LOCAL->filesize);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2457:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2457:11: note: place parentheses around the assignment to silence this warning
    if (j = i ? ((f->buflen - i) % OVERFLOWBUFLEN) : f->buflen) {
          ^
        (                                                     )
mmdf.c:2457:11: note: use '==' to turn this assignment into an equality comparison
    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]
    if (j = min (i,f->protect - f->filepos)) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mmdf.c:2473:11: note: place parentheses around the assignment to silence this warning
    if (j = min (i,f->protect - f->filepos)) {
          ^
        (                                  )
mmdf.c:2473:11: note: use '==' to turn this assignment into an equality comparison
    if (j = min (i,f->protect - f->filepos)) {
          ^
          ==
122 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` tenex.c
tenex.c:206:2: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
        utime (file,tp);        /* set the times */
        ^
tenex.c:211:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
                                                  ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
                                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
tenex.c:300:11: warning: data argument not used by format string [-Wformat-extra-args]
             old,newname);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
tenex.c:315:7: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
  if (flock (fd,LOCK_EX|LOCK_NB)) {
      ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
tenex.c:324:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
        ~~^~~~~~~~~~~~~~~~~~~
tenex.c:324:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
          ^
        (                    )
tenex.c:324:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"mail.txt");
                               ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"mail.txt");
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)))
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
            LOCAL->buf = (char *) fs_get (LOCAL->buflen + 1);
                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:516:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          read (LOCAL->fd,LOCAL->buf,elt->private.msg.full.text.size);
          ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:538:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)))
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get (LOCAL->buflen = i + 1);
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:567:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,*length = i);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:574:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    *length = strcrlfcpy (&LOCAL->buf,&LOCAL->buflen,s,i);
                                                     ^
./nl.h:33:21: note: passing argument to parameter 'src' here
                          unsigned char *src,unsigned long srcl);
                                         ^
tenex.c:572:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,s,i);       /* slurp the data */
    ^~~~  ~~~~~~~~~~~~~
tenex.c:609:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      LOCAL->buf = (char *) fs_get (LOCAL->buflen = i + 1);
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:614:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,LOCAL->buf,i);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
tenex.c:632:50: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        strcrlfcpy (&LOCAL->text.data,&LOCAL->text.size,s,i);
                                                        ^
./nl.h:33:21: note: passing argument to parameter 'src' here
                          unsigned char *src,unsigned long srcl);
                                         ^
tenex.c:629:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      read (LOCAL->fd,s,i);     /* slurp the data */
      ^~~~  ~~~~~~~~~~~~~
tenex.c:772:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (j = hdrlen + txtlen) {
            ~~^~~~~~~~~~~~~~~~~
tenex.c:772:8: note: place parentheses around the assignment to silence this warning
        if (j = hdrlen + txtlen) {
              ^
            (                  )
tenex.c:772:8: note: use '==' to turn this assignment into an equality comparison
        if (j = hdrlen + txtlen) {
              ^
              ==
tenex.c:774:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
                     ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1688:24: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
tenex.c:775:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
                                        ^
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
tenex.c:775:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:781:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                                   ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
tenex.c:781:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:798:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,WARN);
                ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
tenex.c:799:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,sbuf.st_size);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~
tenex.c:833:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                           mail_uid_sequence (stream,sequence) :
                                                     ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                           mail_sequence (stream,sequence)) : LONGT) &&
                                                 ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
              if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
                                   ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
tenex.c:890:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            read (LOCAL->fd,LOCAL->buf,m);
            ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
tenex.c:911:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,
          ~~~~~~~~~^~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:914:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,WARN);
                  ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Expunged %lu messages",n);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:920:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,(long) NIL);
                ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
tenex.c:917:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,LOCAL->filesize);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:961:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!tenex_isvalid (mailbox,LOCAL->buf)) switch (errno) {
                              ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
tenex.c:176:37: note: passing argument to parameter 'tmp' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:969:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Invalid Tenex-format mailbox name: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:974:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Not a Tenex-format mailbox: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:979:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
  if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                       ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
        mail_sequence (stream,sequence))) return NIL;
                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to open copy mailbox: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:987:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
        if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
                      ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
tenex.c:1008:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        read (LOCAL->fd,LOCAL->buf,j);
        ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
tenex.c:1014:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:1015:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
tenex.c:1016:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
tenex.c:1072:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"mail.txt");
                          ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"mail.txt");
                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      if (!mail_parse_date (&elt,date)) {
                                 ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
tenex.c:1150:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);/* revert file */
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
tenex.c:1244:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(s = strchr (LOCAL->buf,'\012'))) {
              ~~~~~~~~^~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
tenex.c:1244:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
               ~~~~~~~~^~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
tenex.c:1253:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
                                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
tenex.c:1253:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
        (elt->private.msg.full.text.size = strtoul (s,(char **) &s,10)) &&
                                                    ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
tenex.c:1300:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    j = strtoul (t,NIL,8);      /* get user flags value */
                 ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
tenex.c:1378:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:1379:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    fatal (LOCAL->buf);
           ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
tenex.c:1387:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  j = strtoul(LOCAL->buf,NIL,8);/* get user flags value */
              ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
tenex.c:1413:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"%010lo%02o",k,(unsigned)
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
tenex.c:1421:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    write (LOCAL->fd,LOCAL->buf,12);
                     ^~~~~~~~~~
tenex.c:70:15: note: expanded from macro 'LOCAL'
#define LOCAL ((TENEXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
        read (LOCAL->fd,s = LOCAL->buf,i = min (msiz-siz,(long) MAILTMPLEN));
                          ^ ~~~~~~~~~~
tenex.c:1456:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        read (LOCAL->fd,s = LOCAL->buf,i = min (msiz-siz,(long) MAILTMPLEN));
        ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
79 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mtx.c
mtx.c:199:2: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
        utime (file,tp);        /* set the times */
        ^
mtx.c:204:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
                                                  ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  else if ((errno == ENOENT) && !compare_cstring (name,"INBOX")) errno = -1;
                                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mtx.c:293:11: warning: data argument not used by format string [-Wformat-extra-args]
             old,newname);
                 ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mtx.c:308:7: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
  if (flock (fd,LOCK_EX|LOCK_NB)) {
      ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
mtx.c:317:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
        ~~^~~~~~~~~~~~~~~~~~~
mtx.c:317:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (tmp,'/')) {/* found superior to destination name? */
          ^
        (                    )
mtx.c:317:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"INBOX.MTX");
                               ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  if (ret && !compare_cstring (old,"INBOX")) dummy_create (NIL,"INBOX.MTX");
                                   ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)))
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
    LOCAL->buf = (char *) fs_get ((LOCAL->buflen = *length) + 1);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:515:3: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
  read (LOCAL->fd,LOCAL->buf,*length);
  ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:546:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  d.chunk = LOCAL->buf;         /* initial buffer chunk */
          ^ ~~~~~~~~~~
mtx.c:683:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (j = hdrlen + txtlen) {
            ~~^~~~~~~~~~~~~~~~~
mtx.c:683:8: note: place parentheses around the assignment to silence this warning
        if (j = hdrlen + txtlen) {
              ^
            (                  )
mtx.c:683:8: note: use '==' to turn this assignment into an equality comparison
        if (j = hdrlen + txtlen) {
              ^
              ==
mtx.c:685:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mail_date (LOCAL->buf,elt = mail_elt (sysibx,i));
                     ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1688:24: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mtx.c:686:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
                                        ^
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mtx.c:686:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf + strlen (LOCAL->buf),
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:692:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                                   ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mtx.c:692:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if ((write (LOCAL->fd,LOCAL->buf,strlen (LOCAL->buf)) < 0) ||
                                ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Can't copy new mail: %s",strerror (errno));
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:709:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,WARN);
                ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mtx.c:710:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,sbuf.st_size);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~
mtx.c:744:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                           mail_uid_sequence (stream,sequence) :
                                                     ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                           mail_sequence (stream,sequence)) : LONGT) &&
                                                 ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
              if (write (LOCAL->fd,LOCAL->buf,m) > 0) break;
                                   ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mtx.c:801:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            read (LOCAL->fd,LOCAL->buf,m);
            ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
mtx.c:821:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,
          ~~~~~~~~~^~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:824:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,WARN);
                  ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Expunged %lu messages",n);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:830:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,(long) NIL);
                ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mtx.c:827:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (LOCAL->fd,LOCAL->filesize);
        ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:871:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!mtx_isvalid (mailbox,LOCAL->buf)) switch (errno) {
                            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
mtx.c:169:35: note: passing argument to parameter 'tmp' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Can't access destination: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:879:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Invalid MTX-format mailbox name: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:884:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Not a MTX-format mailbox: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:889:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
  if (!((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                       ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
        mail_sequence (stream,sequence))) return NIL;
                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to open copy mailbox: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:897:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
        if (write (fd,LOCAL->buf,j) < 0) ret = NIL;
                      ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mtx.c:918:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        read (LOCAL->fd,LOCAL->buf,j);
        ^~~~  ~~~~~~~~~~~~~~~~~~~~~~
mtx.c:924:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to write message: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:925:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mtx.c:926:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
mtx.c:982:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"INBOX.MTX");
                          ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) dummy_create (NIL,"INBOX.MTX");
                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      if (!mail_parse_date (&elt,date)) {
                                 ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mtx.c:1053:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (fd,sbuf.st_size);/* revert file */
    ^~~~~~~~~  ~~~~~~~~~~~~~~~
mtx.c:1132:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,'\015')) && (s[1] == '\012'))) {
               ~~~~~~~~^~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mtx.c:1132:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
               ~~~~~~~~^~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mtx.c:1141:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
    if (!((s = strchr (LOCAL->buf,',')) && (t = strchr (s+1,';')))) {
                                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
mtx.c:1141:47: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    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 with different sign [-Wpointer-sign]
        (elt->rfc822_size = strtoul (s,(char **) &s,10)) && (!(s && *s)) &&
                                     ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mtx.c:1188:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    j = strtoul (t,NIL,8);      /* get user flags value */
                 ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mtx.c:1266:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Unable to read new status: %s",strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:1267:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    fatal (LOCAL->buf);
           ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./ftl.h:32:19: note: passing argument to parameter 'string' here
void fatal (char *string);
                  ^
mtx.c:1275:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  j = strtoul(LOCAL->buf,NIL,8);/* get user flags value */
              ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
mtx.c:1301:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"%010lo%02o",k,(unsigned)
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mtx.c:1309:22: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    write (LOCAL->fd,LOCAL->buf,12);
                     ^~~~~~~~~~
mtx.c:66:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MTXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
68 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` news.c
news.c:161:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (fd,t = s = (char *) fs_get (sbuf.st_size+1),sbuf.st_size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
news.c:218:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (pattern,'.')) *++s = '\0';
          ~~^~~~~~~~~~~~~~~~~~~~~~
news.c:218:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (pattern,'.')) *++s = '\0';
            ^
          (                       )
news.c:218:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (pattern,'.')) *++s = '\0';
            ^
            ==
news.c:234:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    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
    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
    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]
    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
    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
    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 with different sign [-Wpointer-sign]
      if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
                       ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
      if (pmatch_full (name,pattern,'.')) mm_list (stream,'.',name,NIL);
                            ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
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 with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.'))
                         ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
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 with different sign [-Wpointer-sign]
        if (pmatch_full (name,pattern,'.'))
                              ^~~~~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
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]
    } while (t = strtok_r (NIL,"\n",&r));
             ~~^~~~~~~~~~~~~~~~~~~~~~~~
news.c:243:16: note: place parentheses around the assignment to silence this warning
    } while (t = strtok_r (NIL,"\n",&r));
               ^
             (                         )
news.c:243:16: note: use '==' to turn this assignment into an equality comparison
    } while (t = strtok_r (NIL,"\n",&r));
               ^
               ==
news.c:228:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (fd,s = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
news.c:286:34: warning: expression result unused [-Wunused-value]
    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]
  while (s = strchr (s,'.')) *s = '/';
         ~~^~~~~~~~~~~~~~~~
news.c:368:12: note: place parentheses around the assignment to silence this warning
  while (s = strchr (s,'.')) *s = '/';
           ^
         (                 )
news.c:368:12: note: use '==' to turn this assignment into an equality comparison
  while (s = strchr (s,'.')) *s = '/';
           ^
           ==
news.c:370:36: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
  if ((nmsgs = scandir (tmp,&names,news_select,news_numsort)) >= 0) {
                                   ^~~~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
news.c:370:48: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
  if ((nmsgs = scandir (tmp,&names,news_select,news_numsort)) >= 0) {
                                               ^~~~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
news.c:409:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (c = *s++) if (!isdigit (c)) return NIL;
         ~~^~~~~~
news.c:409:12: note: place parentheses around the assignment to silence this warning
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
         (       )
news.c:409:12: note: use '==' to turn this assignment into an equality comparison
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
           ==
news.c:456:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
news.c:457:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_sequence (stream,sequence)))
                                                ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
news.c:474:33: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
                                ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
news.c:474:67: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence))
                                                                  ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
news.c:495:12: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid);
  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
news.c:61:15: note: expanded from macro 'LOCAL'
#define LOCAL ((NEWSLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
news.c:500:20: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ((fd = open (LOCAL->buf,O_RDONLY,NIL)) >= 0)) {
                   ^~~~~~~~~~
news.c:61:15: note: expanded from macro 'LOCAL'
#define LOCAL ((NEWSLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
news.c:504:13: warning: assigning to 'char *' from 'unsigned char [65536]' converts between pointers to integer types with different sign [-Wpointer-sign]
    d.chunk = LOCAL->buf;
            ^ ~~~~~~~~~~
news.c:569:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                 ~~~~~~~~~~^~~~~~~~~
news.c:569:21: note: remove extraneous parentheses around the comparison to silence this warning
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                ~          ^        ~
news.c:569:21: note: use '=' to turn this equality comparison into an assignment
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                           ^~
                           =
news.c:589:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                 ~~~~~~~~~~^~~~~~~~~
news.c:589:21: note: remove extraneous parentheses around the comparison to silence this warning
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                ~          ^        ~
news.c:589:21: note: use '=' to turn this equality comparison into an assignment
            if ((CHR (&bs) == '\012')) *t++ = SNX (&bs);
                           ^~
                           =
24 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` phile.c
phile.c:292:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  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
  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
  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 with different sign [-Wpointer-sign]
  LOCAL->env->date = cpystr (tmp);
                   ^ ~~~~~~~~~~~~
phile.c:309:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  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
  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
  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]
  if (i = phile_type (buf->data,buf->size,&j)) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
phile.c:321:9: note: place parentheses around the assignment to silence this warning
  if (i = phile_type (buf->data,buf->size,&j)) {
        ^
      (                                      )
phile.c:321:9: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
      buf->size = strcrlfcpy (&buf->data,&m,s,buf->size);
                                            ^
./nl.h:33:21: note: passing argument to parameter 'src' here
                          unsigned char *src,unsigned long srcl);
                                         ^
phile.c:317:3: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
  read (fd,buf->data = (unsigned char *) fs_get (buf->size + 1),buf->size);
  ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mh.c
mh.c:193:44: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) ||
                                           ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:193:49: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if ((mh_allow_inbox && !compare_cstring (name,"INBOX")) ||
                                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:194:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !compare_cstring (name,MHINBOX) ||
                        ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:194:30: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !compare_cstring (name,MHINBOX) ||
                             ^~~~~~~
mh.c:46:17: note: expanded from macro 'MHINBOX'
#define MHINBOX "#mhinbox"      /* corresponds to namespace in env_unix.c */
                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:198:42: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = (synonly && compare_cstring (name,"INBOX")) ?
                                         ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:198:47: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ret = (synonly && compare_cstring (name,"INBOX")) ?
                                              ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:257:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (v = strpbrk (s," \t")) {
            ~~^~~~~~~~~~~~~~~~~~~
mh.c:257:8: note: place parentheses around the assignment to silence this warning
        if (v = strpbrk (s," \t")) {
              ^
            (                    )
mh.c:257:8: note: use '==' to turn this assignment into an equality comparison
        if (v = strpbrk (s," \t")) {
              ^
              ==
mh.c:259:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"Path:")) {
                                ^
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:259:28: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!compare_cstring (s,"Path:")) {
                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:251:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      read (fd,(t = (char *) fs_get (sbuf.st_size + 1)),sbuf.st_size);
      ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:330:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (c = *s++) if (!isdigit (c)) return NIL;
           ~~^~~~~~
mh.c:330:14: note: place parentheses around the assignment to silence this warning
    while (c = *s++) if (!isdigit (c)) return NIL;
             ^
           (       )
mh.c:330:14: note: use '==' to turn this assignment into an equality comparison
    while (c = *s++) if (!isdigit (c)) return NIL;
             ^
             ==
mh.c:349:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (test,'/')) *++s = '\0';
          ~~^~~~~~~~~~~~~~~~~~~
mh.c:349:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (test,'/')) *++s = '\0';
            ^
          (                    )
mh.c:349:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (test,'/')) *++s = '\0';
            ^
            ==
mh.c:362:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strpbrk (test,"%*")) {
          ~~^~~~~~~~~~~~~~~~~~~~~
mh.c:362:13: note: place parentheses around the assignment to silence this warning
      if (s = strpbrk (test,"%*")) {
            ^
          (                      )
mh.c:362:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strpbrk (test,"%*")) {
            ^
            ==
mh.c:369:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strrchr (file,'/')) {
          ~~^~~~~~~~~~~~~~~~~~~~
mh.c:369:13: note: place parentheses around the assignment to silence this warning
      if (s = strrchr (file,'/')) {
            ^
          (                     )
mh.c:369:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strrchr (file,'/')) {
            ^
            ==
mh.c:377:27: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (test,MHINBOX))
                          ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:377:32: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!compare_cstring (test,MHINBOX))
                               ^~~~~~~
mh.c:46:17: note: expanded from macro 'MHINBOX'
#define MHINBOX "#mhinbox"      /* corresponds to namespace in env_unix.c */
                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:406:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    do if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
                        ^
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
mh.c:406:27: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    do if (pmatch_full (s,test,'/')) mm_lsub (stream,'/',s,NIL);
                          ^~~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
mh.c:407:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (s = sm_read (&sdb)); /* until no more subscriptions */
           ~~^~~~~~~~~~~~~~~~
mh.c:407:14: note: place parentheses around the assignment to silence this warning
    while (s = sm_read (&sdb)); /* until no more subscriptions */
             ^
           (                 )
mh.c:407:14: note: use '==' to turn this assignment into an equality comparison
    while (s = sm_read (&sdb)); /* until no more subscriptions */
             ^
             ==
mh.c:431:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (dp = opendir (curdir)) {  /* open directory */
      ~~~^~~~~~~~~~~~~~~~~~
mh.c:431:10: note: place parentheses around the assignment to silence this warning
  if (dp = opendir (curdir)) {  /* open directory */
         ^
      (                    )
mh.c:431:10: note: use '==' to turn this assignment into an equality comparison
  if (dp = opendir (curdir)) {  /* open directory */
         ^
         ==
mh.c:432:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (d = readdir (dp))    /* scan, ignore . and numeric names */
           ~~^~~~~~~~~~~~~~
mh.c:432:14: note: place parentheses around the assignment to silence this warning
    while (d = readdir (dp))    /* scan, ignore . and numeric names */
             ^
           (               )
mh.c:432:14: note: use '==' to turn this assignment into an equality comparison
    while (d = readdir (dp))    /* scan, ignore . and numeric names */
             ^
             ==
mh.c:438:21: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (pmatch_full (name,pat,'/')) mm_list (stream,'/',name,NIL);
                           ^~~~
./env.h:29:34: note: passing argument to parameter 's' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                 ^
mh.c:438:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (pmatch_full (name,pat,'/')) mm_list (stream,'/',name,NIL);
                                ^~~
./env.h:29:51: note: passing argument to parameter 'pat' here
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim);
                                                  ^
mh.c:440:16: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (dmatch (name,pat,'/') &&
                      ^~~~
./env.h:30:29: note: passing argument to parameter 's' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                            ^
mh.c:440:21: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (dmatch (name,pat,'/') &&
                           ^~~
./env.h:30:46: note: passing argument to parameter 'pat' here
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim);
                                             ^
mh.c:516:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (dirp = opendir (tmp)) {   /* open directory */
      ~~~~~^~~~~~~~~~~~~~~
mh.c:516:12: note: place parentheses around the assignment to silence this warning
  if (dirp = opendir (tmp)) {   /* open directory */
           ^
      (                   )
mh.c:516:12: note: use '==' to turn this assignment into an equality comparison
  if (dirp = opendir (tmp)) {   /* open directory */
           ^
           ==
mh.c:519:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) {
           ~~^~~~~~~~~~~~~~~~
mh.c:519:14: note: place parentheses around the assignment to silence this warning
    while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) {
             ^
           (                 )
mh.c:519:14: note: use '==' to turn this assignment into an equality comparison
    while (d = readdir (dirp)) if (mh_dirfmttest (d->d_name)) {
             ^
             ==
mh.c:556:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strrchr (mh_file (tmp1,newname),'/')) {
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:556:11: note: place parentheses around the assignment to silence this warning
    if (s = strrchr (mh_file (tmp1,newname),'/')) {
          ^
        (                                       )
mh.c:556:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strrchr (mh_file (tmp1,newname),'/')) {
          ^
          ==
mh.c:590:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (!compare_cstring (stream->mailbox,MHINBOX) ||
                       ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:590:40: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (!compare_cstring (stream->mailbox,MHINBOX) ||
                                       ^~~~~~~
mh.c:46:17: note: expanded from macro 'MHINBOX'
#define MHINBOX "#mhinbox"      /* corresponds to namespace in env_unix.c */
                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:595:24: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
     !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL;
                       ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:595:40: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
     !compare_cstring (stream->mailbox,"INBOX")) ? T : NIL;
                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:641:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mh.c:642:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          mail_sequence (stream,sequence)))
                                                ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mh.c:665:12: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid);
  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:670:20: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ((fd = open (LOCAL->buf,O_RDONLY,NIL)) >= 0)) {
                   ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
mh.c:674:13: warning: assigning to 'char *' from 'unsigned char [65536]' converts between pointers to integer types with different sign [-Wpointer-sign]
    d.chunk = LOCAL->buf;
            ^ ~~~~~~~~~~
mh.c:740:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
            if ((CHR (&bs) == '\012')) {
                 ~~~~~~~~~~^~~~~~~~~
mh.c:740:21: note: remove extraneous parentheses around the comparison to silence this warning
            if ((CHR (&bs) == '\012')) {
                ~          ^        ~
mh.c:740:21: note: use '=' to turn this equality comparison into an assignment
            if ((CHR (&bs) == '\012')) {
                           ^~
                           =
mh.c:766:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
            if ((CHR (&bs) == '\012')) {
                 ~~~~~~~~~~^~~~~~~~~
mh.c:766:21: note: remove extraneous parentheses around the comparison to silence this warning
            if ((CHR (&bs) == '\012')) {
                ~          ^        ~
mh.c:766:21: note: use '=' to turn this equality comparison into an assignment
            if ((CHR (&bs) == '\012')) {
                           ^~
                           =
mh.c:865:46: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
    long nfiles = scandir (LOCAL->dir,&names,mh_select,mh_numsort);
                                             ^~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mh.c:865:56: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
    long nfiles = scandir (LOCAL->dir,&names,mh_select,mh_numsort);
                                                       ^~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mh.c:889:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = (void *) names) fs_give ((void **) &s);
        ~~^~~~~~~~~~~~~~~~
mh.c:889:11: note: place parentheses around the assignment to silence this warning
    if (s = (void *) names) fs_give ((void **) &s);
          ^
        (                 )
mh.c:889:11: note: use '==' to turn this assignment into an equality comparison
    if (s = (void *) names) fs_give ((void **) &s);
          ^
          ==
mh.c:902:11: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,++old);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:905:19: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL,
                         ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
mh.c:929:16: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mh_setdate (LOCAL->buf,elt);
                      ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
mh.c:110:24: note: passing argument to parameter 'file' here
void mh_setdate (char *file,MESSAGECACHE *elt);
                       ^
mh.c:937:14: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            unlink (LOCAL->buf);/* flush this file */
                    ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/unistd.h:848:32: note: passing argument to parameter '__name' here
extern int unlink (const char *__name) __THROW __nonnull ((1));
                               ^
mh.c:940:8: warning: data argument not used by format string [-Wformat-extra-args]
                   s,strerror (errno));
                     ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mh.c:984:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        mail_uid_sequence (stream,sequence) :
                                                  ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mh.c:985:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        mail_sequence (stream,sequence)) : LONGT) {
                                              ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mh.c:983:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (ret = sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:983:11: note: place parentheses around the assignment to silence this warning
  if (ret = sequence ? ((options & EX_UID) ?
          ^
mh.c:983:11: note: use '==' to turn this assignment into an equality comparison
  if (ret = sequence ? ((options & EX_UID) ?
          ^
          ==
mh.c:990:11: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:991:14: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (unlink (LOCAL->buf)) {/* try to delete the message */
                    ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/unistd.h:848:32: note: passing argument to parameter '__name' here
extern int unlink (const char *__name) __THROW __nonnull ((1));
                               ^
mh.c:992:13: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i,
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:994:12: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mm_log (LOCAL->buf,(long) NIL);
                  ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mh.c:1012:16: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Expunged %lu messages",n);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:1013:15: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mm_log (LOCAL->buf,(long) NIL);
              ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mh.c:1044:54: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if ((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                     ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mh.c:1045:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      mail_sequence (stream,sequence))
                            ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mh.c:1048:11: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"%s/%lu",LOCAL->dir,elt->private.uid);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mh.c:1049:18: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((fd = open (LOCAL->buf,O_RDONLY,NIL)) < 0) return NIL;
                        ^~~~~~~~~~
mh.c:72:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MHLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
mh.c:1061:10: warning: assigning to 'char *' from 'unsigned char [65536]' converts between pointers to integer types with different sign [-Wpointer-sign]
        d.chunk = LOCAL->buf;
                ^ ~~~~~~~~~~
mh.c:1109:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((!compare_cstring (mailbox,MHINBOX) ||
                             ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:1109:38: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!((!compare_cstring (mailbox,MHINBOX) ||
                                     ^~~~~~~
mh.c:46:17: note: expanded from macro 'MHINBOX'
#define MHINBOX "#mhinbox"      /* corresponds to namespace in env_unix.c */
                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:1110:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           !compare_cstring (mailbox,"INBOX")) &&
                             ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:1110:31: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           !compare_cstring (mailbox,"INBOX")) &&
                                     ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:1131:37: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (tmp,&names,mh_select,mh_numsort)) > 0) {
                                    ^~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mh.c:1131:47: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (tmp,&names,mh_select,mh_numsort)) > 0) {
                                              ^~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mh.c:1138:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = (void *) names) fs_give ((void **) &s);
      ~~^~~~~~~~~~~~~~~~
mh.c:1138:9: note: place parentheses around the assignment to silence this warning
  if (s = (void *) names) fs_give ((void **) &s);
        ^
      (                 )
mh.c:1138:9: note: use '==' to turn this assignment into an equality comparison
  if (s = (void *) names) fs_give ((void **) &s);
        ^
        ==
mh.c:1149:34: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!mail_parse_date (&elt,date)) {
                                 ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mh.c:1201:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (c = *s++) if (!isdigit (c)) return NIL;
         ~~^~~~~~
mh.c:1201:12: note: place parentheses around the assignment to silence this warning
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
         (       )
mh.c:1201:12: note: use '==' to turn this assignment into an equality comparison
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
           ==
mh.c:1231:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX"))
                        ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:1231:30: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX"))
                             ^~~~~~~
mh.c:46:17: note: expanded from macro 'MHINBOX'
#define MHINBOX "#mhinbox"      /* corresponds to namespace in env_unix.c */
                ^~~~~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:1231:60: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX"))
                                                           ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mh.c:1231:65: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!compare_cstring (name,MHINBOX) || !compare_cstring (name,"INBOX"))
                                                                ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mh.c:1264:34: warning: expression result unused [-Wunused-value]
    for (i = 0, s = pattern; *s; *s++) if ((*s == '*') || (*s == '%')) ++i;
                                 ^~~~
mh.c:1282:3: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
  utime (file,tp);              /* set the times */
  ^
76 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mx.c
mx.c:186:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!compare_cstring (name,"INBOX")) errno = NIL;
                             ^~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  else if (!compare_cstring (name,"INBOX")) errno = NIL;
                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mx.c:242:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (c = *name++) if (!isdigit (c)) return NIL;
           ~~^~~~~~~~~
mx.c:242:14: note: place parentheses around the assignment to silence this warning
    while (c = *name++) if (!isdigit (c)) return NIL;
             ^
           (          )
mx.c:242:14: note: use '==' to turn this assignment into an equality comparison
    while (c = *name++) if (!isdigit (c)) return NIL;
             ^
             ==
mx.c:277:38: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (name,&names,mx_select,mx_numsort)) > 0)
                                     ^~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mx.c:277:48: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (name,&names,mx_select,mx_numsort)) > 0)
                                               ^~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mx.c:289:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (a = (void *) names) fs_give ((void **) &a);
      ~~^~~~~~~~~~~~~~~~
mx.c:289:9: note: place parentheses around the assignment to silence this warning
  if (a = (void *) names) fs_give ((void **) &a);
        ^
      (                 )
mx.c:289:9: note: use '==' to turn this assignment into an equality comparison
  if (a = (void *) names) fs_give ((void **) &a);
        ^
        ==
mx.c:348:7: warning: unused variable 'fd' [-Wunused-variable]
  int fd;
      ^
mx.c:395:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (dirp = opendir (tmp)) { /* open directory */
        ~~~~~^~~~~~~~~~~~~~~
mx.c:395:14: note: place parentheses around the assignment to silence this warning
    if (dirp = opendir (tmp)) { /* open directory */
             ^
        (                   )
mx.c:395:14: note: use '==' to turn this assignment into an equality comparison
    if (dirp = opendir (tmp)) { /* open directory */
             ^
             ==
mx.c:398:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (d = readdir (dirp)) if (mx_select (d)) {
             ~~^~~~~~~~~~~~~~~~
mx.c:398:16: note: place parentheses around the assignment to silence this warning
      while (d = readdir (dirp)) if (mx_select (d)) {
               ^
             (                 )
mx.c:398:16: note: use '==' to turn this assignment into an equality comparison
      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 with different sign [-Wpointer-sign]
    if (compare_cstring (old,"INBOX")) {
                         ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (compare_cstring (old,"INBOX")) {
                             ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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]
      if (s = strrchr (mx_file (tmp1,newname),'/')) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:441:13: note: place parentheses around the assignment to silence this warning
      if (s = strrchr (mx_file (tmp1,newname),'/')) {
            ^
          (                                       )
mx.c:441:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strrchr (mx_file (tmp1,newname),'/')) {
            ^
            ==
mx.c:462:54: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
      for (i = lasterror = 0,n = scandir (tmp,&names,mx_select,mx_numsort);
                                                     ^~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mx.c:462:64: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
      for (i = lasterror = 0,n = scandir (tmp,&names,mx_select,mx_numsort);
                                                               ^~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mx.c:469:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (a = (void *) names) fs_give ((void **) &a);
          ~~^~~~~~~~~~~~~~~~
mx.c:469:13: note: place parentheses around the assignment to silence this warning
      if (a = (void *) names) fs_give ((void **) &a);
            ^
          (                 )
mx.c:469:13: note: use '==' to turn this assignment into an equality comparison
      if (a = (void *) names) fs_give ((void **) &a);
            ^
            ==
mx.c:518:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
  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 with different sign [-Wpointer-sign]
      ((flags & FT_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)))
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
  sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid);
  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:593:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!elt->rfc822_size && !stat (LOCAL->buf,&sbuf)) {
                                  ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/sys/stat.h:453:26: note: passing argument to parameter '__path' here
__NTH (stat (const char *__path, struct stat *__statbuf))
                         ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
mx.c:633:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      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 with different sign [-Wpointer-sign]
    cpytxt (&elt->private.msg.header.text,LOCAL->buf,i);
                                          ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
./misc.h:89:36: note: passing argument to parameter 'text' here
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 with different sign [-Wpointer-sign]
    cpytxt (&elt->private.msg.text.text,LOCAL->buf+i,elt->rfc822_size - i);
                                        ^~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
./misc.h:89:36: note: passing argument to parameter 'text' here
char *cpytxt (SIZEDTEXT *dst,char *text,unsigned long size);
                                   ^
mx.c:636:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (fd,LOCAL->buf,elt->rfc822_size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:731:51: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
    long nfiles = scandir (stream->mailbox,&names,mx_select,mx_numsort);
                                                  ^~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mx.c:731:61: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
    long nfiles = scandir (stream->mailbox,&names,mx_select,mx_numsort);
                                                            ^~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mx.c:752:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = (void *) names) fs_give ((void **) &s);
        ~~^~~~~~~~~~~~~~~~
mx.c:752:11: note: place parentheses around the assignment to silence this warning
    if (s = (void *) names) fs_give ((void **) &s);
          ^
        (                 )
mx.c:752:11: note: use '==' to turn this assignment into an equality comparison
    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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,++old);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:770:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (((fd = open (LOCAL->buf,O_WRONLY|O_CREAT|O_EXCL,
                         ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
mx.c:794:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          mx_setdate (LOCAL->buf,elt);
                      ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
mx.c:106:24: note: passing argument to parameter 'file' here
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 with different sign [-Wpointer-sign]
            unlink (LOCAL->buf);/* flush this file */
                    ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/unistd.h:848:32: note: passing argument to parameter '__name' here
extern int unlink (const char *__name) __THROW __nonnull ((1));
                               ^
mx.c:804:8: warning: data argument not used by format string [-Wformat-extra-args]
                   s,strerror (errno));
                     ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mx.c:848:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                         mail_uid_sequence (stream,sequence) :
                                                   ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
                         mail_sequence (stream,sequence)) : LONGT) &&
                                               ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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]
  if (ret = (sequence ? ((options & EX_UID) ?
      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:847:11: note: place parentheses around the assignment to silence this warning
  if (ret = (sequence ? ((options & EX_UID) ?
          ^
mx.c:847:11: note: use '==' to turn this assignment into an equality comparison
  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 with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"%s/%lu",stream->mailbox,elt->private.uid);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:856:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (unlink (LOCAL->buf)) {/* try to delete the message */
                    ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/unistd.h:848:32: note: passing argument to parameter '__name' here
extern int unlink (const char *__name) __THROW __nonnull ((1));
                               ^
mx.c:857:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (LOCAL->buf,"Expunge of message %lu failed, aborted: %s",i,
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:859:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          MM_LOG (LOCAL->buf,(long) NIL);
                  ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,"Expunged %lu messages",n);
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:876:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,(long) NIL);
              ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Not a MX-format mailbox: %.80s",mailbox);
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mx.c:914:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mx.c:62:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
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 with different sign [-Wpointer-sign]
  if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                              ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
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 with different sign [-Wpointer-sign]
               mail_sequence (stream,sequence))));
                                     ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
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]
        if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL))
            ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:939:10: note: place parentheses around the assignment to silence this warning
        if (ret = ((fd = open (mx_fast_work (stream,elt),O_RDONLY,NIL))
                ^
mx.c:939:10: note: use '==' to turn this assignment into an equality comparison
        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 with different sign [-Wpointer-sign]
          d.chunk = LOCAL->buf;
                  ^ ~~~~~~~~~~
mx.c:949:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (j = elt->user_flags) do
              ~~^~~~~~~~~~~~~~~~~
mx.c:949:10: note: place parentheses around the assignment to silence this warning
          if (j = elt->user_flags) do
                ^
              (                  )
mx.c:949:10: note: use '==' to turn this assignment into an equality comparison
          if (j = elt->user_flags) do
                ^
                ==
mx.c:950:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (t = stream->user_flags[find_rightmost_bit (&j)])
                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:950:12: note: place parentheses around the assignment to silence this warning
            if (t = stream->user_flags[find_rightmost_bit (&j)])
                  ^
                (                                              )
mx.c:950:12: note: use '==' to turn this assignment into an equality comparison
            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]
          if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) {
              ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:960:12: note: place parentheses around the assignment to silence this warning
          if (ret = mx_append_msg (astream,tmp,elt,&st,dest)) {
                  ^
              (                                             )
mx.c:960:12: note: use '==' to turn this assignment into an equality comparison
          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 with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX");
                          ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
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 with different sign [-Wpointer-sign]
    if (!compare_cstring (mailbox,"INBOX")) mx_create (NIL,"INBOX");
                                  ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
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 with different sign [-Wpointer-sign]
      else if (date && !(ret = mail_parse_date (&elt,date))) {
                                                     ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mx.c:1117:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  while (c = *s++) if (!isdigit (c)) return NIL;
         ~~^~~~~~
mx.c:1117:12: note: place parentheses around the assignment to silence this warning
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
         (       )
mx.c:1117:12: note: use '==' to turn this assignment into an equality comparison
  while (c = *s++) if (!isdigit (c)) return NIL;
           ^
           ==
mx.c:1173:5: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
    flock (LOCAL->fd,LOCK_EX);  /* get exclusive lock */
    ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
mx.c:1189:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strchr (t = ++s,'\n')) {
          ~~^~~~~~~~~~~~~~~~~~~~~~~
mx.c:1189:13: note: place parentheses around the assignment to silence this warning
      if (s = strchr (t = ++s,'\n')) {
            ^
          (                        )
mx.c:1189:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strchr (t = ++s,'\n')) {
            ^
            ==
mx.c:1177:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    read (LOCAL->fd,s = idx = (char *) fs_get (sbuf.st_size + 1),sbuf.st_size);
    ^~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mx.c:1269:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (LOCAL->fd,size);
    ^~~~~~~~~  ~~~~~~~~~~~~~~
mx.c:1286:3: warning: implicit declaration of function 'utime' is invalid in C99 [-Wimplicit-function-declaration]
  utime (file,tp);              /* set the times */
  ^
61 warnings generated.
`cat CCTYPE` -c `cat CFLAGS` mix.c
mix.c:324:38: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (name,&names,mix_select,mix_msgfsort)) > 0)
                                     ^~~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mix.c:324:49: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
  if ((nfiles = scandir (name,&names,mix_select,mix_msgfsort)) > 0)
                                                ^~~~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mix.c:336:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (a = (void *) names) fs_give ((void **) &a);
      ~~^~~~~~~~~~~~~~~~
mix.c:336:9: note: place parentheses around the assignment to silence this warning
  if (a = (void *) names) fs_give ((void **) &a);
        ^
      (                 )
mix.c:336:9: note: use '==' to turn this assignment into an equality comparison
  if (a = (void *) names) fs_give ((void **) &a);
        ^
        ==
mix.c:471:50: warning: implicit declaration of function 'safe_flock' is invalid in C99 [-Wimplicit-function-declaration]
  else if (((fd = open (tmp,O_RDWR,NIL)) < 0) || flock (fd,LOCK_EX|LOCK_NB))
                                                 ^
./osdep.h:60:15: note: expanded from macro 'flock'
#define flock safe_flock
              ^
mix.c:480:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (dirp = opendir (tmp)) { /* open directory */
        ~~~~~^~~~~~~~~~~~~~~
mix.c:480:14: note: place parentheses around the assignment to silence this warning
    if (dirp = opendir (tmp)) { /* open directory */
             ^
        (                   )
mix.c:480:14: note: use '==' to turn this assignment into an equality comparison
    if (dirp = opendir (tmp)) { /* open directory */
             ^
             ==
mix.c:483:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) {
             ~~^~~~~~~~~~~~~~~~
mix.c:483:16: note: place parentheses around the assignment to silence this warning
      while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) {
               ^
             (                 )
mix.c:483:16: note: use '==' to turn this assignment into an equality comparison
      while (d = readdir (dirp)) if (mix_dirfmttest (d->d_name)) {
               ^
               ==
mix.c:529:26: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (compare_cstring (old,"INBOX")) {
                         ^~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mix.c:529:30: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (compare_cstring (old,"INBOX")) {
                             ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mix.c:531:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = strrchr (tmp1,'/')) {
          ~~^~~~~~~~~~~~~~~~~~~~
mix.c:531:13: note: place parentheses around the assignment to silence this warning
      if (s = strrchr (tmp1,'/')) {
            ^
          (                     )
mix.c:531:13: note: use '==' to turn this assignment into an equality comparison
      if (s = strrchr (tmp1,'/')) {
            ^
            ==
mix.c:556:54: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
      for (i = lasterror = 0,n = scandir (tmp,&names,mix_rselect,alphasort);
                                                     ^~~~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mix.c:569:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (a = (void *) names) fs_give ((void **) &a);
          ~~^~~~~~~~~~~~~~~~
mix.c:569:13: note: place parentheses around the assignment to silence this warning
      if (a = (void *) names) fs_give ((void **) &a);
            ^
          (                 )
mix.c:569:13: note: use '==' to turn this assignment into an equality comparison
      if (a = (void *) names) fs_give ((void **) &a);
            ^
            ==
mix.c:608:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                    ^~~~~~~~~~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mix.c:608:53: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->inbox = !compare_cstring (stream->mailbox,"INBOX");
                                                    ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mix.c:610:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  LOCAL->buf = (char *) fs_get (CHUNKSIZE);
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:613:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  mix_dir (LOCAL->buf,stream->mailbox);
           ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:165:22: note: passing argument to parameter 'dst' here
char *mix_dir (char *dst,char *name);
                     ^
mix.c:615:29: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  stream->mailbox = cpystr (LOCAL->buf);
                            ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
mix.c:618:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA),
                                         ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:166:23: note: passing argument to parameter 'dst' here
char *mix_file (char *dst,char *dir,char *name);
                      ^
mix.c:621:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          ((LOCAL->mfd = open (mix_file (LOCAL->buf,stream->mailbox,MIXMETA),
                                         ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:166:23: note: passing argument to parameter 'dst' here
char *mix_file (char *dst,char *dir,char *name);
                      ^
mix.c:629:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->index = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXINDEX));
                                     ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:166:23: note: passing argument to parameter 'dst' here
char *mix_file (char *dst,char *dir,char *name);
                      ^
mix.c:630:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->status = cpystr (mix_file (LOCAL->buf,stream->mailbox,MIXSTATUS));
                                      ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:166:23: note: passing argument to parameter 'dst' here
char *mix_file (char *dst,char *dir,char *name);
                      ^
mix.c:631:42: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->sortcache = cpystr (mix_file (LOCAL->buf,stream->mailbox,
                                         ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:166:23: note: passing argument to parameter 'dst' here
char *mix_file (char *dst,char *dir,char *name);
                      ^
mix.c:636:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (silent = stream->silent) LOCAL->internal = T;
        ~~~~~~~^~~~~~~~~~~~~~~~
mix.c:636:16: note: place parentheses around the assignment to silence this warning
    if (silent = stream->silent) LOCAL->internal = T;
               ^
        (                      )
mix.c:636:16: note: use '==' to turn this assignment into an equality comparison
    if (silent = stream->silent) LOCAL->internal = T;
               ^
               ==
mix.c:720:46: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox,
                                             ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:732:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->buf = (char *) fs_get ((LOCAL->buflen = j) + 1);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
                ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
mix.c:737:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      !strncmp (LOCAL->buf,MSGTOK,MSGTSZ) &&
       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
mix.c:754:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
mix.c:754:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:754:11: note: place parentheses around the assignment to silence this warning
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
          ^
        (                                  )
mix.c:754:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strpbrk (LOCAL->buf,"\015\012")) *s = '\0';
          ^
          ==
mix.c:711:7: warning: unused variable 'fd' [-Wunused-variable]
  int fd;
      ^
mix.c:783:46: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,stream->mailbox,
                                             ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:807:11: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  d.chunk = LOCAL->buf;         /* initial buffer chunk */
          ^ ~~~~~~~~~~
mix.c:774:17: warning: unused variable 'i' [-Wunused-variable]
  unsigned long i;
                ^
mix.c:832:53: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (((flags & ST_UID) ? mail_uid_sequence (stream,sequence) :
                                                    ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mix.c:833:30: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
       mail_sequence (stream,sequence)) &&
                             ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mix.c:965:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) {
              ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:965:16: note: place parentheses around the assignment to silence this warning
          if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) {
                      ^
              (                                                          )
mix.c:965:16: note: use '==' to turn this assignment into an equality comparison
          if (snarfok = mail_append_full (stream,"INBOX",flags,date,&msg)) {
                      ^
                      ==
mix.c:975:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Can't copy new mail at message: %lu",i - 1);
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:976:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,WARN);
                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:990:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (statf = mix_parse (stream,&idxf,LONGT,
      ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:990:13: note: place parentheses around the assignment to silence this warning
  if (statf = mix_parse (stream,&idxf,LONGT,
            ^
mix.c:990:13: note: use '==' to turn this assignment into an equality comparison
  if (statf = mix_parse (stream,&idxf,LONGT,
            ^
            ==
mix.c:929:7: warning: unused variable 'mfd' [-Wunused-variable]
  int mfd,ifd,sfd;
      ^
mix.c:929:11: warning: unused variable 'ifd' [-Wunused-variable]
  int mfd,ifd,sfd;
          ^
mix.c:929:15: warning: unused variable 'sfd' [-Wunused-variable]
  int mfd,ifd,sfd;
              ^
mix.c:1035:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         mail_uid_sequence (stream,sequence) :
                                   ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mix.c:1036:25: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         mail_sequence (stream,sequence))) || stream->rdonly);
                               ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mix.c:1038:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (statf = mix_parse (stream,&idxf,LONGT,
           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1038:18: note: place parentheses around the assignment to silence this warning
  else if (statf = mix_parse (stream,&idxf,LONGT,
                 ^
mix.c:1038:18: note: use '==' to turn this assignment into an equality comparison
  else if (statf = mix_parse (stream,&idxf,LONGT,
                 ^
                 ==
mix.c:1054:53: warning: incompatible pointer types passing 'int (struct dirent *)' to parameter of type 'int (*)(const struct dirent *)' [-Wincompatible-pointer-types]
      long nfiles = scandir (stream->mailbox,&names,mix_select,mix_msgfsort);
                                                    ^~~~~~~~~~
/usr/include/dirent.h:256:13: note: passing argument to parameter '__selector' here
                    int (*__selector) (const struct dirent *),
                          ^
mix.c:1054:64: warning: incompatible pointer types passing 'int (const void *, const void *)' to parameter of type 'int (*)(const struct dirent **, const struct dirent **)' [-Wincompatible-pointer-types]
      long nfiles = scandir (stream->mailbox,&names,mix_select,mix_msgfsort);
                                                               ^~~~~~~~~~~~
/usr/include/dirent.h:257:13: note: passing argument to parameter '__cmp' here
                    int (*__cmp) (const struct dirent **,
                          ^
mix.c:1087:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            sprintf (LOCAL->buf,"Can't locate mix message file %.08lx",
            ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1089:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            MM_LOG (LOCAL->buf,ERROR);
                    ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1098:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (mix_file_data (LOCAL->buf,stream->mailbox,cur->fileno) &&
                                    ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:1100:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) {
                                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/unistd.h:1015:34: note: passing argument to parameter '__file' here
extern int truncate (const char *__file, __off_t __length)
                                 ^
mix.c:1100:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                      truncate (LOCAL->buf,0) : unlink (LOCAL->buf))) {
                                                        ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/unistd.h:848:32: note: passing argument to parameter '__name' here
extern int unlink (const char *__name) __THROW __nonnull ((1));
                               ^
mix.c:1101:17: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              sprintf (LOCAL->buf,
              ~~~~~~~~~^~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1104:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              MM_LOG (LOCAL->buf,WARN);
                      ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1110:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (a = (void *) names) fs_give ((void **) &a);
          ~~^~~~~~~~~~~~~~~~
mix.c:1110:13: note: place parentheses around the assignment to silence this warning
      if (a = (void *) names) fs_give ((void **) &a);
            ^
          (                 )
mix.c:1110:13: note: use '==' to turn this assignment into an equality comparison
      if (a = (void *) names) fs_give ((void **) &a);
            ^
            ==
mix.c:1131:26: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (nexp) sprintf (s = LOCAL->buf,"Expunged %lu messages",nexp);
              ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1131:26: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (nexp) sprintf (s = LOCAL->buf,"Expunged %lu messages",nexp);
                         ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
mix.c:1133:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (s=LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed);
      ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1133:17: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (s=LOCAL->buf,"Reclaimed %lu bytes of expunged space",reclaimed);
                ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
mix.c:1026:7: warning: unused variable 'ifd' [-Wunused-variable]
  int ifd,sfd;
      ^
mix.c:1026:11: warning: unused variable 'sfd' [-Wunused-variable]
  int ifd,sfd;
          ^
mix.c:1223:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  mix_file_data (LOCAL->buf,stream->mailbox,burp->fileno);
                 ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:1227:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (stat (LOCAL->buf,&sbuf)) {
              ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/sys/stat.h:453:26: note: passing argument to parameter '__path' here
__NTH (stat (const char *__path, struct stat *__statbuf))
                         ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
mix.c:1228:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,staterr,burp->name,strerror (errno));
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1229:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,ERROR);
              ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1232:54: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) {
                                                     ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:147:55: note: passing argument to parameter 'file' here
long mix_burp_check (SEARCHSET *set,size_t size,char *file);
                                                      ^
mix.c:1236:33: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (ret = !truncate (LOCAL->buf,burp->set.last))
                                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/unistd.h:1015:34: note: passing argument to parameter '__file' here
extern int truncate (const char *__file, __off_t __length)
                                 ^
mix.c:1236:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      else if (ret = !truncate (LOCAL->buf,burp->set.last))
               ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1236:20: note: place parentheses around the assignment to silence this warning
      else if (ret = !truncate (LOCAL->buf,burp->set.last))
                   ^
               (                                          )
mix.c:1236:20: note: use '==' to turn this assignment into an equality comparison
      else if (ret = !truncate (LOCAL->buf,burp->set.last))
                   ^
                   ==
mix.c:1239:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno));
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1240:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,ERROR);
                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1245:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (((fd = open (LOCAL->buf,O_RDWR,NIL)) < 0) ||
                        ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/fcntl.h:146:30: note: passing argument to parameter '__file' here
extern int open (const char *__file, int __oflag, ...) __nonnull ((1));
                             ^
mix.c:1247:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,"Error opening mix message file %.80s: %.80s",
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1249:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1253:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,staterr,burp->name,strerror (errno));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1254:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    MM_LOG (LOCAL->buf,ERROR);
            ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1259:52: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (mix_burp_check (&burp->set,sbuf.st_size,LOCAL->buf)) {
                                                   ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:147:55: note: passing argument to parameter 'file' here
long mix_burp_check (SEARCHSET *set,size_t size,char *file);
                                                      ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
                   ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
mix.c:1264:13: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strncmp (LOCAL->buf,MSGTOK,MSGTSZ)) {
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
mix.c:1265:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,"Bad message token in mix message file at %lu",
        ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1267:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,ERROR);
                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1307:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (LOCAL->buf,truncerr,burp->name,strerror (errno));
      ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1308:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      MM_LOG (LOCAL->buf,WARN);
              ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:1340:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  } while (set = set->next);
           ~~~~^~~~~~~~~~~
mix.c:1340:16: note: place parentheses around the assignment to silence this warning
  } while (set = set->next);
               ^
           (              )
mix.c:1340:16: note: use '==' to turn this assignment into an equality comparison
  } while (set = set->next);
               ^
               ==
mix.c:1357:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  long ret = mix_isvalid (mailbox,LOCAL->buf);
                                  ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:236:36: note: passing argument to parameter 'meta' here
long mix_isvalid (char *name,char *meta)
                                   ^
mix.c:1375:68: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!(ret = ((options & CP_UID) ? mail_uid_sequence (stream,sequence) :
                                                                   ^~~~~~~~
./mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
mix.c:1376:29: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    mail_sequence (stream,sequence))));
                                          ^~~~~~~~
./mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
mix.c:1378:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
           ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1378:16: note: place parentheses around the assignment to silence this warning
  else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
               ^
mix.c:1378:16: note: use '==' to turn this assignment into an equality comparison
  else if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
               ^
               ==
mix.c:1393:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
             ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1393:39: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
    sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
                                      ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:1393:61: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
    sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
                                                            ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:1394:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    hdrsize = strlen (local->buf);
                      ^~~~~~~~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:1403:43: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (msgf = mix_data_open (astream,&fd,&size,newsize)) {
                                          ^~~~~
mix.c:159:55: note: passing argument to parameter 'size' here
FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size,
                                                      ^
mix.c:1403:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgf = mix_data_open (astream,&fd,&size,newsize)) {
        ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1403:14: note: place parentheses around the assignment to silence this warning
    if (msgf = mix_data_open (astream,&fd,&size,newsize)) {
             ^
        (                                               )
mix.c:1403:14: note: use '==' to turn this assignment into an equality comparison
    if (msgf = mix_data_open (astream,&fd,&size,newsize)) {
             ^
             ==
mix.c:1415:47: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if ((LOCAL->msgfd = open (mix_file_data (LOCAL->buf,
                                                     ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:1427:14: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            d.chunk = LOCAL->buf;
                    ^ ~~~~~~~~~~
mix.c:1432:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (j = elt->user_flags) do
                ~~^~~~~~~~~~~~~~~~~
mix.c:1432:12: note: place parentheses around the assignment to silence this warning
            if (j = elt->user_flags) do
                  ^
                (                  )
mix.c:1432:12: note: use '==' to turn this assignment into an equality comparison
            if (j = elt->user_flags) do
                  ^
                  ==
mix.c:1455:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (ret = (mix_meta_update (astream) &&
            ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1455:10: note: place parentheses around the assignment to silence this warning
        if (ret = (mix_meta_update (astream) &&
                ^
mix.c:1455:10: note: use '==' to turn this assignment into an equality comparison
        if (ret = (mix_meta_update (astream) &&
                ^
                ==
mix.c:1477:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        ftruncate (fd,size);    /* revert file */
        ^~~~~~~~~  ~~~~~~~
mix.c:1519:32: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (ret = compare_cstring (mailbox,"INBOX") ?
                               ^~~~~~~
./misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
mix.c:1519:40: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (ret = compare_cstring (mailbox,"INBOX") ?
                                       ^~~~~~~
./misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
mix.c:1519:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = compare_cstring (mailbox,"INBOX") ?
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1519:13: note: place parentheses around the assignment to silence this warning
    if (ret = compare_cstring (mailbox,"INBOX") ?
            ^
mix.c:1519:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = compare_cstring (mailbox,"INBOX") ?
            ^
            ==
mix.c:1536:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
        ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1536:13: note: place parentheses around the assignment to silence this warning
    if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
            ^
mix.c:1536:13: note: use '==' to turn this assignment into an equality comparison
    if (ret = ((astream = mail_open (NIL,mailbox,OP_SILENT)) &&
            ^
            ==
mix.c:1550:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
               ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:1550:41: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
      sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
                                        ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:1550:63: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
      sprintf (local->buf,MSRFMT,MSGTOK,0,0,0,0,0,0,0,'+',0,0,0);
                                                              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:1551:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      hdrsize = strlen (local->buf);
                        ^~~~~~~~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:1555:45: warning: passing 'unsigned long *' to parameter of type 'long *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) {
                                            ^~~~~
mix.c:159:55: note: passing argument to parameter 'size' here
FILE *mix_data_open (MAILSTREAM *stream,int *fd,long *size,
                                                      ^
mix.c:1555:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) {
          ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1555:16: note: place parentheses around the assignment to silence this warning
      if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) {
               ^
          (                                                                )
mix.c:1555:16: note: use '==' to turn this assignment into an equality comparison
      if (msgf = mix_data_open (astream,&fd,&size,hdrsize + SIZE (message))) {
               ^
               ==
mix.c:1563:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (date && !(ret = mail_parse_date (&elt,date))) {
                                                         ^~~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mix.c:1570:30: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_parse_date (&elt,tmp);
                                    ^~~
./mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mix.c:1594:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (fd,size);  /* revert all writes to file*/
          ^~~~~~~~~  ~~~~~~~
mix.c:1632:17: warning: unused variable 'i' [-Wunused-variable]
  unsigned long i,j,k,uf,hoff;
                ^
mix.c:1632:26: warning: unused variable 'hoff' [-Wunused-variable]
  unsigned long i,j,k,uf,hoff;
                         ^
mix.c:1743:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  else if (s = mix_meta_slurp (stream,&i)) {
           ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1743:14: note: place parentheses around the assignment to silence this warning
  else if (s = mix_meta_slurp (stream,&i)) {
             ^
           (                             )
mix.c:1743:14: note: use '==' to turn this assignment into an equality comparison
  else if (s = mix_meta_slurp (stream,&i)) {
             ^
             ==
mix.c:1750:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strstr (t = s,"\015\012")) {
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:1750:8: note: place parentheses around the assignment to silence this warning
        if (s = strstr (t = s,"\015\012")) {
              ^
            (                            )
mix.c:1750:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strstr (t = s,"\015\012")) {
              ^
              ==
mix.c:1779:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              if (t = strchr (k = t,' ')) *t++ = '\0';
                  ~~^~~~~~~~~~~~~~~~~~~~
mix.c:1779:14: note: place parentheses around the assignment to silence this warning
              if (t = strchr (k = t,' ')) *t++ = '\0';
                    ^
                  (                     )
mix.c:1779:14: note: use '==' to turn this assignment into an equality comparison
              if (t = strchr (k = t,' ')) *t++ = '\0';
                    ^
                    ==
mix.c:1823:42: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      while ((s = mix_read_record (*idxf,LOCAL->buf,LOCAL->buflen,"index")) &&
                                         ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:163:38: note: passing argument to parameter 'buf' here
char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type);
                                     ^
mix.c:1959:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          if (stat (mix_file_data (LOCAL->buf,stream->mailbox,
                                                   ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:2041:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (LOCAL->buf,
        ~~~~~~~~~^~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:2044:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        MM_LOG (LOCAL->buf,ERROR);
                ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./mail.h:1599:20: note: passing argument to parameter 'string' here
void mm_log (char *string,long errflg);
                   ^
mix.c:2054:43: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          while ((t = s = mix_read_record (statf,LOCAL->buf,LOCAL->buflen,
                                                 ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:163:38: note: passing argument to parameter 'buf' here
char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type);
                                     ^
mix.c:2150:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    LOCAL->buf = (char *) fs_get ((LOCAL->buflen = sbuf.st_size) + 1);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2155:27: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      (read (LOCAL->mfd,s = LOCAL->buf,sbuf.st_size) != sbuf.st_size))
                          ^ ~~~~~~~~~~
mix.c:2190:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf,SEQFMT,LOCAL->metaseq = mix_modseq (LOCAL->metaseq));
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:2191:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:2191:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT,
                                  ^
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:2191:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sprintf (LOCAL->buf + strlen (LOCAL->buf),MTAFMT,
    ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
mix.c:2193:56: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (i = 0, c = 'K', s = ss = LOCAL->buf + strlen (LOCAL->buf);
                                                       ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
mix.c:2194:26: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
         (i < NUSERFLAGS) && (t = stream->user_flags[i]); ++i) {
                                ^ ~~~~~~~~~~~~~~~~~~~~~
mix.c:2208:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    ret = (write (LOCAL->mfd,LOCAL->buf,i) == i) ? LONGT : NIL;
                             ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
./env_unix.h:89:31: note: passing argument to parameter 'buf' here
long safe_write (int fd,char *buf,long nbytes);
                              ^
mix.c:2209:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    ftruncate (LOCAL->mfd,i);   /* and tie off at that point */
    ^~~~~~~~~  ~~~~~~~~~~~~
mix.c:2237:22: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                            ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2237:46: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                                                    ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2237:48: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                                                      ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2237:50: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                                                        ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2237:52: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                                                          ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2237:54: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,IXRFMT,0,14,4,4,13,0,0,'+',0,0,0,0,0,0,0);
                                                            ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2255:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (fileno (idxf),sbuf.st_size);
          ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2288:16: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      if (ret) ftruncate (fileno (idxf),ftell (idxf));
               ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2318:22: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,STRFMT,0,0,0,0);
                            ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2318:24: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,STRFMT,0,0,0,0);
                              ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2318:28: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat]
        sprintf (tmp,STRFMT,0,0,0,0);
                                  ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mix.c:2335:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate (fileno (statf),sbuf.st_size);
          ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2369:16: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      if (ret) ftruncate (fileno (statf),ftell (statf));
               ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2400:35: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if ((*fd = open (mix_file_data (LOCAL->buf,stream->mailbox,LOCAL->newmsg),
                                  ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:2416:7: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                          (LOCAL->buf,stream->mailbox,
                           ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:167:28: note: passing argument to parameter 'dst' here
char *mix_file_data (char *dst,char *dir,unsigned long data);
                           ^
mix.c:2425:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET);
        ~~~~~^~~~~~~~~~~~~~~~~~~~
mix.c:2425:14: note: place parentheses around the assignment to silence this warning
    if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET);
             ^
        (                        )
mix.c:2425:14: note: use '==' to turn this assignment into an equality comparison
    if (msgf = fdopen (*fd,"r+b")) fseek (msgf,*size,SEEK_SET);
             ^
             ==
mix.c:2466:44: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((s = t = mix_read_record (srtcf,LOCAL->buf,LOCAL->buflen,
                                           ^~~~~~~~~~
mix.c:110:15: note: expanded from macro 'LOCAL'
#define LOCAL ((MIXLOCAL *) stream->local)
              ^
mix.c:163:38: note: passing argument to parameter 'buf' here
char *mix_read_record (FILE *f,char *buf,unsigned long buflen,char *type);
                                     ^
mix.c:2489:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                      if (i = mail_msgno (stream,uid)) {
                          ~~^~~~~~~~~~~~~~~~~~~~~~~~~
mix.c:2489:15: note: place parentheses around the assignment to silence this warning
                      if (i = mail_msgno (stream,uid)) {
                            ^
                          (                          )
mix.c:2489:15: note: use '==' to turn this assignment into an equality comparison
                      if (i = mail_msgno (stream,uid)) {
                            ^
                            ==
mix.c:2565:21: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                              LOCAL->buf = (char *)
                                         ^ ~~~~~~~~
mix.c:2577:15: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            for (s = LOCAL->buf,sl = NIL,
                                   ^ ~~~~~~~~~~
mix.c:2585:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                sl->text.data = cpystr (s);
                                              ^ ~~~~~~~~~~
mix.c:2668:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (sl = s->references) /* count length of references */
            ~~~^~~~~~~~~~~~~~~
mix.c:2668:9: note: place parentheses around the assignment to silence this warning
        if (sl = s->references) /* count length of references */
               ^
            (                 )
mix.c:2668:9: note: use '==' to turn this assignment into an equality comparison
        if (sl = s->references) /* count length of references */
               ^
               ==
mix.c:2697:16: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      if (ret) ftruncate (fileno (f),ftell (f));
               ^~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~
mix.c:2723:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (buf,'\012')) {
        ~~^~~~~~~~~~~~~~~~~~~~~
mix.c:2723:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (buf,'\012')) {
          ^
        (                      )
mix.c:2723:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (buf,'\012')) {
          ^
          ==
171 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
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
echo lnp > OSTYPE
touch rebuild
sh -c 'rm -rf rebuild || true'
Building bundled tools...
cd mtest;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mtest'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o mtest.o mtest.c
mtest.c:111:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (suffix = strchr (tmp,',')) suffix[0] = '\0';
          ~~~~~~~^~~~~~~~~~~~~~~~~~
mtest.c:111:18: note: place parentheses around the assignment to silence this warning
      if (suffix = strchr (tmp,',')) suffix[0] = '\0';
                 ^
          (                        )
mtest.c:111:18: note: use '==' to turn this assignment into an equality comparison
      if (suffix = strchr (tmp,',')) suffix[0] = '\0';
                 ^
                 ==
mtest.c:124:10: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  ucase (tmp);
         ^~~
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
mtest.c:132:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (s = sm_read (&sdb)) {
          ~~^~~~~~~~~~~~~~~~
mtest.c:132:13: note: place parentheses around the assignment to silence this warning
      if (s = sm_read (&sdb)) {
            ^
          (                 )
mtest.c:132:13: note: use '==' to turn this assignment into an equality comparison
      if (s = sm_read (&sdb)) {
            ^
            ==
mtest.c:135:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        while (s = sm_read (&sdb));
               ~~^~~~~~~~~~~~~~~~
mtest.c:135:11: note: place parentheses around the assignment to silence this warning
        while (s = sm_read (&sdb));
                 ^
               (                 )
mtest.c:135:11: note: use '==' to turn this assignment into an equality comparison
        while (s = sm_read (&sdb));
                 ^
                 ==
mtest.c:165:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (arg = strchr (cmd,' ')) *arg++ = '\0';
        ~~~~^~~~~~~~~~~~~~~~~~
mtest.c:165:13: note: place parentheses around the assignment to silence this warning
    if (arg = strchr (cmd,' ')) *arg++ = '\0';
            ^
        (                     )
mtest.c:165:13: note: use '==' to turn this assignment into an equality comparison
    if (arg = strchr (cmd,' ')) *arg++ = '\0';
            ^
            ==
mtest.c:166:21: warning: passing 'char [1024]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    switch (*ucase (cmd)) {     /* dispatch based on command */
                    ^~~
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
mtest.c:205:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = sm_read (&sdb)) {
            ~~^~~~~~~~~~~~~~~~
mtest.c:205:8: note: place parentheses around the assignment to silence this warning
        if (s = sm_read (&sdb)) {
              ^
            (                 )
mtest.c:205:8: note: use '==' to turn this assignment into an equality comparison
        if (s = sm_read (&sdb)) {
              ^
              ==
mtest.c:208:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (s = sm_read (&sdb));
                 ~~^~~~~~~~~~~~~~~~
mtest.c:208:13: note: place parentheses around the assignment to silence this warning
          while (s = sm_read (&sdb));
                   ^
                 (                 )
mtest.c:208:13: note: use '==' to turn this assignment into an equality comparison
          while (s = sm_read (&sdb));
                   ^
                   ==
mtest.c:378:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    mail_parse_date (&selt,ov->date);
                           ^~~~~~~~
../c-client/mail.h:1690:56: note: passing argument to parameter 'string' here
long mail_parse_date (MESSAGECACHE *elt,unsigned char *string);
                                                       ^
mtest.c:393:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (i = elt->user_flags) {
        ~~^~~~~~~~~~~~~~~~~
mtest.c:393:11: note: place parentheses around the assignment to silence this warning
    if (i = elt->user_flags) {
          ^
        (                  )
mtest.c:393:11: note: use '==' to turn this assignment into an equality comparison
    if (i = elt->user_flags) {
          ^
          ==
mtest.c:431:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (i = cache->user_flags) {
      ~~^~~~~~~~~~~~~~~~~~~
mtest.c:431:9: note: place parentheses around the assignment to silence this warning
  if (i = cache->user_flags) {
        ^
      (                    )
mtest.c:431:9: note: use '==' to turn this assignment into an equality comparison
  if (i = cache->user_flags) {
        ^
        ==
mtest.c:468:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (par = body->parameter) do
        ~~~~^~~~~~~~~~~~~~~~~
mtest.c:468:13: note: place parentheses around the assignment to silence this warning
    if (par = body->parameter) do
            ^
        (                    )
mtest.c:468:13: note: use '==' to turn this assignment into an equality comparison
    if (par = body->parameter) do
            ^
            ==
mtest.c:470:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    while (par = par->next);
           ~~~~^~~~~~~~~~~
mtest.c:470:16: note: place parentheses around the assignment to silence this warning
    while (par = par->next);
               ^
           (              )
mtest.c:470:16: note: use '==' to turn this assignment into an equality comparison
    while (par = par->next);
               ^
               ==
mtest.c:525:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (i = imap_cap (stream)->auth) {
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:525:8: note: place parentheses around the assignment to silence this warning
        if (i = imap_cap (stream)->auth) {
              ^
            (                          )
mtest.c:525:8: note: use '==' to turn this assignment into an equality comparison
        if (i = imap_cap (stream)->auth) {
              ^
              ==
mtest.c:528:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (auth = mail_lookup_auth (find_rightmost_bit (&i) + 1)) {
                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:528:16: note: place parentheses around the assignment to silence this warning
          while (auth = mail_lookup_auth (find_rightmost_bit (&i) + 1)) {
                      ^
                 (                                                    )
mtest.c:528:16: note: use '==' to turn this assignment into an equality comparison
          while (auth = mail_lookup_auth (find_rightmost_bit (&i) + 1)) {
                      ^
                      ==
mtest.c:574:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (i = imap_cap (stream)->extlevel) {
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:574:8: note: place parentheses around the assignment to silence this warning
        if (i = imap_cap (stream)->extlevel) {
              ^
            (                              )
mtest.c:574:8: note: use '==' to turn this assignment into an equality comparison
        if (i = imap_cap (stream)->extlevel) {
              ^
              ==
mtest.c:598:3: warning: 'gets' is deprecated [-Wdeprecated-declarations]
  gets (txt);
  ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:233:1: note: 'gets' declared here
gets (char *__str)
^
mtest.c:598:3: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
  gets (txt);
  ^~~~  ~~~
mtest.c:710:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (user,'\n')) *s = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~
mtest.c:710:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (user,'\n')) *s = '\0';
          ^
        (                     )
mtest.c:710:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (user,'\n')) *s = '\0';
          ^
          ==
mtest.c:708:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fgets (user,NETMAXUSER-1,stdin);
    ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:782:10: warning: 'gets' is deprecated [-Wdeprecated-declarations]
  while (gets (line)) {
         ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:233:1: note: 'gets' declared here
gets (char *__str)
^
mtest.c:793:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  msg->date = (char *) fs_get (1+strlen (line));
            ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:794:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  strcpy (msg->date,line);
          ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string3.h:102:33: note: passing argument to parameter '__dest' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
mtest.c:797:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (stream = smtp_open (hostlist,debug)) {
        ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:797:16: note: place parentheses around the assignment to silence this warning
    if (stream = smtp_open (hostlist,debug)) {
               ^
        (                                  )
mtest.c:797:16: note: use '==' to turn this assignment into an equality comparison
    if (stream = smtp_open (hostlist,debug)) {
               ^
               ==
mtest.c:804:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (stream = nntp_open (newslist,debug)) {
        ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
mtest.c:804:16: note: place parentheses around the assignment to silence this warning
    if (stream = nntp_open (newslist,debug)) {
               ^
        (                                  )
mtest.c:804:16: note: use '==' to turn this assignment into an equality comparison
    if (stream = nntp_open (newslist,debug)) {
               ^
               ==
25 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o mtest mtest.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
mtest.o: In function `prompt':
/«BUILDDIR»/alpine-2.10+dfsg/imap/mtest/mtest.c:598: warning: the `gets' function is dangerous and should not be used.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mtest'
cd ipopd;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/ipopd'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o ipop2d.o ipop2d.c
ipop2d.c:149:14: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ucase (s);                /* canonicalize case */
             ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
ipop2d.c:299:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (u,'*')) *s++ = '\0';
        ~~^~~~~~~~~~~~~~~~
ipop2d.c:299:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (u,'*')) *s++ = '\0';
          ^
        (                 )
ipop2d.c:299:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (u,'*')) *s++ = '\0';
          ^
          ==
ipop2d.c:358:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (j = (stream = mail_open (stream,t,NIL)) ? stream->nmsgs : 0) {
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ipop2d.c:358:9: note: place parentheses around the assignment to silence this warning
  if (j = (stream = mail_open (stream,t,NIL)) ? stream->nmsgs : 0) {
        ^
      (                                                          )
ipop2d.c:358:9: note: use '==' to turn this assignment into an equality comparison
  if (j = (stream = mail_open (stream,t,NIL)) ? stream->nmsgs : 0) {
        ^
        ==
ipop2d.c:432:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = mail_fetch_text (stream,msg[current],NIL,&i,FT_RETURNSTRINGSTRUCT))
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ipop2d.c:432:11: note: place parentheses around the assignment to silence this warning
    if (t = mail_fetch_text (stream,msg[current],NIL,&i,FT_RETURNSTRINGSTRUCT))
          ^
        (                                                                     )
ipop2d.c:432:11: note: use '==' to turn this assignment into an equality comparison
    if (t = mail_fetch_text (stream,msg[current],NIL,&i,FT_RETURNSTRINGSTRUCT))
          ^
          ==
4 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o ipop2d ipop2d.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o ipop3d.o ipop3d.c
ipop3d.c:129:37: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while (auth && compare_cstring (auth->name,"CRAM-MD5")) auth = auth->next;
                                    ^~~~~~~~~~
../c-client/misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
ipop3d.c:129:48: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while (auth && compare_cstring (auth->name,"CRAM-MD5")) auth = auth->next;
                                               ^~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
ipop3d.c:186:14: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      ucase (s);                /* canonicalize case */
             ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
ipop3d.c:195:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
            ~~^~~~~~~~~~~~~~~~~~~~~
ipop3d.c:195:8: note: place parentheses around the assignment to silence this warning
        if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
              ^
            (                      )
ipop3d.c:195:8: note: use '==' to turn this assignment into an equality comparison
        if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
              ^
              ==
ipop3d.c:197:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (i = !mail_parameters (NIL,GET_DISABLEPLAINTEXT,NIL))
            ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ipop3d.c:197:8: note: place parentheses around the assignment to silence this warning
        if (i = !mail_parameters (NIL,GET_DISABLEPLAINTEXT,NIL))
              ^
            (                                                  )
ipop3d.c:197:8: note: use '==' to turn this assignment into an equality comparison
        if (i = !mail_parameters (NIL,GET_DISABLEPLAINTEXT,NIL))
              ^
              ==
ipop3d.c:222:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (initial = strtok (NIL,"\015\012")) {
                ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
ipop3d.c:222:18: note: place parentheses around the assignment to silence this warning
            if (initial = strtok (NIL,"\015\012")) {
                        ^
                (                                )
ipop3d.c:222:18: note: use '==' to turn this assignment into an equality comparison
            if (initial = strtok (NIL,"\015\012")) {
                        ^
                        ==
ipop3d.c:275:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          if (t = ssl_start_tls (pgmname)) {
              ~~^~~~~~~~~~~~~~~~~~~~~~~~~
ipop3d.c:275:10: note: place parentheses around the assignment to silence this warning
          if (t = ssl_start_tls (pgmname)) {
                ^
              (                          )
ipop3d.c:275:10: note: use '==' to turn this assignment into an equality comparison
          if (t = ssl_start_tls (pgmname)) {
                ^
                ==
ipop3d.c:291:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (s = strchr (t,':')) {
                ~~^~~~~~~~~~~~~~~~
ipop3d.c:291:12: note: place parentheses around the assignment to silence this warning
            if (s = strchr (t,':')) {
                  ^
                (                 )
ipop3d.c:291:12: note: use '==' to turn this assignment into an equality comparison
            if (s = strchr (t,':')) {
                  ^
                  ==
ipop3d.c:664:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = strchr (user,'*')) *t++ ='\0';
        ~~^~~~~~~~~~~~~~~~~~~
ipop3d.c:664:11: note: place parentheses around the assignment to silence this warning
    if (t = strchr (user,'*')) *t++ ='\0';
          ^
        (                    )
ipop3d.c:664:11: note: use '==' to turn this assignment into an equality comparison
    if (t = strchr (user,'*')) *t++ ='\0';
          ^
          ==
ipop3d.c:780:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (j = stream->nmsgs) {    /* if mailbox non-empty */
        ~~^~~~~~~~~~~~~~~
ipop3d.c:780:11: note: place parentheses around the assignment to silence this warning
    if (j = stream->nmsgs) {    /* if mailbox non-empty */
          ^
        (                )
ipop3d.c:780:11: note: use '==' to turn this assignment into an equality comparison
    if (j = stream->nmsgs) {    /* if mailbox non-empty */
          ^
          ==
10 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o ipop3d ipop3d.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/ipopd'
cd imapd;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/imapd'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -DANOFILE=\"/etc/anonymous.newsgroups\" -DALERTFILE=\"/etc/imapd.alert\" -DNNTPFILE=\"/etc/imapd.nntp\" -DUSERALERTFILE=\".imapalert\" -DSHUTDOWNFILE=\"/etc/nologin\"   -c -o imapd.o imapd.c
imapd.c:302:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (((s = strrchr (argv[0],'/')) || (s = strrchr (argv[0],'\\'))) ?
         ^ ~~~~~~~~~~~~~~~~~~~~~
imapd.c:302:41: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    (((s = strrchr (argv[0],'/')) || (s = strrchr (argv[0],'\\'))) ?
                                        ^ ~~~~~~~~~~~~~~~~~~~~~~
imapd.c:307:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  rfc822_date (tmp);            /* get date/time at startup */
               ^~~
../c-client/env.h:32:25: note: passing argument to parameter 'date' here
void rfc822_date (char *date);
                        ^
imapd.c:327:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (s = strchr (proxy,'\n')) *s = '\0';
              ^ ~~~~~~~~~~~~~~~~~~~
imapd.c:327:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strchr (proxy,'\n')) *s = '\0';
            ~~^~~~~~~~~~~~~~~~~~~~~
imapd.c:327:8: note: place parentheses around the assignment to silence this warning
        if (s = strchr (proxy,'\n')) *s = '\0';
              ^
            (                      )
imapd.c:327:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strchr (proxy,'\n')) *s = '\0';
              ^
              ==
imapd.c:334:7: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    s = myusername_full (&i);   /* get user name and flags */
      ^ ~~~~~~~~~~~~~~~~~~~~
imapd.c:342:9: warning: assigning to 'unsigned char *' from 'char [10]' converts between pointers to integer types with different sign [-Wpointer-sign]
      s = "ANONYMOUS";
        ^ ~~~~~~~~~~~
imapd.c:346:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      user = cpystr (s);        /* copy user name */
                     ^
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:346:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      user = cpystr (s);        /* copy user name */
           ^ ~~~~~~~~~~
imapd.c:347:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      pass = cpystr ("*");      /* set fake password */
           ^ ~~~~~~~~~~~~
imapd.c:356:14: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      PSOUT (user);
             ^~~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:370:10: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  PSOUT (tmp);
         ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:392:12: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    slurp (cmdbuf,CMDLEN,TIMEOUT);
           ^~~~~~
imapd.c:127:19: note: passing argument to parameter 's' here
void slurp (char *s,int n,unsigned long timeout);
                  ^
imapd.c:399:18: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strchr (cmdbuf,'\012')) {
                 ^~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:400:23: warning: passing 'unsigned char [65536]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (t = strchr (cmdbuf,' ')) *t = '\0';
                      ^~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:400:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (t = strchr (cmdbuf,' ')) *t = '\0';
            ^ ~~~~~~~~~~~~~~~~~~~
imapd.c:400:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (t = strchr (cmdbuf,' ')) *t = '\0';
          ~~^~~~~~~~~~~~~~~~~~~~~
imapd.c:400:13: note: place parentheses around the assignment to silence this warning
      if (t = strchr (cmdbuf,' ')) *t = '\0';
            ^
          (                      )
imapd.c:400:13: note: use '==' to turn this assignment into an equality comparison
      if (t = strchr (cmdbuf,' ')) *t = '\0';
            ^
            ==
imapd.c:406:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      sprintf (tmp,response,t ? (char *) cmdbuf : "*");
               ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:407:14: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      PSOUT (tmp);
             ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:409:30: warning: passing 'unsigned char [65536]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!(tag = strtok (cmdbuf," \015\012"))) {
                             ^~~~~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:416:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!(s = strtok (NIL," \015\012"))) {
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:428:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s,"UID") && strtok (NIL," \015\012")) {
                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:436:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      cmd = cpystr (s);         /* save current command */
                    ^
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:436:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      cmd = cpystr (s);         /* save current command */
          ^ ~~~~~~~~~~
imapd.c:438:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if ((arg = strtok (NIL,"\015\012")) && ((i = strlen (arg)) > 3) &&
               ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:438:60: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if ((arg = strtok (NIL,"\015\012")) && ((i = strlen (arg)) > 3) &&
                                                           ^~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:444:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          litplus.size = strtoul (arg + i + 1,NIL,10);
                                  ^~~~~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:449:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (cmd,"NOOP")) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:454:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"LOGOUT")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:466:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (cmd,"CAPABILITY")) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:488:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"AUTHENTICATE")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:498:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strcmp (ucase (s),"ANONYMOUS") && !stat (ANOFILE,&sbuf)) {
                            ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:499:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!(s = imap_responder ("",0,NIL)))
                    ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:503:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              user = cpystr ("ANONYMOUS");
                   ^ ~~~~~~~~~~~~~~~~~~~~
imapd.c:504:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              pass = cpystr ("*");
                   ^ ~~~~~~~~~~~~
imapd.c:514:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
                                             ^
../c-client/mail.h:1799:24: note: passing argument to parameter 'mechanism' here
char *mail_auth (char *mechanism,authresponse_t resp,int argc,char *argv[]);
                       ^
imapd.c:514:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:514:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
                   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:514:18: note: place parentheses around the assignment to silence this warning
          else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
                        ^
                   (                                                     )
imapd.c:514:18: note: use '==' to turn this assignment into an equality comparison
          else if (user = cpystr (mail_auth (s,imap_responder,argc,argv))) {
                        ^
                        ==
imapd.c:515:11: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            pass = cpystr ("*");
                 ^ ~~~~~~~~~~~~
imapd.c:525:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            char *msg = (char *) fs_get (strlen (cmd) + strlen (s) + 2);
                                                 ^~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:525:58: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            char *msg = (char *) fs_get (strlen (cmd) + strlen (s) + 2);
                                                                ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:528:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            cmd = msg;
                ^ ~~~
imapd.c:530:31: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 auth && compare_cstring (s,auth->name); auth = auth->next);
                                            ^~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:555:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LOGIN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:559:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!((user = cpystr (snarf (&arg))) &&
                                ^~~~~~~~~~~~
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:559:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!((user = cpystr (snarf (&arg))) &&
                      ^ ~~~~~~~~~~~~~~~~~~~~~
imapd.c:560:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (pass = cpystr (snarf (&arg))))) response = misarg;
                                ^~~~~~~~~~~~
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:560:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (pass = cpystr (snarf (&arg))))) response = misarg;
                      ^ ~~~~~~~~~~~~~~~~~~~~~
imapd.c:563:36: warning: passing 'char [10]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!compare_cstring (user,"ANONYMOUS") &&
                                          ^~~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:574:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (s = strchr (user,'*')) *s++ ='\0';
                            ^~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:574:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (s = strchr (user,'*')) *s++ ='\0';
                  ^ ~~~~~~~~~~~~~~~~~
imapd.c:574:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (s = strchr (user,'*')) *s++ ='\0';
                ~~^~~~~~~~~~~~~~~~~~~
imapd.c:574:12: note: place parentheses around the assignment to silence this warning
            if (s = strchr (user,'*')) *s++ ='\0';
                  ^
                (                    )
imapd.c:574:12: note: use '==' to turn this assignment into an equality comparison
            if (s = strchr (user,'*')) *s++ ='\0';
                  ^
                  ==
imapd.c:576:24: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (server_login (user,pass,s,argc,argv)) {
                              ^~~~
../c-client/env.h:39:26: note: passing argument to parameter 'user' here
long server_login (char *user,char *pass,char *authuser,int argc,char *argv[]);
                         ^
imapd.c:576:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (server_login (user,pass,s,argc,argv)) {
                                   ^~~~
../c-client/env.h:39:37: note: passing argument to parameter 'pass' here
long server_login (char *user,char *pass,char *authuser,int argc,char *argv[]);
                                    ^
imapd.c:576:34: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (server_login (user,pass,s,argc,argv)) {
                                        ^
../c-client/env.h:39:48: note: passing argument to parameter 'authuser' here
long server_login (char *user,char *pass,char *authuser,int argc,char *argv[]);
                                               ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:590:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STARTTLS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:592:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          else if (lsterr = ssl_start_tls (pgmname)) response = lose;
                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:592:20: note: place parentheses around the assignment to silence this warning
          else if (lsterr = ssl_start_tls (pgmname)) response = lose;
                          ^
                   (                               )
imapd.c:592:20: note: use '==' to turn this assignment into an equality comparison
          else if (lsterr = ssl_start_tls (pgmname)) response = lose;
                          ^
                          ==
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:599:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                     ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:599:40: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (!strcmp (cmd,"FETCH") || !strcmp (cmd,"UID FETCH")) {
                                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:600:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (t = strtok(NIL,"\015\012"))))
                                    ^~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:600:20: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (t = strtok(NIL,"\015\012"))))
                          ^ ~~~~~~~~~~~~~~~~
imapd.c:600:46: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (t = strtok(NIL,"\015\012"))))
                                                    ^ ~~~~~~~~~~~~~~~~~~~~~~
imapd.c:603:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   mail_sequence (stream,s)) fetch (t,uid);
                                                    ^
imapd.c:148:19: note: passing argument to parameter 't' here
void fetch (char *t,unsigned long uid);
                  ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:607:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:607:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STORE") || !strcmp (cmd,"UID STORE")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:609:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (v = strtok (NIL," ")) &&
                                    ^~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:609:20: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (v = strtok (NIL," ")) &&
                          ^ ~~~~~~~~~~~~~~~~
imapd.c:609:46: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (v = strtok (NIL," ")) &&
                                                    ^ ~~~~~~~~~~~~~~~~
imapd.c:610:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (t = strtok (NIL,"\015\012")))) response = misarg;
                   ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:615:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                         ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:615:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (ucase (v),"FLAGS") || !strcmp (v,"FLAGS.SILENT")) {
                                                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:616:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              strcpy (tmp,"\\Answered \\Flagged \\Deleted \\Draft \\Seen");
                      ^~~
/usr/include/x86_64-linux-gnu/bits/string3.h:102:33: note: passing argument to parameter '__dest' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:618:29: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   (i < NUSERFLAGS) && (v = stream->user_flags[i]); i++)
                                          ^ ~~~~~~~~~~~~~~~~~~~~~
imapd.c:619:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (strlen (v) <
                            ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:620:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    ((size_t) (MAILTMPLEN - ((u += strlen (u)) + 2 - tmp)))) {
                                                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:622:13: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  strcpy (u,v);
                          ^
/usr/include/x86_64-linux-gnu/bits/string3.h:102:33: note: passing argument to parameter '__dest' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:622:15: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  strcpy (u,v);
                            ^
/usr/include/x86_64-linux-gnu/bits/string3.h:102:64: note: passing argument to parameter '__src' here
__NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
                                                               ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:624:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_flag (stream,s,tmp,f & ~ST_SET);
                                ^
../c-client/mail.h:1668:42: note: passing argument to parameter 'sequence' here
void mail_flag (MAILSTREAM *stream,char *sequence,char *flag,long flags);
                                         ^
imapd.c:624:28: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_flag (stream,s,tmp,f & ~ST_SET);
                                  ^~~
../c-client/mail.h:1668:57: note: passing argument to parameter 'flag' here
void mail_flag (MAILSTREAM *stream,char *sequence,char *flag,long flags);
                                                        ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:626:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:626:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (v,"-FLAGS") || !strcmp (v,"-FLAGS.SILENT"))
                                                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:628:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:628:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (strcmp (v,"+FLAGS") && strcmp (v,"+FLAGS.SILENT")) {
                                                    ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:634:24: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            mail_flag (stream,s,t,f);
                              ^
../c-client/mail.h:1668:42: note: passing argument to parameter 'sequence' here
void mail_flag (MAILSTREAM *stream,char *sequence,char *flag,long flags);
                                         ^
imapd.c:634:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            mail_flag (stream,s,t,f);
                                ^
../c-client/mail.h:1668:57: note: passing argument to parameter 'flag' here
void mail_flag (MAILSTREAM *stream,char *sequence,char *flag,long flags);
                                                        ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:645:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CHECK")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:655:35: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || (strcmp (cmd,"EXPUNGE") &&
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:656:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 strcmp (cmd,"UID EXPUNGE")))) {
                                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:660:32: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            mail_expunge_full (stream,arg,arg ? EX_UID : NIL);
                                      ^~~
../c-client/mail.h:1675:50: note: passing argument to parameter 'sequence' here
long mail_expunge_full (MAILSTREAM *stream,char *sequence,long options);
                                                 ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:666:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:666:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"CLOSE") || !strcmp (cmd,"UNSELECT")) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:682:14: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                           ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:682:38: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                 (!strcmp (cmd,"COPY") || !strcmp (cmd,"UID COPY"))) {
                                                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:684:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (arg = strtok(NIL,"\015\012"))
                                    ^~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:684:20: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (arg = strtok(NIL,"\015\012"))
                          ^ ~~~~~~~~~~~~~~~~
imapd.c:684:48: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (arg = strtok(NIL,"\015\012"))
                                                      ^ ~~~~~~~~~~~~~~~~~~~~~~
imapd.c:694:37: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!mail_copy_full (stream,s,t,uid ? CP_UID : NIL)) {
                                           ^
../c-client/mail.h:1676:47: note: passing argument to parameter 'sequence' here
long mail_copy_full (MAILSTREAM *stream,char *sequence,char *mailbox,
                                              ^
imapd.c:694:39: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!mail_copy_full (stream,s,t,uid ? CP_UID : NIL)) {
                                             ^
../c-client/mail.h:1676:62: note: passing argument to parameter 'mailbox' here
long mail_copy_full (MAILSTREAM *stream,char *sequence,char *mailbox,
                                                             ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:701:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:701:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SORT") || !strcmp (cmd,"UID SORT")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:703:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (*arg == '(') && (t = strchr (s = arg + 1,')')) &&
                                                     ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:703:37: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (*arg == '(') && (t = strchr (s = arg + 1,')')) &&
                                           ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:711:24: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!(s = strtok (ucase (s)," "))) response = badatt;
                              ^~~~~~~~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:711:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!(s = strtok (ucase (s)," "))) response = badatt;
                    ^ ~~~~~~~~~~~~~~~~~~~~~~
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:716:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"REVERSE")) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:718:13: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  if (!(s = strtok (NIL," "))) {
                          ^ ~~~~~~~~~~~~~~~~
imapd.c:719:9: warning: assigning to 'unsigned char *' from 'char [1]' converts between pointers to integer types with different sign [-Wpointer-sign]
                    s = "";     /* end of attributes */
                      ^ ~~
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:723:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (!strcmp (s,"DATE")) pg->function = SORTDATE;
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:724:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"ARRIVAL")) pg->function = SORTARRIVAL;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:725:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"FROM")) pg->function = SORTFROM;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:726:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SUBJECT")) pg->function = SORTSUBJECT;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:727:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"TO")) pg->function = SORTTO;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:728:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"CC")) pg->function = SORTCC;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:729:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                else if (!strcmp (s,"SIZE")) pg->function = SORTSIZE;
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:731:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              } while (s = strtok (NIL," "));
                         ^ ~~~~~~~~~~~~~~~~
imapd.c:731:19: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              } while (s = strtok (NIL," "));
                       ~~^~~~~~~~~~~~~~~~~~
imapd.c:731:19: note: place parentheses around the assignment to silence this warning
              } while (s = strtok (NIL," "));
                         ^
                       (                   )
imapd.c:731:19: note: use '==' to turn this assignment into an equality comparison
              } while (s = strtok (NIL," "));
                         ^
                         ==
imapd.c:735:55: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!((t = snarf (&arg)) && (cs = cpystr (t)) && arg &&
                                                             ^
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:741:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              else if (slst = mail_sort (stream,cs,spg,pgm,uid ? SE_UID:NIL)) {
                       ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:741:22: note: place parentheses around the assignment to silence this warning
              else if (slst = mail_sort (stream,cs,spg,pgm,uid ? SE_UID:NIL)) {
                            ^
                       (                                                    )
imapd.c:741:22: note: use '==' to turn this assignment into an equality comparison
              else if (slst = mail_sort (stream,cs,spg,pgm,uid ? SE_UID:NIL)) {
                            ^
                            ==
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:758:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:758:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"THREAD") || !strcmp (cmd,"UID THREAD")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:763:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (cs = strtok (NIL," ")) &&
                                    ^~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:763:20: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," ")) && (cs = strtok (NIL," ")) &&
                          ^ ~~~~~~~~~~~~~~~~
imapd.c:764:30: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (cs = cpystr (cs)) && (arg = strtok (NIL,"\015\012"))))
                                           ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:770:36: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (thr = mail_thread (stream,s,cs,spg,uid ? SE_UID : NIL)) {
                                          ^
../c-client/mail.h:1736:51: note: passing argument to parameter 'type' here
THREADNODE *mail_thread (MAILSTREAM *stream,char *type,char *charset,
                                                  ^
imapd.c:770:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (thr = mail_thread (stream,s,cs,spg,uid ? SE_UID : NIL)) {
                ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:770:14: note: place parentheses around the assignment to silence this warning
            if (thr = mail_thread (stream,s,cs,spg,uid ? SE_UID : NIL)) {
                    ^
                (                                                     )
imapd.c:770:14: note: use '==' to turn this assignment into an equality comparison
            if (thr = mail_thread (stream,s,cs,spg,uid ? SE_UID : NIL)) {
                    ^
                    ==
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:783:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:783:53: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SEARCH") || !strcmp (cmd,"UID SEARCH")) {
                                                    ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:848:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            if (s = snarf (&arg)) charset = cpystr (s);
                ~~^~~~~~~~~~~~~~
imapd.c:848:12: note: place parentheses around the assignment to silence this warning
            if (s = snarf (&arg)) charset = cpystr (s);
                  ^
                (               )
imapd.c:848:12: note: use '==' to turn this assignment into an equality comparison
            if (s = snarf (&arg)) charset = cpystr (s);
                  ^
                  ==
imapd.c:848:46: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (s = snarf (&arg)) charset = cpystr (s);
                                                    ^
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:938:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:938:43: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(strcmp (cmd,"SELECT") && strcmp (cmd,"EXAMINE") &&
                                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:939:11: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strcmp (cmd,"BBOARD"))) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:943:41: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (NIL,s = bboardname (cmd,s))) {
                                               ^~~
imapd.c:192:25: note: passing argument to parameter 'cmd' here
char *bboardname (char *cmd,char *name);
                        ^
imapd.c:943:45: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (NIL,s = bboardname (cmd,s))) {
                                                   ^
imapd.c:192:35: note: passing argument to parameter 'name' here
char *bboardname (char *cmd,char *name);
                                  ^
imapd.c:943:27: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (NIL,s = bboardname (cmd,s))) {
                                 ^ ~~~~~~~~~~~~~~~~~~
imapd.c:943:25: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (NIL,s = bboardname (cmd,s))) {
                               ^~~~~~~~~~~~~~~~~~~~~~
imapd.c:191:30: note: passing argument to parameter 'name' here
long nameok (char *ref,char *name);
                             ^
imapd.c:944:40: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            DRIVER *factory = mail_valid (NIL,s,NIL);
                                              ^
../c-client/mail.h:1612:46: note: passing argument to parameter 'mailbox' here
DRIVER *mail_valid (MAILSTREAM *stream,char *mailbox,char *purpose);
                                             ^
imapd.c:955:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (stream = mail_open (stream,s,f | OP_SILENT)) &&
                                            ^
../c-client/mail.h:1627:49: note: passing argument to parameter 'name' here
MAILSTREAM *mail_open (MAILSTREAM *stream,char *name,long options);
                                                ^
imapd.c:961:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  (t = mail_fetch_text (stream,1,NIL,&i,NIL)) &&
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:964:12: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strncpy (tmp,t,i)[i] = '\0';
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string3.h:117:34: note: passing argument to parameter '__dest' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                 ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:964:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                strncpy (tmp,t,i)[i] = '\0';
                             ^
/usr/include/x86_64-linux-gnu/bits/string3.h:117:65: note: passing argument to parameter '__src' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
imapd.c:966:20: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
imapd.c:966:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                      ^ ~~~~~~~~~~~~~~~~~~~~
imapd.c:966:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                    ~~^~~~~~~~~~~~~~~~~~~~~~
imapd.c:966:9: note: place parentheses around the assignment to silence this warning
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                      ^
                    (                       )
imapd.c:966:9: note: use '==' to turn this assignment into an equality comparison
                if (t = strpbrk (tmp,"\r\n")) *t = '\0';
                      ^
                      ==
imapd.c:968:33: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                if ((tstream = mail_open (NIL,tmp,f | OP_SILENT)) &&
                                              ^~~
../c-client/mail.h:1627:49: note: passing argument to parameter 'name' here
MAILSTREAM *mail_open (MAILSTREAM *stream,char *name,long options);
                                                ^
imapd.c:980:40: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!factory && isnewsproxy (s)) {
                                              ^
imapd.c:193:25: note: passing argument to parameter 'name' here
long isnewsproxy (char *name);
                        ^
imapd.c:981:17: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              sprintf (tmp,"{%.300s/nntp}%.300s",nntpproxy,(char *) s+6);
                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:982:35: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              stream = mail_open (stream,tmp,f);
                                         ^~~
../c-client/mail.h:1627:49: note: passing argument to parameter 'name' here
MAILSTREAM *mail_open (MAILSTREAM *stream,char *name,long options);
                                                ^
imapd.c:985:38: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else stream = mail_open (stream,s,f);
                                            ^
../c-client/mail.h:1627:49: note: passing argument to parameter 'name' here
MAILSTREAM *mail_open (MAILSTREAM *stream,char *name,long options);
                                                ^
imapd.c:991:32: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!compare_cstring (s,"#MHINBOX"))
                                      ^~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:993:50: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else lastsel = cpystr (compare_cstring (s,"INBOX") ?
                                                        ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1012:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"APPEND"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1022:37: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!mail_append_multiple (NIL,s,append_msg,(void *) &ad)) {
                                           ^
../c-client/mail.h:1680:53: note: passing argument to parameter 'mailbox' here
long mail_append_multiple (MAILSTREAM *stream,char *mailbox,append_t af,
                                                    ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1037:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1037:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LIST") || !strcmp (cmd,"RLIST")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1043:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                           ^
imapd.c:191:20: note: passing argument to parameter 'ref' here
long nameok (char *ref,char *name);
                   ^
imapd.c:1043:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                             ^
imapd.c:191:30: note: passing argument to parameter 'name' here
long nameok (char *ref,char *name);
                             ^
imapd.c:1044:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,LONGT)) {
                                  ^
imapd.c:194:30: note: passing argument to parameter 'ref' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                             ^
imapd.c:1044:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,LONGT)) {
                                    ^
imapd.c:194:40: note: passing argument to parameter 'pat' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                       ^
imapd.c:1044:32: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,LONGT)) {
                                      ^~~
imapd.c:194:50: note: passing argument to parameter 'pattern' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                                 ^
imapd.c:1046:26: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_list (NIL,"",tmp);
                                ^~~
../c-client/mail.h:1617:52: note: passing argument to parameter 'pat' here
void mail_list (MAILSTREAM *stream,char *ref,char *pat);
                                                   ^
imapd.c:1049:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_list (NIL,s,t);
                                ^
../c-client/mail.h:1617:42: note: passing argument to parameter 'ref' here
void mail_list (MAILSTREAM *stream,char *ref,char *pat);
                                         ^
imapd.c:1049:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_list (NIL,s,t);
                                  ^
../c-client/mail.h:1617:52: note: passing argument to parameter 'pat' here
void mail_list (MAILSTREAM *stream,char *ref,char *pat);
                                                   ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1055:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"SCAN")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1061:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                           ^
imapd.c:191:20: note: passing argument to parameter 'ref' here
long nameok (char *ref,char *name);
                   ^
imapd.c:1061:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                             ^
imapd.c:191:30: note: passing argument to parameter 'name' here
long nameok (char *ref,char *name);
                             ^
imapd.c:1062:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL))
                                  ^
imapd.c:194:30: note: passing argument to parameter 'ref' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                             ^
imapd.c:1062:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL))
                                    ^
imapd.c:194:40: note: passing argument to parameter 'pat' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                       ^
imapd.c:1062:32: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL))
                                      ^~~
imapd.c:194:50: note: passing argument to parameter 'pattern' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                                 ^
imapd.c:1064:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_scan (NIL,s,t,u);
                                ^
../c-client/mail.h:1616:42: note: passing argument to parameter 'ref' here
void mail_scan (MAILSTREAM *stream,char *ref,char *pat,char *contents);
                                         ^
imapd.c:1064:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_scan (NIL,s,t,u);
                                  ^
../c-client/mail.h:1616:52: note: passing argument to parameter 'pat' here
void mail_scan (MAILSTREAM *stream,char *ref,char *pat,char *contents);
                                                   ^
imapd.c:1064:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_scan (NIL,s,t,u);
                                    ^
../c-client/mail.h:1616:62: note: passing argument to parameter 'contents' here
void mail_scan (MAILSTREAM *stream,char *ref,char *pat,char *contents);
                                                             ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1070:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1070:44: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"LSUB") || !strcmp (cmd,"RLSUB")) {
                                                  ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1076:21: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                           ^
imapd.c:191:20: note: passing argument to parameter 'ref' here
long nameok (char *ref,char *name);
                   ^
imapd.c:1076:23: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (s,t)) {
                             ^
imapd.c:191:30: note: passing argument to parameter 'name' here
long nameok (char *ref,char *name);
                             ^
imapd.c:1077:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL)) newsrc_lsub (NIL,tmp);
                                  ^
imapd.c:194:30: note: passing argument to parameter 'ref' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                             ^
imapd.c:1077:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL)) newsrc_lsub (NIL,tmp);
                                    ^
imapd.c:194:40: note: passing argument to parameter 'pat' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                       ^
imapd.c:1077:32: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL)) newsrc_lsub (NIL,tmp);
                                      ^~~
imapd.c:194:50: note: passing argument to parameter 'pattern' here
long newsproxypattern (char *ref,char *pat,char *pattern,long flag);
                                                 ^
imapd.c:1077:59: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (newsproxypattern (s,t,tmp,NIL)) newsrc_lsub (NIL,tmp);
                                                                 ^~~
../c-client/newsrc.h:37:44: note: passing argument to parameter 'pattern' here
void newsrc_lsub (MAILSTREAM *stream,char *pattern);
                                           ^
imapd.c:1078:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_lsub (NIL,s,t);
                                ^
../c-client/mail.h:1618:42: note: passing argument to parameter 'ref' here
void mail_lsub (MAILSTREAM *stream,char *ref,char *pat);
                                         ^
imapd.c:1078:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_lsub (NIL,s,t);
                                  ^
../c-client/mail.h:1618:52: note: passing argument to parameter 'pat' here
void mail_lsub (MAILSTREAM *stream,char *ref,char *pat);
                                                   ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1085:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"FIND")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1087:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," \015\012")) && (s == cmd + 5) &&
                                    ^~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:1087:20: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!(arg && (s = strtok (arg," \015\012")) && (s == cmd + 5) &&
                          ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1089:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (arg = strtok (NIL,"\015\012")) && (s = snarf_list (&arg))))
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
imapd.c:1093:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (strpbrk (s,"%?")) response =
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
imapd.c:1095:25: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (nameok (NIL,s)) {
                               ^
imapd.c:191:30: note: passing argument to parameter 'name' here
long nameok (char *ref,char *name);
                             ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1098:19: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strcmp (cmd,"FIND MAILBOXES") && !anonymous)
                         ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1099:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_lsub (NIL,NIL,s);
                                 ^
../c-client/mail.h:1618:52: note: passing argument to parameter 'pat' here
void mail_lsub (MAILSTREAM *stream,char *ref,char *pat);
                                                   ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1100:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!strcmp (cmd,"FIND ALL.MAILBOXES")) {
                              ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1103:27: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              mail_list (NIL,NIL,s);
                                 ^
../c-client/mail.h:1617:52: note: passing argument to parameter 'pat' here
void mail_list (MAILSTREAM *stream,char *ref,char *pat);
                                                   ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1112:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"STATUS")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1114:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (t = strchr (arg,')')) && (t - arg) && !t[1]))
                             ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:1114:6: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                (t = strchr (arg,')')) && (t - arg) && !t[1]))
                   ^ ~~~~~~~~~~~~~~~~
imapd.c:1120:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            t = strtok (ucase (arg)," ");
                        ^~~~~~~~~~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:1120:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            t = strtok (ucase (arg)," ");
              ^ ~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1122:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strcmp (t,"MESSAGES")) f |= SA_MESSAGES;
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1123:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"RECENT")) f |= SA_RECENT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1124:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UNSEEN")) f |= SA_UNSEEN;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1125:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDNEXT")) f |= SA_UIDNEXT;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1126:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              else if (!strcmp (t,"UIDVALIDITY")) f |= SA_UIDVALIDITY;
                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1129:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                PSOUT (t);
                       ^
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1132:17: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            } while (t = strtok (NIL," "));
                       ^ ~~~~~~~~~~~~~~~~
imapd.c:1132:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
            } while (t = strtok (NIL," "));
                     ~~^~~~~~~~~~~~~~~~~~
imapd.c:1132:17: note: place parentheses around the assignment to silence this warning
            } while (t = strtok (NIL," "));
                       ^
                     (                   )
imapd.c:1132:17: note: use '==' to turn this assignment into an equality comparison
            } while (t = strtok (NIL," "));
                       ^
                       ==
imapd.c:1135:30: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"INBOX")) s = "INBOX";
                                    ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1135:42: warning: assigning to 'unsigned char *' from 'char [6]' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"INBOX")) s = "INBOX";
                                                ^ ~~~~~~~
imapd.c:1136:35: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"#MHINBOX")) s = "#MHINBOX";
                                         ^~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1136:50: warning: assigning to 'unsigned char *' from 'char [9]' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"#MHINBOX")) s = "#MHINBOX";
                                                        ^ ~~~~~~~~~~
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1139:36: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (lastsel && (!strcmp (s,lastsel) ||
                                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1140:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                                 (stream && !strcmp (s,stream->mailbox)))) {
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1144:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              PSOUT (s);
                     ^
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1148:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," MESSAGES %lu",stream->nmsgs);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1148:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," MESSAGES %lu",stream->nmsgs);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1148:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," MESSAGES %lu",stream->nmsgs);
                         ^~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1150:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," RECENT %lu",stream->recent);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1150:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," RECENT %lu",stream->recent);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1150:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," RECENT %lu",stream->recent);
                         ^~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1154:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UNSEEN %lu",unseen);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1154:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UNSEEN %lu",unseen);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1154:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UNSEEN %lu",unseen);
                         ^~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1157:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UIDNEXT %lu",stream->uid_last+1);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1157:26: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UIDNEXT %lu",stream->uid_last+1);
                                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1157:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen (tmp)," UIDNEXT %lu",stream->uid_last+1);
                         ^~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1159:25: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen(tmp)," UIDVALIDITY %lu",
                                      ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1159:25: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen(tmp)," UIDVALIDITY %lu",
                                      ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:65: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:132:43: note: expanded from macro '__bos'
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
                                          ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1159:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp + strlen(tmp)," UIDVALIDITY %lu",
                         ^~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1162:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              strcat (tmp,")\015\012");
                      ^~~
/usr/include/x86_64-linux-gnu/bits/string3.h:140:33: note: passing argument to parameter '__dest' here
__NTH (strcat (char *__restrict __dest, const char *__restrict __src))
                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
imapd.c:1164:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              pastring (s);
                        ^
imapd.c:179:22: note: passing argument to parameter 's' here
void pastring (char *s);
                     ^
imapd.c:1165:15: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              PSOUT (tmp);
                     ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1167:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (isnewsproxy (s)) {
                                  ^
imapd.c:193:25: note: passing argument to parameter 'name' here
long isnewsproxy (char *name);
                        ^
imapd.c:1168:17: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              sprintf (tmp,"{%.300s/nntp}%.300s",nntpproxy,(char *) s+6);
                       ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1169:30: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!mail_status (NIL,tmp,f)) response = lose;
                                    ^~~
../c-client/mail.h:1625:44: note: passing argument to parameter 'mbx' here
long mail_status (MAILSTREAM *stream,char *mbx,long flags);
                                           ^
imapd.c:1171:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!mail_status (NIL,s,f)) response = lose;
                                       ^
../c-client/mail.h:1625:44: note: passing argument to parameter 'mbx' here
long mail_status (MAILSTREAM *stream,char *mbx,long flags);
                                           ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1178:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"SUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1182:29: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (compare_cstring (s,"MAILBOX")) response = badarg;
                                   ^~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1185:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_subscribe (NIL,s);
                                     ^
../c-client/mail.h:1619:47: note: passing argument to parameter 'mailbox' here
long mail_subscribe (MAILSTREAM *stream,char *mailbox);
                                              ^
imapd.c:1187:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (isnewsproxy (s)) newsrc_update (NIL,s+6,':');
                                ^
imapd.c:193:25: note: passing argument to parameter 'name' here
long isnewsproxy (char *name);
                        ^
imapd.c:1187:49: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (isnewsproxy (s)) newsrc_update (NIL,s+6,':');
                                                       ^~~
../c-client/newsrc.h:38:46: note: passing argument to parameter 'group' here
long newsrc_update (MAILSTREAM *stream,char *group,char state);
                                             ^
imapd.c:1188:29: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else mail_subscribe (NIL,s);
                                   ^
../c-client/mail.h:1619:47: note: passing argument to parameter 'mailbox' here
long mail_subscribe (MAILSTREAM *stream,char *mailbox);
                                              ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1193:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"UNSUBSCRIBE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1197:29: warning: passing 'char [8]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (compare_cstring (s,"MAILBOX")) response = badarg;
                                   ^~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1200:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (isnewsproxy (s)) newsrc_update (NIL,s+6,'!');
                                  ^
imapd.c:193:25: note: passing argument to parameter 'name' here
long isnewsproxy (char *name);
                        ^
imapd.c:1200:51: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (isnewsproxy (s)) newsrc_update (NIL,s+6,'!');
                                                         ^~~
../c-client/newsrc.h:38:46: note: passing argument to parameter 'group' here
long newsrc_update (MAILSTREAM *stream,char *group,char state);
                                             ^
imapd.c:1201:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_unsubscribe (NIL,s);
                                       ^
../c-client/mail.h:1620:49: note: passing argument to parameter 'mailbox' here
long mail_unsubscribe (MAILSTREAM *stream,char *mailbox);
                                                ^
imapd.c:1203:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else mail_unsubscribe (NIL,s);
                                     ^
../c-client/mail.h:1620:49: note: passing argument to parameter 'mailbox' here
long mail_unsubscribe (MAILSTREAM *stream,char *mailbox);
                                                ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1208:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"NAMESPACE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1217:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
              if (n = ns[i]) {
                  ~~^~~~~~~
imapd.c:1217:14: note: place parentheses around the assignment to silence this warning
              if (n = ns[i]) {
                    ^
                  (        )
imapd.c:1217:14: note: use '==' to turn this assignment into an equality comparison
              if (n = ns[i]) {
                    ^
                    ==
imapd.c:1237:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                  if (p = n->param) do {
                      ~~^~~~~~~~~~
imapd.c:1237:11: note: place parentheses around the assignment to silence this warning
                  if (p = n->param) do {
                        ^
                      (           )
imapd.c:1237:11: note: use '==' to turn this assignment into an equality comparison
                  if (p = n->param) do {
                        ^
                        ==
imapd.c:1244:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                  } while (p = p->next);
                           ~~^~~~~~~~~
imapd.c:1244:16: note: place parentheses around the assignment to silence this warning
                  } while (p = p->next);
                             ^
                           (          )
imapd.c:1244:16: note: use '==' to turn this assignment into an equality comparison
                  } while (p = p->next);
                             ^
                             ==
imapd.c:1246:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                } while (n = n->next);
                         ~~^~~~~~~~~
imapd.c:1246:14: note: place parentheses around the assignment to silence this warning
                } while (n = n->next);
                           ^
                         (          )
imapd.c:1246:14: note: use '==' to turn this assignment into an equality comparison
                } while (n = n->next);
                           ^
                           ==
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1259:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"CREATE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1262:26: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else mail_create (NIL,s);
                                ^
../c-client/mail.h:1621:44: note: passing argument to parameter 'mailbox' here
long mail_create (MAILSTREAM *stream,char *mailbox);
                                           ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1267:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"DELETE"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1271:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1272:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1274:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_delete (NIL,s);
                                  ^
../c-client/mail.h:1622:44: note: passing argument to parameter 'mailbox' here
long mail_delete (MAILSTREAM *stream,char *mailbox);
                                           ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1280:34: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!(anonymous || strcmp (cmd,"RENAME"))) {
                                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1284:30: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"INBOX")) s = "INBOX";
                                    ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1284:42: warning: assigning to 'unsigned char *' from 'char [6]' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!compare_cstring (s,"INBOX")) s = "INBOX";
                                                ^ ~~~~~~~
imapd.c:1285:35: warning: passing 'char [9]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"#MHINBOX")) s = "#MHINBOX";
                                         ^~~~~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
imapd.c:1285:50: warning: assigning to 'unsigned char *' from 'char [9]' converts between pointers to integer types with different sign [-Wpointer-sign]
            else if (!compare_cstring (s,"#MHINBOX")) s = "#MHINBOX";
                                                        ^ ~~~~~~~~~~
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1286:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (lastsel && (!strcmp (s,lastsel) ||
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1287:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                            (stream && !strcmp (s,stream->mailbox))))
                                                ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1289:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_rename (NIL,s,t);
                                  ^
../c-client/mail.h:1623:44: note: passing argument to parameter 'old' here
long mail_rename (MAILSTREAM *stream,char *old,char *newname);
                                           ^
imapd.c:1289:30: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            else mail_rename (NIL,s,t);
                                    ^
../c-client/mail.h:1623:54: note: passing argument to parameter 'newname' here
long mail_rename (MAILSTREAM *stream,char *old,char *newname);
                                                     ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:1296:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        else if (!strcmp (cmd,"IDLE")) {
                          ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:1327:12: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp,"* OK Timeout in %lu minutes\015\012",
                         ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1329:10: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                PSOUT (tmp);
                       ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1333:12: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                sprintf (tmp,"* %lu EXISTS\015\012* %lu RECENT\015\012",
                         ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1335:10: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                PSOUT (tmp);    /* prod client to wake up */
                       ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1344:10: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                slurp (tmp,MAILTMPLEN,INPUTTIMEOUT);
                       ^~~
imapd.c:127:19: note: passing argument to parameter 's' here
void slurp (char *s,int n,unsigned long timeout);
                  ^
imapd.c:1355:16: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    sprintf (tmp,"* %lu EXPUNGE\015\012",donefake--);
                             ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1356:14: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                    PSOUT (tmp);
                           ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1358:14: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  sprintf (tmp,"* %lu EXISTS\015\012* %lu RECENT\015\012",
                           ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1360:12: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                  PSOUT (tmp);
                         ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1379:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        while (i = (litplus.size > MAILTMPLEN) ? MAILTMPLEN : litplus.size) {
               ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1379:11: note: place parentheses around the assignment to silence this warning
        while (i = (litplus.size > MAILTMPLEN) ? MAILTMPLEN : litplus.size) {
                 ^
               (                                                          )
imapd.c:1379:11: note: use '==' to turn this assignment into an equality comparison
        while (i = (litplus.size > MAILTMPLEN) ? MAILTMPLEN : litplus.size) {
                 ^
                 ==
imapd.c:1383:17: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (PSINR (tmp,i)) litplus.size -= i;
                       ^~~
../c-client/mail.h:1833:19: note: passing argument to parameter 's' here
long PSINR (char *s,unsigned long n);
                  ^
imapd.c:1392:9: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        slurp (tmp,MAILTMPLEN,INPUTTIMEOUT);
               ^~~
imapd.c:127:19: note: passing argument to parameter 's' here
void slurp (char *s,int n,unsigned long timeout);
                  ^
imapd.c:1394:18: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (t = strchr (tmp,'\012')) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:1394:8: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        if (t = strchr (tmp,'\012')) {
              ^ ~~~~~~~~~~~~~~~~~~~
imapd.c:1394:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (t = strchr (tmp,'\012')) {
            ~~^~~~~~~~~~~~~~~~~~~~~
imapd.c:1394:8: note: place parentheses around the assignment to silence this warning
        if (t = strchr (tmp,'\012')) {
              ^
            (                      )
imapd.c:1394:8: note: use '==' to turn this assignment into an equality comparison
        if (t = strchr (tmp,'\012')) {
              ^
              ==
imapd.c:1399:22: warning: passing 'unsigned char [1024]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (((i = strlen (tmp)) > 3) && (tmp[i - 1] == '}') &&
                            ^~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:1405:32: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              litplus.size = strtoul (tmp + i + 1,NIL,10);
                                      ^~~~~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:1420:11: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (tmp,response,lstref ? "*" : tag);
                 ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1421:9: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        PSOUT (tmp);            /* start response */
               ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1424:9: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        PSOUT (user);
               ^~~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1427:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (tmp,response,tag);
                   ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1428:11: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          PSOUT (tmp);          /* start response */
                 ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1437:11: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (tmp,response,tag);
                 ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1438:9: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        PSOUT (tmp);
               ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1441:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   ((s = strchr (cmd,' ')) ? s+1 : cmd),cauidvalidity);
                                 ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
imapd.c:1441:10: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                   ((s = strchr (cmd,' ')) ? s+1 : cmd),cauidvalidity);
                   ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
imapd.c:1440:13: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          sprintf (tmp,"[%.80sUID %lu ",(char *)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1442:11: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          PSOUT (tmp);
                 ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1458:11: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          PSOUT (cmd);
                 ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1472:11: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sprintf (tmp,response,tag,cmd,lasterror ());
                 ^~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:28: note: expanded from macro 'sprintf'
  __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, __bos (str), \
                           ^
imapd.c:1473:9: warning: passing 'unsigned char [1024]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        PSOUT (tmp);            /* output response */
               ^~~
../c-client/mail.h:1836:18: note: passing argument to parameter 's' here
int PSOUT (char *s);
                 ^
imapd.c:1498:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (lgoh = (logouthook_t) mail_parameters (NIL,GET_LOGOUTHOOK,NIL))
      ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1498:12: note: place parentheses around the assignment to silence this warning
  if (lgoh = (logouthook_t) mail_parameters (NIL,GET_LOGOUTHOOK,NIL))
           ^
      (                                                             )
imapd.c:1498:12: note: use '==' to turn this assignment into an equality comparison
  if (lgoh = (logouthook_t) mail_parameters (NIL,GET_LOGOUTHOOK,NIL))
           ^
           ==
imapd.c:1853:36: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (user) s = sout (sout (s,"."),user);
                                   ^~~~
imapd.c:125:27: note: passing argument to parameter 't' here
char *sout (char *s,char *t);
                          ^
imapd.c:1858:44: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (user) s = sout (sout (s,", user="),user);
                                           ^~~~
imapd.c:125:27: note: passing argument to parameter 't' here
char *sout (char *s,char *t);
                          ^
imapd.c:1878:53: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (cmd) s = sout (sout (s,", last command="),cmd);
                                                    ^~~
imapd.c:125:27: note: passing argument to parameter 't' here
char *sout (char *s,char *t);
                          ^
imapd.c:1880:28: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else s = sout (sout (s,cmd)," in progress");
                           ^~~
imapd.c:125:27: note: passing argument to parameter 't' here
char *sout (char *s,char *t);
                          ^
imapd.c:2042:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (*size = i) break;       /* got atom if non-empty */
        ~~~~~~^~~
imapd.c:2042:15: note: place parentheses around the assignment to silence this warning
    if (*size = i) break;       /* got atom if non-empty */
              ^
        (        )
imapd.c:2042:15: note: use '==' to turn this assignment into an equality comparison
    if (*size = i) break;       /* got atom if non-empty */
              ^
              ==
imapd.c:2062:31: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((*size = i = strtoul (s,(char **) &t,10)) > MAXCLIENTLIT) {
                              ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:2081:18: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    inliteral (s = litstk[litsp++] = (char *) fs_get (i+1),i);
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2081:16: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    inliteral (s = litstk[litsp++] = (char *) fs_get (i+1),i);
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:1945:23: note: passing argument to parameter 's' here
void inliteral (char *s,unsigned long n)
                      ^
imapd.c:2083:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    slurp (*arg = t,CMDLEN - (t - cmdbuf),INPUTTIMEOUT);
           ^~~~~~~~
imapd.c:1926:19: note: passing argument to parameter 's' here
void slurp (char *s,int n,unsigned long timeout)
                  ^
imapd.c:2084:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strchr (t,'\012')) return flush ();
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:2086:18: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strtok (t,"\015\012")) *t = '\0';
                 ^
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:2088:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (((i = strlen (t)) > 3) && (t[i - 1] == '}') &&
                      ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2094:26: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        litplus.size = strtoul (t + i + 1,NIL,10);
                                ^~~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:2099:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (*del = *t) {              /* have a delimiter? */
      ~~~~~^~~~
imapd.c:2099:12: note: place parentheses around the assignment to silence this warning
  if (*del = *t) {              /* have a delimiter? */
           ^
      (        )
imapd.c:2099:12: note: use '==' to turn this assignment into an equality comparison
  if (*del = *t) {              /* have a delimiter? */
           ^
           ==
imapd.c:2177:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (c = *t) {               /* have a delimiter? */
        ~~^~~~
imapd.c:2177:11: note: place parentheses around the assignment to silence this warning
    if (c = *t) {               /* have a delimiter? */
          ^
        (     )
imapd.c:2177:11: note: use '==' to turn this assignment into an equality comparison
    if (c = *t) {               /* have a delimiter? */
          ^
          ==
imapd.c:2206:51: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((c == ' ') && (t = parse_astring (s,&i,&c))) {
                                                  ^~
imapd.c:2031:25: note: passing argument to parameter 'del' here
                              unsigned char *del)
                                             ^
imapd.c:2206:29: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    while ((c == ' ') && (t = parse_astring (s,&i,&c))) {
                            ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2218:9: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (t = *s) {                 /* need to reload strtok() state? */
        ^ ~~
imapd.c:2218:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = *s) {                 /* need to reload strtok() state? */
      ~~^~~~
imapd.c:2218:9: note: place parentheses around the assignment to silence this warning
  if (t = *s) {                 /* need to reload strtok() state? */
        ^
      (     )
imapd.c:2218:9: note: use '==' to turn this assignment into an equality comparison
  if (t = *s) {                 /* need to reload strtok() state? */
        ^
        ==
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1068:24: note: expanded from macro 'strpbrk'
         ? __builtin_strpbrk (s, accept)                                      \
                              ^
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1072:29: note: expanded from macro 'strpbrk'
               ? __builtin_strchr (s, __a0)                                   \
                                   ^
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1074:21: note: expanded from macro 'strpbrk'
                  ? __strpbrk_c2 (s, __a0, __a1)                              \
                                  ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1100:27: note: passing argument to parameter '__s' here
__strpbrk_c2 (const char *__s, int __accept1, int __accept2)
                          ^
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1076:24: note: expanded from macro 'strpbrk'
                     ? __strpbrk_c3 (s, __a0, __a1, __a2)                     \
                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:1111:27: note: passing argument to parameter '__s' here
__strpbrk_c3 (const char *__s, int __accept1, int __accept2, int __accept3)
                          ^
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1077:29: note: expanded from macro 'strpbrk'
                     : __builtin_strpbrk (s, accept))))))                     \
                                          ^
imapd.c:2293:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                          ^~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:1078:28: note: expanded from macro 'strpbrk'
      : __builtin_strpbrk (s, accept)); })
                           ^
imapd.c:2293:16: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2293:68: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(tail = strpbrk ((s = *arg)," )"))) tail = *arg + strlen (*arg);
                                                                   ^~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2309:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LL")) ret = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2310:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSWERED")) ret = pgm->answered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2314:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"CC") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2316:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"EFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2318:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ODY") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2322:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"C") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2326:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ELETED")) ret = pgm->deleted = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2327:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"RAFT")) ret = pgm->draft = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2330:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LAGGED")) ret = pgm->flagged = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2331:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ROM") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2335:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EADER") && c == ' ' && *(v = tail + 1) &&
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2339:31: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        *hdr = mail_newsearchheader (s,t);
                                     ^
../c-client/mail.h:1771:43: note: passing argument to parameter 'line' here
SEARCHHEADER *mail_newsearchheader (char *line,char *text);
                                          ^
imapd.c:2339:33: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        *hdr = mail_newsearchheader (s,t);
                                       ^
../c-client/mail.h:1771:54: note: passing argument to parameter 'text' here
SEARCHHEADER *mail_newsearchheader (char *line,char *text);
                                                     ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2346:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EYWORD") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2350:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ARGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2354:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EW")) ret = pgm->recent = pgm->unseen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2355:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"OT") && c == ' ' && *++tail) {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2363:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"LD")) ret = pgm->old = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2364:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"N") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2366:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"R") && c == ' ') {
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2374:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"LDER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2378:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ECENT")) ret = pgm->recent = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2381:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EEN")) ret = pgm->seen = T;
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2382:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTBEFORE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2384:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTON") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2386:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"ENTSINCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2388:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"INCE") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2390:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"MALLER") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2392:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"UBJECT") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2396:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"EXT") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2398:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"O") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2403:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"ID") && c== ' ' && *++tail) {
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2412:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NANSWERED")) ret = pgm->unanswered = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2413:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDELETED")) ret = pgm->undeleted = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2414:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NDRAFT")) ret = pgm->undraft = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2415:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NFLAGGED")) ret = pgm->unflagged = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2416:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NKEYWORD") && c == ' ' && *++tail)
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2418:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      else if (!strcmp (s+1,"NSEEN")) ret = pgm->unseen = T;
                        ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2421:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strcmp (s+1,"OUNGER") && c == ' ' && *++tail)
                   ^~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2584:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  char *s = parse_astring (arg,&i,&c);
                                  ^~
imapd.c:2031:25: note: passing argument to parameter 'del' here
                              unsigned char *del)
                                             ^
imapd.c:2584:9: warning: initializing 'char *' with an expression of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  char *s = parse_astring (arg,&i,&c);
        ^   ~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2594:19: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!*arg) *arg = (char *) (*string)->text.data + i;
                  ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:802:29: note: expanded from macro 'strcmp'
     (__builtin_constant_p (s1) && __builtin_constant_p (s2)                  \
                            ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:32: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                               ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:872:51: note: expanded from macro '__strcmp_cg'
                      (((const unsigned char *) (const char *) (s1))[0]       \
                                                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:877:26: note: expanded from macro '__strcmp_cg'
                                     (const char *) (s1))[1] - __s2[1]);      \
                                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:881:23: note: expanded from macro '__strcmp_cg'
                                         (const char *) (s1))[2] - __s2[2]);  \
                                                         ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:884:25: note: expanded from macro '__strcmp_cg'
                                          (const char *)  (s1))[3]            \
                                                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:31: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:816:24: note: expanded from macro 'strcmp'
               : __strcmp_gc (s1, s2, __s2_len))                              \
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:890:54: note: expanded from macro '__strcmp_gc'
# define __strcmp_gc(s1, s2, l2) (- __strcmp_cg (s2, s1, l2))
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:870:49: note: expanded from macro '__strcmp_cg'
                      (const unsigned char *) (const char *) (s2);            \
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
imapd.c:2641:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (t),"ALL"))
               ^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2646:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (list = (*t == '(')) t++;  /* skip open paren */
      ~~~~~^~~~~~~~~~~~~
imapd.c:2646:12: note: place parentheses around the assignment to silence this warning
  if (list = (*t == '(')) t++;  /* skip open paren */
           ^
      (                 )
imapd.c:2646:12: note: use '==' to turn this assignment into an equality comparison
  if (list = (*t == '(')) t++;  /* skip open paren */
           ^
           ==
imapd.c:2647:9: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s = strtok (t," ")) do {  /* parse attribute list */
        ^ ~~~~~~~~~~~~~~
imapd.c:2647:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = strtok (t," ")) do {  /* parse attribute list */
      ~~^~~~~~~~~~~~~~~~
imapd.c:2647:9: note: place parentheses around the assignment to silence this warning
  if (s = strtok (t," ")) do {  /* parse attribute list */
        ^
      (                 )
imapd.c:2647:9: note: use '==' to turn this assignment into an equality comparison
  if (s = strtok (t," ")) do {  /* parse attribute list */
        ^
        ==
imapd.c:2648:30: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (list && (i = strlen (s)) && (s[i-1] == ')')) {
                             ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2653:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!strcmp (s,"UID")) {    /* no-op if implicit */
                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2656:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"FLAGS")) f[k++] = fetch_flags;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2657:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"INTERNALDATE")) f[k++] = fetch_internaldate;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2658:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.SIZE")) f[k++] = fetch_rfc822_size;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2659:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"ENVELOPE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2663:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODY")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2667:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"BODYSTRUCTURE")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2671:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2675:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.HEADER")) f[k++] = fetch_rfc822_header;
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2676:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strcmp (s,"RFC822.TEXT")) {
                      ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2681:24: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2681:50: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    else if (!strncmp (s,"BODY[",5) || !strncmp (s,"BODY.PEEK[",10) ||
                                                 ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2682:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2682:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY[",7) || !strncmp (s,"BINARY.PEEK[",12) ||
                                                   ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2683:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             !strncmp (s,"BINARY.SIZE[",12)) {
                       ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2723:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,"MIME",4)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2736:18: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          if (!strncmp (v,"HEADER",6)) {
                        ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2741:20: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
            if (!strncmp (v,".FIELDS",7)) {
                          ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2743:22: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (!strncmp (v,".NOT",4)) {
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2747:22: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
              if (*v || !(v = strtok (NIL,"\015\012")) ||
                            ^ ~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:899:21: note: expanded from macro 'strncmp'
                       && strlen (s1) < ((size_t) (n)))                       \
                                  ^
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:15: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                            ^
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
imapd.c:2755:23: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          else if (!strncmp (v,"TEXT",4)) {
                             ^
/usr/include/x86_64-linux-gnu/bits/string2.h:902:34: note: expanded from macro 'strncmp'
                  ? strcmp (s1, s2) : strncmp (s1, s2, n)))
                                               ^
/usr/include/string.h:143:33: note: passing argument to parameter '__s1' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                ^
imapd.c:2778:48: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
           !(isdigit (v[1]) && ((ta->first = strtoul (v+1,(char **) &v,10)) ||
                                                      ^~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:2780:45: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
             (*v++ == '.') && (ta->last = strtoul (v,(char **) &v,10)) &&
                                                   ^
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:2791:10: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        strtok (v," ");         /* reset strtok mechanism */
                ^
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:2798:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          strtok (v," ");       /* reset strtok mechanism */
                  ^
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:2809:42: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (s && *s) ta->section = cpystr (s);
                                         ^
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:2816:15: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  } while ((s = strtok (NIL," ")) && (k < MAXFETCH) && list);
              ^ ~~~~~~~~~~~~~~~~
imapd.c:2955:38: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    BODY *body = mail_body (stream,i,ta->section);
                                     ^~~~~~~~~~~
../c-client/mail.h:1687:19: note: passing argument to parameter 'section' here
                 unsigned char *section);
                                ^
imapd.c:2968:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (cst.data = rfc822_base64 (st.data,st.size,&cst.size)) break;
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2968:20: note: place parentheses around the assignment to silence this warning
      if (cst.data = rfc822_base64 (st.data,st.size,&cst.size)) break;
                   ^
          (                                                   )
imapd.c:2968:20: note: use '==' to turn this assignment into an equality comparison
      if (cst.data = rfc822_base64 (st.data,st.size,&cst.size)) break;
                   ^
                   ==
imapd.c:2976:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (cst.data = rfc822_qprint (st.data,st.size,&cst.size)) break;
          ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:2976:20: note: place parentheses around the assignment to silence this warning
      if (cst.data = rfc822_qprint (st.data,st.size,&cst.size)) break;
                   ^
          (                                                   )
imapd.c:2976:20: note: use '==' to turn this assignment into an equality comparison
      if (cst.data = rfc822_qprint (st.data,st.size,&cst.size)) break;
                   ^
                   ==
imapd.c:3172:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (u = elt->user_flags) do   /* any user flags? */
      ~~^~~~~~~~~~~~~~~~~
imapd.c:3172:9: note: place parentheses around the assignment to silence this warning
  if (u = elt->user_flags) do   /* any user flags? */
        ^
      (                  )
imapd.c:3172:9: note: use '==' to turn this assignment into an equality comparison
  if (u = elt->user_flags) do   /* any user flags? */
        ^
        ==
imapd.c:3173:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (t = stream->user_flags[find_rightmost_bit (&u)]) put_flag (&c,t);
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:3173:11: note: place parentheses around the assignment to silence this warning
    if (t = stream->user_flags[find_rightmost_bit (&u)]) put_flag (&c,t);
          ^
        (                                              )
imapd.c:3173:11: note: use '==' to turn this assignment into an equality comparison
    if (t = stream->user_flags[find_rightmost_bit (&u)]) put_flag (&c,t);
          ^
          ==
imapd.c:3312:9: warning: unused variable 'f' [-Wunused-variable]
    int f = mail_elt (stream,i)->seen;
        ^
imapd.c:3329:15: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    pnstring (env->date);       /* output envelope fields */
              ^~~~~~~~~
imapd.c:178:22: note: passing argument to parameter 's' here
void pnstring (char *s);
                     ^
imapd.c:3366:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (part = body->nested.part)
          ~~~~~^~~~~~~~~~~~~~~~~~~
imapd.c:3366:16: note: place parentheses around the assignment to silence this warning
      if (part = body->nested.part)
               ^
          (                       )
imapd.c:3366:16: note: use '==' to turn this assignment into an equality comparison
      if (part = body->nested.part)
               ^
               ==
imapd.c:3451:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (part = body->nested.part)
          ~~~~~^~~~~~~~~~~~~~~~~~~
imapd.c:3451:16: note: place parentheses around the assignment to silence this warning
      if (part = body->nested.part)
               ^
          (                       )
imapd.c:3451:16: note: use '==' to turn this assignment into an equality comparison
      if (part = body->nested.part)
               ^
               ==
imapd.c:3505:17: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (param = param->next) PBOUT (' ');
          ~~~~~~^~~~~~~~~~~~~
imapd.c:3505:17: note: place parentheses around the assignment to silence this warning
      if (param = param->next) PBOUT (' ');
                ^
          (                  )
imapd.c:3505:17: note: use '==' to turn this assignment into an equality comparison
      if (param = param->next) PBOUT (' ');
                ^
                ==
imapd.c:3531:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    } while (a = a->next);      /* until end of address */
             ~~^~~~~~~~~
imapd.c:3531:16: note: place parentheses around the assignment to silence this warning
    } while (a = a->next);      /* until end of address */
               ^
             (          )
imapd.c:3531:16: note: use '==' to turn this assignment into an equality comparison
    } while (a = a->next);      /* until end of address */
               ^
               ==
imapd.c:3550:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (cur = cur->next) PBOUT (',');
        ~~~~^~~~~~~~~~~
imapd.c:3550:13: note: place parentheses around the assignment to silence this warning
    if (cur = cur->next) PBOUT (',');
            ^
        (              )
imapd.c:3550:13: note: use '==' to turn this assignment into an equality comparison
    if (cur = cur->next) PBOUT (',');
            ^
            ==
imapd.c:3690:14: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  } while (s = s->next);
           ~~^~~~~~~~~
imapd.c:3690:14: note: place parentheses around the assignment to silence this warning
  } while (s = s->next);
             ^
           (          )
imapd.c:3690:14: note: use '==' to turn this assignment into an equality comparison
  } while (s = s->next);
             ^
             ==
imapd.c:3707:16: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    } while (s = s->next);
             ~~^~~~~~~~~
imapd.c:3707:16: note: place parentheses around the assignment to silence this warning
    } while (s = s->next);
               ^
             (          )
imapd.c:3707:16: note: use '==' to turn this assignment into an equality comparison
    } while (s = s->next);
               ^
               ==
imapd.c:3765:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s = txt->data) while (i && ((PBOUT ((c = *s++) ? c : 0x80) != EOF))) --i;
      ~~^~~~~~~~~~~
imapd.c:3765:9: note: place parentheses around the assignment to silence this warning
  if (s = txt->data) while (i && ((PBOUT ((c = *s++) ? c : 0x80) != EOF))) --i;
        ^
      (            )
imapd.c:3765:9: note: use '==' to turn this assignment into an equality comparison
  if (s = txt->data) while (i && ((PBOUT ((c = *s++) ? c : 0x80) != EOF))) --i;
        ^
        ==
imapd.c:3782:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (t = thr->next) {      /* any subsequent nodes? */
          ~~^~~~~~~~~~~
imapd.c:3782:13: note: place parentheses around the assignment to silence this warning
      if (t = thr->next) {      /* any subsequent nodes? */
            ^
          (            )
imapd.c:3782:13: note: use '==' to turn this assignment into an equality comparison
      if (t = thr->next) {      /* any subsequent nodes? */
            ^
            ==
imapd.c:3830:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
        ~~^~~~~~~~~~~~~~~~~~~~~
imapd.c:3830:11: note: place parentheses around the assignment to silence this warning
    if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
          ^
        (                      )
imapd.c:3830:11: note: use '==' to turn this assignment into an equality comparison
    if (s = ssl_start_tls (NIL)) fs_give ((void **) &s);
          ^
          ==
imapd.c:3864:14: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      for (s = ref, t = oktab[i]; *t && !compare_uchar (*s,*t); s++, t++);
             ^ ~~~
imapd.c:3864:23: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      for (s = ref, t = oktab[i]; *t && !compare_uchar (*s,*t); s++, t++);
                      ^ ~~~~~~~~
imapd.c:3873:12: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (s = name, t = oktab[i]; *t && !compare_uchar (*s,*t); s++, t++);
           ^ ~~~~
imapd.c:3873:22: warning: assigning to 'unsigned char *' from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    for (s = name, t = oktab[i]; *t && !compare_uchar (*s,*t); s++, t++);
                     ^ ~~~~~~~~
imapd.c:4019:28: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)))
                                  ^~~~~~~~
../c-client/mail.h:1757:59: note: passing argument to parameter 'sequence' here
long mail_uid_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                          ^
imapd.c:4019:62: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        mail_uid_sequence (stream,sequence) : mail_sequence (stream,sequence)))
                                                                    ^~~~~~~~
../c-client/mail.h:1756:55: note: passing argument to parameter 'sequence' here
long mail_sequence (MAILSTREAM *stream,unsigned char *sequence);
                                                      ^
imapd.c:4025:36: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (mail_elt (stream,i)->spare = mail_elt (stream,i)->sequence) {
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imapd.c:4025:36: note: place parentheses around the assignment to silence this warning
    if (mail_elt (stream,i)->spare = mail_elt (stream,i)->sequence) {
                                   ^
        (                                                         )
imapd.c:4025:36: note: use '==' to turn this assignment into an equality comparison
    if (mail_elt (stream,i)->spare = mail_elt (stream,i)->sequence) {
                                   ^
                                   ==
imapd.c:4080:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      if (i = elt->user_flags) do 
          ~~^~~~~~~~~~~~~~~~~
imapd.c:4080:13: note: place parentheses around the assignment to silence this warning
      if (i = elt->user_flags) do 
            ^
          (                  )
imapd.c:4080:13: note: use '==' to turn this assignment into an equality comparison
      if (i = elt->user_flags) do 
            ^
            ==
imapd.c:4112:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = ad->flags) fs_give ((void **) &ad->flags);
      ~~^~~~~~~~~~~
imapd.c:4112:9: note: place parentheses around the assignment to silence this warning
  if (t = ad->flags) fs_give ((void **) &ad->flags);
        ^
      (            )
imapd.c:4112:9: note: use '==' to turn this assignment into an equality comparison
  if (t = ad->flags) fs_give ((void **) &ad->flags);
        ^
        ==
imapd.c:4113:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = ad->date) fs_give ((void **) &ad->date);
      ~~^~~~~~~~~~
imapd.c:4113:9: note: place parentheses around the assignment to silence this warning
  if (t = ad->date) fs_give ((void **) &ad->date);
        ^
      (           )
imapd.c:4113:9: note: use '==' to turn this assignment into an equality comparison
  if (t = ad->date) fs_give ((void **) &ad->date);
        ^
        ==
imapd.c:4114:9: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (t = ad->msg) fs_give ((void **) &ad->msg);
      ~~^~~~~~~~~
imapd.c:4114:9: note: place parentheses around the assignment to silence this warning
  if (t = ad->msg) fs_give ((void **) &ad->msg);
        ^
      (          )
imapd.c:4114:9: note: use '==' to turn this assignment into an equality comparison
  if (t = ad->msg) fs_give ((void **) &ad->msg);
        ^
        ==
imapd.c:4128:7: warning: assigning to 'char *' from 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    t = ++arg;                  /* pointer to flag list contents */
      ^ ~~~~~
imapd.c:4135:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (*arg == '"') *date = ad->date = cpystr (snarf (&arg));
                                              ^~~~~~~~~~~~
../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
imapd.c:4140:27: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  else if (!(i = strtoul (arg+1,&t,10)))
                          ^~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:4148:12: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    slurp (ad->arg,CMDLEN - (ad->arg - cmdbuf),INPUTTIMEOUT);
           ^~~~~~~
imapd.c:1926:19: note: passing argument to parameter 's' here
void slurp (char *s,int n,unsigned long timeout)
                  ^
imapd.c:4149:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (strchr (ad->arg,'\012')) {
                ^~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:399:25: note: expanded from macro 'strchr'
                  : __builtin_strchr (s, c)))
                                      ^
imapd.c:4151:20: warning: passing 'unsigned char *' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (!strtok (ad->arg,"\015\012")) *ad->arg = '\0';
                   ^~~~~~~
/usr/include/string.h:344:39: note: passing argument to parameter '__s' here
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
                                      ^
imapd.c:4153:25: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      if (((j = strlen (ad->arg)) > 3) && (ad->arg[j - 1] == '}') &&
                        ^~~~~~~
/usr/include/string.h:395:35: note: passing argument to parameter '__s' here
extern size_t strlen (const char *__s)
                                  ^
imapd.c:4159:28: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
          litplus.size = strtoul (ad->arg + j + 1,NIL,10);
                                  ^~~~~~~~~~~~~~~
/usr/include/stdlib.h:187:58: note: passing argument to parameter '__nptr' here
extern unsigned long int strtoul (const char *__restrict __nptr,
                                                         ^
imapd.c:4529:21: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  strncpy (password,pass,256);  /* and password */
                    ^~~~
/usr/include/x86_64-linux-gnu/bits/string3.h:117:65: note: passing argument to parameter '__src' here
__NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
                                                                ^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:57:59: note: expanded from macro '__NTH'
#  define __NTH(fct)    __attribute__ ((__nothrow__ __LEAF)) fct
                                                             ^
1127 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -DANOFILE=\"/etc/anonymous.newsgroups\" -DALERTFILE=\"/etc/imapd.alert\" -DNNTPFILE=\"/etc/imapd.nntp\" -DUSERALERTFILE=\".imapalert\" -DSHUTDOWNFILE=\"/etc/nologin\" -o imapd imapd.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/imapd'
cd mailutil;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mailutil'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o mailutil.o mailutil.c
mailutil.c:284:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:284:21: note: place parentheses around the assignment to silence this warning
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
                    ^
mailutil.c:284:21: note: use '==' to turn this assignment into an equality comparison
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
                    ^
                    ==
mailutil.c:295:21: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:295:21: note: place parentheses around the assignment to silence this warning
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
                    ^
mailutil.c:295:21: note: use '==' to turn this assignment into an equality comparison
    else if (source = mail_open (NIL,src,((i || rwcopyp) ? NIL : OP_READONLY) |
                    ^
                    ==
mailutil.c:376:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (t = strchr (tmp+1,'\n')) *t = '\0';
            ~~^~~~~~~~~~~~~~~~~~~~~
mailutil.c:376:8: note: place parentheses around the assignment to silence this warning
        if (t = strchr (tmp+1,'\n')) *t = '\0';
              ^
            (                      )
mailutil.c:376:8: note: use '==' to turn this assignment into an equality comparison
        if (t = strchr (tmp+1,'\n')) *t = '\0';
              ^
              ==
mailutil.c:384:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
          while (c = *t1++) {   /* swap delimiters then */
                 ~~^~~~~~~
mailutil.c:384:13: note: place parentheses around the assignment to silence this warning
          while (c = *t1++) {   /* swap delimiters then */
                   ^
                 (        )
mailutil.c:384:13: note: use '==' to turn this assignment into an equality comparison
          while (c = *t1++) {   /* swap delimiters then */
                   ^
                   ==
mailutil.c:396:13: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (source = mail_open (source,tmp+1,(debugp ? OP_DEBUG : NIL) | 
            ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:396:13: note: place parentheses around the assignment to silence this warning
        if (source = mail_open (source,tmp+1,(debugp ? OP_DEBUG : NIL) | 
                   ^
mailutil.c:396:13: note: use '==' to turn this assignment into an equality comparison
        if (source = mail_open (source,tmp+1,(debugp ? OP_DEBUG : NIL) | 
                   ^
                   ==
mailutil.c:453:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
      switch (*ucase (criterion)) {
                      ^~~~~~~~~
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
mailutil.c:595:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
        if (s = strchr (tmp,'\n')) *s = '\0';
            ~~^~~~~~~~~~~~~~~~~~~
mailutil.c:595:8: note: place parentheses around the assignment to silence this warning
        if (s = strchr (tmp,'\n')) *s = '\0';
              ^
            (                    )
mailutil.c:595:8: note: use '==' to turn this assignment into an equality comparison
        if (s = strchr (tmp,'\n')) *s = '\0';
              ^
              ==
mailutil.c:594:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        fgets (tmp,MAILTMPLEN-1,stdin);
        ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:624:46: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
      for (i = 0; i < NUSERFLAGS; ++i) if (t = source->user_flags[i]) {
                                           ~~^~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:624:46: note: place parentheses around the assignment to silence this warning
      for (i = 0; i < NUSERFLAGS; ++i) if (t = source->user_flags[i]) {
                                             ^
                                           (                        )
mailutil.c:624:46: note: use '==' to turn this assignment into an equality comparison
      for (i = 0; i < NUSERFLAGS; ++i) if (t = source->user_flags[i]) {
                                             ^
                                             ==
mailutil.c:895:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (s = strchr (username,'\n')) *s = '\0';
        ~~^~~~~~~~~~~~~~~~~~~~~~~~
mailutil.c:895:11: note: place parentheses around the assignment to silence this warning
    if (s = strchr (username,'\n')) *s = '\0';
          ^
        (                         )
mailutil.c:895:11: note: use '==' to turn this assignment into an equality comparison
    if (s = strchr (username,'\n')) *s = '\0';
          ^
          ==
mailutil.c:893:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fgets (username,NETMAXUSER-1,stdin);
    ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~
11 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o mailutil mailutil.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mailutil'
cd mlock;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mlock'
`cat ../c-client/CCTYPE` `cat ../c-client/CFLAGS`   -c -o mlock.o mlock.c
mlock.c:60:3: warning: implicit declaration of function 'write' is invalid in C99 [-Wimplicit-function-declaration]
  write (1,"?",1);              /* indicate "impossible" failure */
  ^
mlock.c:75:31: warning: implicit declaration of function 'getegid' is invalid in C99 [-Wimplicit-function-declaration]
  if (!grp || (grp->gr_gid != getegid ()))
                              ^
mlock.c:94:3: warning: implicit declaration of function 'chdir' is invalid in C99 [-Wimplicit-function-declaration]
  chdir (dir);
  ^
mlock.c:113:30: warning: implicit declaration of function 'time' is invalid in C99 [-Wimplicit-function-declaration]
    if (!stat (lock,&sb) && (time (0) > (sb.st_ctime + LOCKTIMEOUT * 60)))
                             ^
mlock.c:114:7: warning: implicit declaration of function 'unlink' is invalid in C99 [-Wimplicit-function-declaration]
      unlink (lock);            /* time out lock if enough time has passed */
      ^
mlock.c:123:23: warning: implicit declaration of function 'getpid' is invalid in C99 [-Wimplicit-function-declaration]
             (unsigned long) getpid ());
                             ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
mlock.c:125:5: warning: implicit declaration of function 'gethostname' is invalid in C99 [-Wimplicit-function-declaration]
    gethostname (hitch + len,MAXHOSTNAMELEN);
    ^
mlock.c:132:7: warning: implicit declaration of function 'close' is invalid in C99 [-Wimplicit-function-declaration]
      close (ld);               /* close the hitching-post */
      ^
mlock.c:138:11: warning: implicit declaration of function 'link' is invalid in C99 [-Wimplicit-function-declaration]
      i = link (hitch,lock) ? errno : 0;
          ^
mlock.c:161:20: warning: implicit declaration of function 'sleep' is invalid in C99 [-Wimplicit-function-declaration]
      if (tries--) sleep (1);   /* sleep 1 second and try again */
                   ^
mlock.c:169:3: warning: implicit declaration of function 'read' is invalid in C99 [-Wimplicit-function-declaration]
  read (0,tmp,1);               /* read continue signal from parent */
  ^
11 warnings generated.
`cat ../c-client/CCTYPE` `cat ../c-client/CFLAGS` -o mlock mlock.o
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mlock'
cd dmail;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/dmail'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o dmail.o dmail.c
dmail.c:120:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s->cursize = min (s->chunksize,SIZE (s))) {
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dmail.c:120:18: note: place parentheses around the assignment to silence this warning
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
      (                                       )
dmail.c:120:18: note: use '==' to turn this assignment into an equality comparison
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
                 ==
dmail.c:123:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fread (s->curpos,sizeof (char),(unsigned int) s->cursize,(FILE *) s->data);
    ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dmail.c:162:35: warning: implicit declaration of function 'isdigit' is invalid in C99 [-Wimplicit-function-declaration]
    if (s[2] && ((s[2] == '-') || isdigit (s[2]))) precedence = atol (s + 2);
                                  ^
dmail.c:229:15: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (mailbox = strchr (user,'+')) {
      ~~~~~~~~^~~~~~~~~~~~~~~~~~~
dmail.c:229:15: note: place parentheses around the assignment to silence this warning
  if (mailbox = strchr (user,'+')) {
              ^
      (                          )
dmail.c:229:15: note: use '==' to turn this assignment into an equality comparison
  if (mailbox = strchr (user,'+')) {
              ^
              ==
dmail.c:231:66: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!*mailbox || !compare_cstring ((unsigned char *) mailbox,"INBOX"))
                                                                 ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
dmail.c:443:65: warning: variable 'type' is uninitialized when used here [-Wuninitialized]
    sprintf (tmp + strlen (tmp),"file type %07o",(unsigned int) type);
                                                                ^~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
dmail.c:421:15: note: initialize the variable 'type' to silence this warning
  u_short type;
              ^
               = 0
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:802:29: note: expanded from macro 'strcmp'
     (__builtin_constant_p (s1) && __builtin_constant_p (s2)                  \
                            ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:32: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                               ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:872:51: note: expanded from macro '__strcmp_cg'
                      (((const unsigned char *) (const char *) (s1))[0]       \
                                                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:877:26: note: expanded from macro '__strcmp_cg'
                                     (const char *) (s1))[1] - __s2[1]);      \
                                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:881:23: note: expanded from macro '__strcmp_cg'
                                         (const char *) (s1))[2] - __s2[2]);  \
                                                         ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:884:25: note: expanded from macro '__strcmp_cg'
                                          (const char *)  (s1))[3]            \
                                                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:31: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:816:24: note: expanded from macro 'strcmp'
               : __strcmp_gc (s1, s2, __s2_len))                              \
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:890:54: note: expanded from macro '__strcmp_gc'
# define __strcmp_gc(s1, s2, l2) (- __strcmp_cg (s2, s1, l2))
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:870:49: note: expanded from macro '__strcmp_cg'
                      (const unsigned char *) (const char *) (s2);            \
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
dmail.c:566:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
32 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o dquota.o dquota.c
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o dmail dmail.o dquota.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/dmail'
cd tmail;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/tmail'
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o tmail.o tmail.c
tmail.c:121:18: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (s->cursize = min (s->chunksize,SIZE (s))) {
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tmail.c:121:18: note: place parentheses around the assignment to silence this warning
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
      (                                       )
tmail.c:121:18: note: use '==' to turn this assignment into an equality comparison
  if (s->cursize = min (s->chunksize,SIZE (s))) {
                 ^
                 ==
tmail.c:124:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fread (s->curpos,sizeof (char),(unsigned int) s->cursize,(FILE *) s->data);
    ^~~~~  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tmail.c:166:27: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
               !compare_cstring (format->name,"dummy"))
                                 ^~~~~~~~~~~~
../c-client/misc.h:109:37: note: passing argument to parameter 's1' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                    ^
tmail.c:166:40: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
               !compare_cstring (format->name,"dummy"))
                                              ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
tmail.c:171:37: warning: implicit declaration of function 'isdigit' is invalid in C99 [-Wimplicit-function-declaration]
      if (s[2] && ((s[2] == '-') || isdigit (s[2]))) precedence = atol (s + 2);
                                    ^
tmail.c:564:65: warning: variable 'type' is uninitialized when used here [-Wuninitialized]
    sprintf (tmp + strlen (tmp),"file type %07o",(unsigned int) type);
                                                                ^~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:39:7: note: expanded from macro 'sprintf'
                           __VA_ARGS__)
                           ^
tmail.c:539:15: note: initialize the variable 'type' to silence this warning
  u_short type;
              ^
               = 0
tmail.c:605:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  if (*t = strchr (s,'+')) {    /* have a mailbox specifier? */
      ~~~^~~~~~~~~~~~~~~~
tmail.c:605:10: note: place parentheses around the assignment to silence this warning
  if (*t = strchr (s,'+')) {    /* have a mailbox specifier? */
         ^
      (                  )
tmail.c:605:10: note: use '==' to turn this assignment into an equality comparison
  if (*t = strchr (s,'+')) {    /* have a mailbox specifier? */
         ^
         ==
tmail.c:608:56: warning: passing 'char [6]' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!**t || !compare_cstring ((unsigned char *) *t,"INBOX")) *t = NIL;
                                                       ^~~~~~~
../c-client/misc.h:109:55: note: passing argument to parameter 's2' here
int compare_cstring (unsigned char *s1,unsigned char *s2);
                                                      ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:802:29: note: expanded from macro 'strcmp'
     (__builtin_constant_p (s1) && __builtin_constant_p (s2)                  \
                            ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:803:40: note: expanded from macro 'strcmp'
      && (__s1_len = __builtin_strlen (s1), __s2_len = __builtin_strlen (s2), \
                                       ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:804:25: note: expanded from macro 'strcmp'
          (!__string2_1bptr_p (s1) || __s1_len >= 4)                          \
                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:806:27: note: expanded from macro 'strcmp'
      ? __builtin_strcmp (s1, s2)                                             \
                          ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:32: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                               ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:807:58: note: expanded from macro 'strcmp'
      : (__builtin_constant_p (s1) && __string2_1bptr_p (s1)                  \
                                                         ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:808:36: note: expanded from macro 'strcmp'
         && (__s1_len = __builtin_strlen (s1), __s1_len < 4)                  \
                                          ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:810:26: note: expanded from macro 'strcmp'
            ? __builtin_strcmp (s1, s2)                                       \
                                ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:872:51: note: expanded from macro '__strcmp_cg'
                      (((const unsigned char *) (const char *) (s1))[0]       \
                                                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:877:26: note: expanded from macro '__strcmp_cg'
                                     (const char *) (s1))[1] - __s2[1]);      \
                                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:881:23: note: expanded from macro '__strcmp_cg'
                                         (const char *) (s1))[2] - __s2[2]);  \
                                                         ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:811:21: note: expanded from macro 'strcmp'
            : __strcmp_cg (s1, s2, __s1_len))                                 \
                           ^
/usr/include/x86_64-linux-gnu/bits/string2.h:884:25: note: expanded from macro '__strcmp_cg'
                                          (const char *)  (s1))[3]            \
                                                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:31: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                     ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:28: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                           ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:814:57: note: expanded from macro 'strcmp'
            ? (__builtin_constant_p (s1) && __string2_1bptr_p (s1)            \
                                                               ^
/usr/include/x86_64-linux-gnu/bits/string2.h:93:63: note: expanded from macro '__string2_1bptr_p'
  ((size_t)(const void *)((__x) + 1) - (size_t)(const void *)(__x) == 1)
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:815:29: note: expanded from macro 'strcmp'
               ? __builtin_strcmp (s1, s2)                                    \
                                   ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:816:24: note: expanded from macro 'strcmp'
               : __strcmp_gc (s1, s2, __s2_len))                              \
                              ^
/usr/include/x86_64-linux-gnu/bits/string2.h:890:54: note: expanded from macro '__strcmp_gc'
# define __strcmp_gc(s1, s2, l2) (- __strcmp_cg (s2, s1, l2))
                                                     ^
/usr/include/x86_64-linux-gnu/bits/string2.h:870:49: note: expanded from macro '__strcmp_cg'
                      (const unsigned char *) (const char *) (s2);            \
                                                              ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
                      ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
../c-client/misc.h:86:38: note: passing argument to parameter 'string' here
unsigned char *ucase (unsigned char *string);
                                     ^
tmail.c:705:16: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (!strcmp (ucase (strncpy (tmp,string,11)),"[TRYCREATE]")) trycreate = T;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string2.h:817:26: note: expanded from macro 'strcmp'
            : __builtin_strcmp (s1, s2)))); })
                                ^
34 warnings generated.
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS`   -c -o tquota.o tquota.c
`cat ../c-client/CCTYPE` -I../c-client `cat ../c-client/CFLAGS` -o tmail tmail.o tquota.o ../c-client/c-client.a `cat ../c-client/LDFLAGS`
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/tmail'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make[2]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
/usr/bin/make  all-recursive
make[2]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
Making all in m4
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
Making all in po
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/po'
test ! -f ./alpine.pot || \
	  test -z "" || /usr/bin/make 
touch stamp-po
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/po'
Making all in pith
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c help_h_gen.c
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall  -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o help_h_gen help_h_gen.o 
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -o help_h_gen help_h_gen.o  -L/usr/lib -pthread
./help_h_gen < pine.hlp > helptext.h
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c help_c_gen.c
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall  -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o help_c_gen help_c_gen.o 
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -o help_c_gen help_c_gen.o  -L/usr/lib -pthread
./help_c_gen < pine.hlp > helptext.c
/usr/bin/make  all-recursive
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
Making all in osdep
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c bldpath.c
bldpath.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: bldpath.c 934 2008-02-23 00:44:29Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c canaccess.c
canaccess.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: canaccess.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c canonicl.c
canonicl.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: canonicl.c 764 2007-10-23 23:44:49Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c collate.c
collate.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: collate.c 766 2007-10-23 23:59:00Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c color.c
color.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: color.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c coredump.c
coredump.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: coredump.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c creatdir.c
creatdir.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: creatdir.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c debugtime.c
debugtime.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: debugtime.c 770 2007-10-24 00:23:09Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c domnames.c
domnames.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: domnames.c 1176 2008-09-29 21:16:42Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c err_desc.c
err_desc.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: err_desc.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c fgetpos.c
fgetpos.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: fgetpos.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c filesize.c
filesize.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: filesize.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c fnexpand.c
fnexpand.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: fnexpand.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c hostname.c
hostname.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: hostname.c 1176 2008-09-29 21:16:42Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c lstcmpnt.c
lstcmpnt.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: lstcmpnt.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mimedisp.c
mimedisp.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mimedisp.c 942 2008-03-04 18:21:33Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pipe.c
pipe.c:323:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            pipe(p);                            /* alloc pipe to write child */
            ^~~~ ~
pipe.c:329:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            pipe(p);                            /* alloc pipe to read child */
            ^~~~ ~
pipe.c:744:32: warning: incompatible pointer types passing 'union wait *' to parameter of type 'int *' [-Wincompatible-pointer-types]
    while (((rv = waitpid(pid, &wstatus, wflags)) < 0) && (errno != ECHILD));
                               ^~~~~~~~
/usr/include/x86_64-linux-gnu/sys/wait.h:125:45: note: passing argument to parameter '__stat_loc' here
extern __pid_t waitpid (__pid_t __pid, int *__stat_loc, int __options);
                                            ^
pipe.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pipe.c 1204 2009-02-02 19:54:23Z hubert@u.washington.edu $";
            ^
4 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pw_stuff.c
pw_stuff.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pw_stuff.c 763 2007-10-23 23:37:34Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c rename.c
rename.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: rename.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c tempfile.c
tempfile.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: tempfile.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c temp_nam.c
temp_nam.c:322:8: warning: variable 'l' is used uninitialized whenever '&&' condition is false [-Wsometimes-uninitialized]
    if(name[0] && *((f = &name[l=strlen(name)]) - 1) != PATH_SEP[0] && l+1 < MAXPATH){
       ^~~~~~~
temp_nam.c:335:8: note: uninitialized use occurs here
    if(l+5+(ext[0] ? strlen(ext)+1 : 0) < MAXPATH){
       ^
temp_nam.c:322:8: note: remove the '&&' if its condition is always true
    if(name[0] && *((f = &name[l=strlen(name)]) - 1) != PATH_SEP[0] && l+1 < MAXPATH){
       ^~~~~~~~~~
temp_nam.c:238:18: note: initialize the variable 'l' to silence this warning
    size_t      l, ll;
                 ^
                  = 0
temp_nam.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: temp_nam.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c writ_dir.c
writ_dir.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: writ_dir.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
rm -f libpithosd.a
/usr/bin/ar cru libpithosd.a bldpath.o canaccess.o canonicl.o collate.o color.o coredump.o creatdir.o debugtime.o domnames.o err_desc.o fgetpos.o filesize.o fnexpand.o hostname.o lstcmpnt.o mimedisp.o pipe.o pw_stuff.o rename.o tempfile.o temp_nam.o writ_dir.o 
ranlib libpithosd.a
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
Making all in charconv
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c filesys.c
filesys.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: filesys.c 770 2007-10-24 00:23:09Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c utf8.c
utf8.c:95:14: warning: implicit declaration of function 'wcwidth' is invalid in C99 [-Wimplicit-function-declaration]
      return(wcwidth((wchar_t) ucs));
             ^
utf8.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: utf8.c 1184 2008-12-16 23:52:15Z hubert@u.washington.edu $";
            ^
2 warnings generated.
rm -f libpithcc.a
/usr/bin/ar cru libpithcc.a filesys.o utf8.o 
ranlib libpithcc.a
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c ablookup.c
ablookup.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: ablookup.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c abdlc.c
abdlc.c:284:6: warning: variable 'next_index' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                if(dlc->type == DlcNotSet){
                   ^~~~~~~~~~~~~~~~~~~~~~
abdlc.c:458:36: note: uninitialized use occurs here
        n_cached, new_index, known_index, next_index));
                                          ^~~~~~~~~~
./debug.h:39:40: note: expanded from macro 'dprint'
#define   dprint(x)     { output_debug_msg x ; }
                                           ^
abdlc.c:284:3: note: remove the 'if' if its condition is always false
                if(dlc->type == DlcNotSet){
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
abdlc.c:255:6: warning: variable 'next_index' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                if(dlc->type == DlcNotSet){
                   ^~~~~~~~~~~~~~~~~~~~~~
abdlc.c:458:36: note: uninitialized use occurs here
        n_cached, new_index, known_index, next_index));
                                          ^~~~~~~~~~
./debug.h:39:40: note: expanded from macro 'dprint'
#define   dprint(x)     { output_debug_msg x ; }
                                           ^
abdlc.c:255:3: note: remove the 'if' if its condition is always false
                if(dlc->type == DlcNotSet){
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
abdlc.c:220:58: note: initialize the variable 'next_index' to silence this warning
    int                new_index, known_index, next_index;
                                                         ^
                                                          = 0
abdlc.c:284:6: warning: variable 'next_row' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                if(dlc->type == DlcNotSet){
                   ^~~~~~~~~~~~~~~~~~~~~~
abdlc.c:460:41: note: uninitialized use occurs here
        "next_row=%ld prev_row=%ld row=%ld\n", next_row, prev_row, row));
                                               ^~~~~~~~
./debug.h:39:40: note: expanded from macro 'dprint'
#define   dprint(x)     { output_debug_msg x ; }
                                           ^
abdlc.c:284:3: note: remove the 'if' if its condition is always false
                if(dlc->type == DlcNotSet){
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
abdlc.c:222:32: note: initialize the variable 'next_row' to silence this warning
    long               next_row;
                               ^
                                = 0
abdlc.c:255:6: warning: variable 'prev_row' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                if(dlc->type == DlcNotSet){
                   ^~~~~~~~~~~~~~~~~~~~~~
abdlc.c:460:51: note: uninitialized use occurs here
        "next_row=%ld prev_row=%ld row=%ld\n", next_row, prev_row, row));
                                                         ^~~~~~~~
./debug.h:39:40: note: expanded from macro 'dprint'
#define   dprint(x)     { output_debug_msg x ; }
                                           ^
abdlc.c:255:3: note: remove the 'if' if its condition is always false
                if(dlc->type == DlcNotSet){
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
abdlc.c:223:32: note: initialize the variable 'prev_row' to silence this warning
    long               prev_row;
                               ^
                                = 0
abdlc.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: abdlc.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
5 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c addrbook.c
addrbook.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: addrbook.c 90 2006-07-19 22:30:36Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c addrstring.c
addrstring.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: addrstring.c 770 2007-10-24 00:23:09Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c adrbklib.c
adrbklib.c:823:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
    if(count < 0)
       ~~~~~ ^ ~
adrbklib.c:4111:17: warning: expression which evaluates to zero treated as a null pointer constant of type 'time_t *' (aka 'long *') [-Wnon-literal-null-conversion]
            now = time((time_t) 0);
                       ^~~~~~~~~~
adrbklib.c:4801:58: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
    if(new_entry_num && (adrbk_cntr_t) current_entry_num >= 0
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~
adrbklib.c:4812:12: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
        if(e->ent >= 0 && e->ent < count)
           ~~~~~~ ^  ~
adrbklib.c:4827:39: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
            if(e2->ent != NO_NEXT && e2->ent >= 0 && e2->ent < count && e2->ent < smallest->ent)
                                     ~~~~~~~ ^  ~
adrbklib.c:4848:12: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
        if(e->ent >= 0 && e->ent < count)
           ~~~~~~ ^  ~
adrbklib.c:4860:39: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
            if(e2->ent != NO_NEXT && e2->ent >= 0 && e2->ent < count && e2->ent < smallest->ent)
                                     ~~~~~~~ ^  ~
adrbklib.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: adrbklib.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
8 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c bldaddr.c
bldaddr.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: bldaddr.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c charset.c
charset.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: charset.c 1032 2008-04-11 00:30:04Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c color.c
color.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: color.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c conf.c
conf.c:4644:33: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(buf, sizeof(buf), "{%.*s/nntp}#news.[]", sizeof(buf)-20,
                                     ~~^~                 ~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
conf.c:5866:5: warning: variable 'we_cancel' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
        if(!(flags & WRP_NOUSER))
           ^~~~~~~~~~~~~~~~~~~~~
conf.c:5889:5: note: uninitialized use occurs here
        if(we_cancel)
           ^~~~~~~~~
conf.c:5866:2: note: remove the 'if' if its condition is always true
        if(!(flags & WRP_NOUSER))
        ^~~~~~~~~~~~~~~~~~~~~~~~~
conf.c:5861:20: note: initialize the variable 'we_cancel' to silence this warning
        int   e, we_cancel;
                          ^
                           = 0
conf.c:6309:7: warning: variable 'prc' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
      default:
      ^~~~~~~
conf.c:6313:8: note: uninitialized use occurs here
    if(prc)
       ^~~
conf.c:6278:25: note: initialize the variable 'prc' to silence this warning
    PINERC_S        *prc;
                        ^
                         = NULL
conf.c:6375:7: warning: variable 'prc' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
      default:
      ^~~~~~~
conf.c:6379:8: note: uninitialized use occurs here
    if(prc)
       ^~~
conf.c:6336:25: note: initialize the variable 'prc' to silence this warning
    PINERC_S        *prc;
                        ^
                         = NULL
conf.c:7481:37: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(buf1, sizeof(buf1), "%.*s", MAX(sizeof(buf1) - 1 - strlen(message), 0), arg);
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
conf.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: conf.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
6 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c context.c
context.c:193:26: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(b, len, "%.*s", MIN(p - c->context + 1, len-1), c->context);
            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
context.c:195:46: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(b+strlen(b), len-strlen(b), "%.*s", len-1-strlen(b), name);
                                                  ~~^~   ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
context.c:202:22: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(b, len, "%.*s", len-1, c->dir->ref);
                          ~~^~   ~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
context.c:204:42: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(b+strlen(b), len-strlen(b), "%.*s", len-1-strlen(b), name);
                                              ~~^~   ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
context.c:713:62: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
        snprintf(tmp_20k_buf, SIZEOF_20KBUF, "%solders%s%.100s in %.*s%s",
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
context.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: context.c 1144 2008-08-14 16:53:34Z hubert@u.washington.edu $";
            ^
6 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c copyaddr.c
copyaddr.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: copyaddr.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c detoken.c
detoken.c:188:13: warning: variable 'ret' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    else if(str2){
            ^~~~
detoken.c:195:12: note: uninitialized use occurs here
    return(ret);
           ^~~
detoken.c:188:10: note: remove the 'if' if its condition is always true
    else if(str2){
         ^~~~~~~~
detoken.c:146:14: note: initialize the variable 'ret' to silence this warning
    char *ret, *str1, *str2;
             ^
              = NULL
detoken.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: detoken.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c detach.c
detach.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: detach.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c editorial.c
editorial.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: editorial.c 768 2007-10-24 00:10:03Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c escapes.c
escapes.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: escapes.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c filter.c
filter.c:894:2: warning: unused variable 'ip' [-Wunused-variable]
        GF_INIT(f, f);
        ^
filter.c:178:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_IP_INIT(FO);  \
                                       ^
filter.c:165:23: note: expanded from macro 'GF_IP_INIT'
#define GF_IP_INIT(F)   ip  = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:894:2: warning: unused variable 'eib' [-Wunused-variable]
filter.c:179:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EIB_INIT(FO);
                                       ^
filter.c:167:24: note: expanded from macro 'GF_EIB_INIT'
#define GF_EIB_INIT(F)  eib = (F) ? GF_QUE_END(F) : NULL
                        ^
filter.c:971:2: warning: unused variable 'op' [-Wunused-variable]
        GF_INIT(gf_master, gf_master);
        ^
filter.c:176:40: note: expanded from macro 'GF_INIT'
#define GF_INIT(FI, FO) unsigned char *GF_OP_INIT(FI);   \
                                       ^
filter.c:169:23: note: expanded from macro 'GF_OP_INIT'
#define GF_OP_INIT(F)   op  = (F) ? &(F)->queue[(F)->queueout] : NULL
                        ^
filter.c:971:2: warning: unused variable 'eob' [-Wunused-variable]
filter.c:177:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EOB_INIT(FI); \
                                       ^
filter.c:170:24: note: expanded from macro 'GF_EOB_INIT'
#define GF_EOB_INIT(F)  eob = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:1160:5: warning: unused variable 'eob' [-Wunused-variable]
    GF_INIT(gf_master, gf_master);
    ^
filter.c:177:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EOB_INIT(FI); \
                                       ^
filter.c:170:24: note: expanded from macro 'GF_EOB_INIT'
#define GF_EOB_INIT(F)  eob = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:1186:5: warning: unused variable 'eob' [-Wunused-variable]
    GF_INIT(gf_master, gf_master);
    ^
filter.c:177:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EOB_INIT(FI); \
                                       ^
filter.c:170:24: note: expanded from macro 'GF_EOB_INIT'
#define GF_EOB_INIT(F)  eob = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:1186:5: warning: unused variable 'op' [-Wunused-variable]
filter.c:176:40: note: expanded from macro 'GF_INIT'
#define GF_INIT(FI, FO) unsigned char *GF_OP_INIT(FI);   \
                                       ^
filter.c:169:23: note: expanded from macro 'GF_OP_INIT'
#define GF_OP_INIT(F)   op  = (F) ? &(F)->queue[(F)->queueout] : NULL
                        ^
filter.c:3698:13: warning: unused variable 'ep2' [-Wunused-variable]
        ELPROP_S  *ep2;
                   ^
filter.c:5394:43: warning: field precision should have type 'int', but argument has type 'size_t' (aka 'unsigned long') [-Wformat]
                          snprintf(path = tmp, sizeof(tmp), "%.*s", len, base_path);
                                                             ~~^~   ~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
filter.c:6933:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if(rip = feed->items){
                   ~~~~^~~~~~~~~~~~~
filter.c:6933:10: note: place parentheses around the assignment to silence this warning
                if(rip = feed->items){
                       ^
                   (                )
filter.c:6933:10: note: use '==' to turn this assignment into an equality comparison
                if(rip = feed->items){
                       ^
                       ==
filter.c:7027:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if(rip = feed->items){
                   ~~~~^~~~~~~~~~~~~
filter.c:7027:10: note: place parentheses around the assignment to silence this warning
                if(rip = feed->items){
                       ^
                   (                )
filter.c:7027:10: note: use '==' to turn this assignment into an equality comparison
                if(rip = feed->items){
                       ^
                       ==
filter.c:7080:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                if(rip = feed->items){
                   ~~~~^~~~~~~~~~~~~
filter.c:7080:10: note: place parentheses around the assignment to silence this warning
                if(rip = feed->items){
                       ^
                   (                )
filter.c:7080:10: note: use '==' to turn this assignment into an equality comparison
                if(rip = feed->items){
                       ^
                       ==
filter.c:7645:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
                    getcwd(p = buf, sizeof(buf));
                    ^~~~~~ ~~~~~~~~~~~~~~~~~~~~
filter.c:7812:2: warning: unused variable 'ip' [-Wunused-variable]
        GF_INIT(f, f->next);
        ^
filter.c:178:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_IP_INIT(FO);  \
                                       ^
filter.c:165:23: note: expanded from macro 'GF_IP_INIT'
#define GF_IP_INIT(F)   ip  = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:7812:2: warning: unused variable 'eib' [-Wunused-variable]
filter.c:179:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EIB_INIT(FO);
                                       ^
filter.c:167:24: note: expanded from macro 'GF_EIB_INIT'
#define GF_EIB_INIT(F)  eib = (F) ? GF_QUE_END(F) : NULL
                        ^
filter.c:8771:5: warning: unused variable 'op' [-Wunused-variable]
    GF_INIT(f, f->next);
    ^
filter.c:176:40: note: expanded from macro 'GF_INIT'
#define GF_INIT(FI, FO) unsigned char *GF_OP_INIT(FI);   \
                                       ^
filter.c:169:23: note: expanded from macro 'GF_OP_INIT'
#define GF_OP_INIT(F)   op  = (F) ? &(F)->queue[(F)->queueout] : NULL
                        ^
filter.c:8771:5: warning: unused variable 'eob' [-Wunused-variable]
filter.c:177:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EOB_INIT(FI); \
                                       ^
filter.c:170:24: note: expanded from macro 'GF_EOB_INIT'
#define GF_EOB_INIT(F)  eob = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:8843:5: warning: unused variable 'op' [-Wunused-variable]
    GF_INIT(f, f->next);
    ^
filter.c:176:40: note: expanded from macro 'GF_INIT'
#define GF_INIT(FI, FO) unsigned char *GF_OP_INIT(FI);   \
                                       ^
filter.c:169:23: note: expanded from macro 'GF_OP_INIT'
#define GF_OP_INIT(F)   op  = (F) ? &(F)->queue[(F)->queueout] : NULL
                        ^
filter.c:8843:5: warning: unused variable 'eob' [-Wunused-variable]
filter.c:177:19: note: expanded from macro 'GF_INIT'
                        unsigned char *GF_EOB_INIT(FI); \
                                       ^
filter.c:170:24: note: expanded from macro 'GF_EOB_INIT'
#define GF_EOB_INIT(F)  eob = (F) ? &(F)->queue[(F)->queuein] : NULL
                        ^
filter.c:8890:10: warning: unused variable 'margin_l' [-Wunused-variable]
    int         margin_l, margin_r;
                ^
filter.c:8890:20: warning: unused variable 'margin_r' [-Wunused-variable]
    int         margin_l, margin_r;
                          ^
filter.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: filter.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
22 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c flag.c
flag.c:588:43: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
        if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
flag.c:588:43: note: remove extraneous parentheses around the comparison to silence this warning
        if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
           ~                                     ^      ~
flag.c:588:43: note: use '=' to turn this equality comparison into an assignment
        if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
                                                 ^~
                                                 =
flag.c:709:2: warning: add explicit braces to avoid dangling else [-Wdangling-else]
        else if(hide)
        ^
flag.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: flag.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c folder.c
folder.c:886:6: warning: add explicit braces to avoid dangling else [-Wdangling-else]
            else if(*p == ']'){
            ^
folder.c:1406:47: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  if (s == NULL) s = (unsigned char *) cpystr(mailbox);
                                              ^~~~~~~
./../c-client/misc.h:88:27: note: passing argument to parameter 'string' here
char *cpystr (const char *string);
                          ^
folder.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: folder.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c handle.c
handle.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: handle.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c help.c
help.c:43:37: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(name, sizeof(name), "%.*s", MIN(url_len,sizeof(name)), url);
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
help.c:215:14: warning: variable 'p' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
            else if(rmcat == No){
                    ^~~~~~~~~~~
help.c:219:9: note: uninitialized use occurs here
            if(p){
               ^
help.c:215:11: note: remove the 'if' if its condition is always true
            else if(rmcat == No){
                 ^~~~~~~~~~~~~~~
help.c:167:36: note: initialize the variable 'p' to silence this warning
            REV_MSG_S *pjo, *plo, *phi, *p;
                                          ^
                                           = NULL
help.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: help.c 900 2008-01-05 01:13:26Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c helpindx.c
helpindx.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: helpindx.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c hist.c
hist.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: hist.c 807 2007-11-09 01:21:33Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c icache.c
icache.c:264:46: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
icache.c:264:46: note: remove extraneous parentheses around the comparison to silence this warning
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
       ~                                     ^      ~
icache.c:264:46: note: use '=' to turn this equality comparison into an assignment
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
                                             ^~
                                             =
icache.c:294:46: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
icache.c:294:46: note: remove extraneous parentheses around the comparison to silence this warning
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
       ~                                     ^      ~
icache.c:294:46: note: use '=' to turn this equality comparison into an assignment
    if((*(peltp = (PINELT_S **) &mc->sparep) == NULL)){
                                             ^~
                                             =
icache.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: icache.c 874 2007-12-15 02:51:06Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c imap.c
imap.c:256:5: warning: variable 'mc' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
        if(rawno > 0L && rawno <= stream->nmsgs)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap.c:259:6: note: uninitialized use occurs here
        if(!mc){
            ^~
imap.c:256:2: note: remove the 'if' if its condition is always true
        if(rawno > 0L && rawno <= stream->nmsgs)
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
imap.c:256:5: warning: variable 'mc' is used uninitialized whenever '&&' condition is false [-Wsometimes-uninitialized]
        if(rawno > 0L && rawno <= stream->nmsgs)
           ^~~~~~~~~~
imap.c:259:6: note: uninitialized use occurs here
        if(!mc){
            ^~
imap.c:256:5: note: remove the '&&' if its condition is always true
        if(rawno > 0L && rawno <= stream->nmsgs)
           ^~~~~~~~~~~~~
imap.c:209:21: note: initialize the variable 'mc' to silence this warning
    MESSAGECACHE *mc;
                    ^
                     = NULL
imap.c:587:12: warning: explicitly assigning a variable of type 'MAILSTREAM *' (aka 'struct mail_stream *') to itself [-Wself-assign]
    stream = stream; /* For compiler complaints that this isn't used */
    ~~~~~~ ^ ~~~~~~
imap.c:617:12: warning: explicitly assigning a variable of type 'MAILSTREAM *' (aka 'struct mail_stream *') to itself [-Wself-assign]
    stream = stream; /* For compiler complaints that this isn't used */
    ~~~~~~ ^ ~~~~~~
imap.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: imap.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
5 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c init.c
init.c:382:49: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(searchname, sizeof(searchname), "%.*s*", sizeof(searchname)-2, folder_base);
                                              ~~^~    ~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
init.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: init.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c keyword.c
keyword.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: keyword.c 807 2007-11-09 01:21:33Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c ldap.c
ldap.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: ldap.c 1204 2009-02-02 19:54:23Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c list.c
list.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: list.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailcap.c
mailcap.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailcap.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailcmd.c
mailcmd.c:1570:27: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                            "Clos%s folder \"%.*s\". %s%s%s message%s.",
                                             ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:1580:60: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(buff2, sizeof(buff2), "Clos%s empty folder \"%.*s\"",
                                                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:1612:57: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(buff2, sizeof(buff2), "Clos%s news group \"%.*s\"",
                                                                    ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:1643:33: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        "Clos%s read-only folder \"%.*s\". No changes to save",
                                                   ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailcmd.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
5 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailindx.c
mailindx.c:6124:36: warning: field width should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(fptr, strsize, "To: %-*.*s", strsize-1-4, strsize-1-4,
                                                     ~~~^~~   ~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailindx.c:6156:33: warning: field width should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(fptr, strsize, "%-*.*s", strsize-1, strsize-1, mb);
                                           ~~~^~~   ~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailindx.c:6158:36: warning: field width should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(fptr, strsize, "%s@%-*.*s", mb, strsize-1-len-1, strsize-1-len-1, hst);
                                              ~~~^~~       ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailindx.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailindx.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
4 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c maillist.c
maillist.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: maillist.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailview.c
mailview.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailview.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c margin.c
margin.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: margin.c 1032 2008-04-11 00:30:04Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mimedesc.c
mimedesc.c:225:27: warning: use of unary operator that may be intended as compound assignment (-=)
        string[sizeof(string)-1] =- '\0';
                                 ^~
mimedesc.c:283:38: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(numx, sizeof(numx), "%.*s%d.", sizeof(numx)-20, prefix, num);
                                          ~~^~      ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mimedesc.c:151:10: warning: variable 'can_display_ext' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized]
        else if(mailcap_can_display(body->type, body->subtype, body, 0)
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mimedesc.c:169:9: note: uninitialized use occurs here
            if(can_display_ext)
               ^~~~~~~~~~~~~~~
mimedesc.c:151:10: note: remove the '||' if its condition is always false
        else if(mailcap_can_display(body->type, body->subtype, body, 0)
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mimedesc.c:75:45: note: initialize the variable 'can_display_ext' to silence this warning
    int        n, named = 0, can_display_ext;
                                            ^
                                             = 0
mimedesc.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mimedesc.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
4 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mimetype.c
mimetype.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mimetype.c 955 2008-03-06 23:52:36Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c msgno.c
msgno.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: msgno.c 854 2007-12-07 17:44:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c newmail.c
newmail.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: newmail.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c news.c
news.c:225:40: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(ng_ref, sizeof(ng_ref), "{%.*s/nntp}#news.",
                                                   ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
news.c:271:42: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(ng_ref, sizeof(ng_ref), "{%.*s/nntp}#news.%.*s", 
                                                     ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
news.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: news.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pattern.c
pattern.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pattern.c 1204 2009-02-02 19:54:23Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pipe.c
pipe.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pipe.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c readfile.c
readfile.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: readfile.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c remote.c
remote.c:641:8: warning: variable 'tempfile' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if(!(pith_opt_rd_metadata_name && (metafile = (*pith_opt_rd_metadata_name)())))
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:732:8: note: uninitialized use occurs here
    if(tempfile){
       ^~~~~~~~
remote.c:641:5: note: remove the 'if' if its condition is always false
    if(!(pith_opt_rd_metadata_name && (metafile = (*pith_opt_rd_metadata_name)())))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:617:19: note: initialize the variable 'tempfile' to silence this warning
    char *tempfile;
                  ^
                   = NULL
remote.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: remote.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c reply.c
reply.c:721:29: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(buf, buflen, "%.*s", buflen-1, subject);
                                 ~~^~   ~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:726:33: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
              snprintf(buf, buflen, "%.*s", buflen-1, subject);
                                     ~~^~   ~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:731:36: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
      snprintf(buf, buflen, "Re: %.*s", buflen-1,
                                 ~~^~   ~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:880:57: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
      snprintf(section = sect_buf, sizeof(sect_buf), "%.*s.1", sizeof(sect_buf)-1, sect_prefix);
                                                      ~~^~     ~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:1089:47: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    snprintf(sect_buf, sizeof(sect_buf), "%.*s%s%.*s",
                                                          ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:1111:44: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(sect_buf, sizeof(sect_buf), "%.*s%s%d",
                                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:2853:37: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(tmp, sizeof(tmp), "%d%s%.*s", num, (p) ? "." : "",
                                                ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:3545:40: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(tmp_buf, sizeof(tmp_buf), "%.*s%s%s%d",
                                            ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
reply.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: reply.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
9 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c rfc2231.c
rfc2231.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: rfc2231.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c save.c
save.c:1477:50: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
              snprintf(boundary, sizeof(boundary), "--%.*s\015\012", sizeof(boundary)-10,
                                                      ~~^~           ~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:1520:44: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(boundary, sizeof(boundary), "--%.*s--\015\012", sizeof(boundary)-10,param->value);
                                                ~~^~             ~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:1622:46: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(tmp, sizeof(tmp), "%*.*sA %s/%.*s%.10s%.100s%.10s segment described",
                                                  ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:1637:46: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(tmp, sizeof(tmp), "%*.*sA %s/%.*s%.10s%.100s%.10s segment containing:",
                                                  ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:1660:42: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(tmp, sizeof(tmp), "%*.*sA %s/%.*s%.10s%.100s%.10s segment of about %s bytes%s",
                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:1676:59: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(tmp, sizeof(tmp), "%*.*s   described as \"%.*s\"", depth, depth, " ",
                                                               ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
save.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: save.c 1204 2009-02-02 19:54:23Z hubert@u.washington.edu $";
            ^
7 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c search.c
search.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: search.c 854 2007-12-07 17:44:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c sequence.c
sequence.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: sequence.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c send.c
send.c:1566:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
send.c:4189:17: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
    if(c_in_buf >= 0 && c_in_buf < SIZEOF_20KBUF)
       ~~~~~~~~ ^  ~
send.c:5396:35: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(tmp, sizeof(tmp), "%.*s %.*s", (sizeof(tmp)-3)/2, SENDMAIL,
                                ~~^~        ~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
send.c:5613:6: warning: add explicit braces to avoid dangling else [-Wdangling-else]
            else{
            ^
send.c:5654:70: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(tmp, sizeof(tmp), _("Unexpected hostname for piped SMTP: %.*s"), 
                                                                          ~~^~
../include/system.h:245:29: note: expanded from macro '_'
# define _(String) gettext (String)
                            ^
/usr/include/libintl.h:109:41: note: expanded from macro 'gettext'
# define gettext(msgid) dgettext (NULL, msgid)
                                        ^
/usr/include/libintl.h:112:26: note: expanded from macro 'dgettext'
  dcgettext (domainname, msgid, LC_MESSAGES)
                         ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
send.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: send.c 1204 2009-02-02 19:54:23Z hubert@u.washington.edu $";
            ^
6 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c sort.c
sort.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: sort.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c state.c
state.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: state.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c status.c
status.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: status.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c store.c
store.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: store.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c stream.c
stream.c:1913:32: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(tmp, sizeof(tmp), "%.*s%.*s", sizeof(tmp)/2-1, r ? r : "",
                                    ~~^~       ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
stream.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: stream.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c string.c
string.c:417:14: warning: variable 'first' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
            else if(where == EndDots){
                    ^~~~~~~~~~~~~~~~
string.c:423:9: note: uninitialized use occurs here
            if(first){
               ^~~~~
string.c:417:11: note: remove the 'if' if its condition is always true
            else if(where == EndDots){
                 ^~~~~~~~~~~~~~~~~~~~
string.c:384:25: note: initialize the variable 'first' to silence this warning
    unsigned alen, first, second;
                        ^
                         = 0
string.c:2715:8: warning: variable 'q' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    if(src){
       ^~~
string.c:2763:12: note: uninitialized use occurs here
    return(q);
           ^
string.c:2715:5: note: remove the 'if' if its condition is always true
    if(src){
    ^~~~~~~
string.c:2712:12: note: initialize the variable 'q' to silence this warning
    char *q, *p;
           ^
            = NULL
string.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: string.c 910 2008-01-14 22:28:38Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c strlst.c
strlst.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: strlst.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c takeaddr.c
takeaddr.c:1807:18: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion]
    res[count] = '\0';
                 ^~~~
takeaddr.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: takeaddr.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c tempfile.c
tempfile.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: tempfile.c 770 2007-10-24 00:23:09Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c text.c
text.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: text.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c thread.c
thread.c:732:8: warning: variable 'peltp' is used uninitialized whenever '&&' condition is false [-Wsometimes-uninitialized]
    if((mc = mail_elt(stream, rawno))
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
thread.c:738:10: note: uninitialized use occurs here
    if((*peltp)->pthrd == NULL)
         ^~~~~
thread.c:732:8: note: remove the '&&' if its condition is always true
    if((mc = mail_elt(stream, rawno))
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
thread.c:723:23: note: initialize the variable 'peltp' to silence this warning
    PINELT_S   **peltp;
                      ^
                       = NULL
thread.c:897:8: warning: variable 'thrd' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    if(rawno)
       ^~~~~
thread.c:900:9: note: uninitialized use occurs here
    if(!thrd)
        ^~~~
thread.c:897:5: note: remove the 'if' if its condition is always true
    if(rawno)
    ^~~~~~~~~
thread.c:887:23: note: initialize the variable 'thrd' to silence this warning
    PINETHRD_S   *thrd;
                      ^
                       = NULL
thread.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: thread.c 942 2008-03-04 18:21:33Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c adjtime.c
adjtime.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: adjtime.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c url.c
url.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: url.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c util.c
util.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: util.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c helptext.c
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c smkeys.c
smkeys.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: smkeys.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c smime.c
smime.c:1324:9: warning: unused variable 'fpp' [-Wunused-variable]
  FILE *fpp;
        ^
smime.c:1334:6: warning: variable 'in' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
  if((cert = get_cert_for(pcert->name)) != NULL)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smime.c:1364:12: note: uninitialized use occurs here
  BIO_free(in);
           ^~
smime.c:1334:3: note: remove the 'if' if its condition is always true
  if((cert = get_cert_for(pcert->name)) != NULL)
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smime.c:1322:10: note: initialize the variable 'in' to silence this warning
  BIO *in;
         ^
          = NULL
smime.c:1817:23: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types with different sign [-Wpointer-sign]
  ret = rfc822_base64(tmp, strlen(tmp), &len);
                      ^~~
./../c-client/rfc822.h:102:37: note: passing argument to parameter 'src' here
void *rfc822_base64 (unsigned char *src,unsigned long srcl,unsigned long *len);
                                    ^
smime.c:1798:13: warning: unused variable 'pkey' [-Wunused-variable]
  EVP_PKEY *pkey = NULL, *key = NULL;
            ^
smime.c:1800:17: warning: unused variable 'cert' [-Wunused-variable]
  X509 *recip, *cert;
                ^
smime.c:1801:12: warning: unused variable 'outs' [-Wunused-variable]
  STORE_S *outs = NULL, *store, *ins;
           ^
smime.c:1801:26: warning: unused variable 'store' [-Wunused-variable]
  STORE_S *outs = NULL, *store, *ins;
                         ^
smime.c:1801:34: warning: unused variable 'ins' [-Wunused-variable]
  STORE_S *outs = NULL, *store, *ins;
                                 ^
smime.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: smime.c 1176 2008-09-29 21:16:42Z hubert@u.washington.edu $";
            ^
9 warnings generated.
rm -f libpith.a
/usr/bin/ar cru libpith.a ablookup.o abdlc.o addrbook.o addrstring.o adrbklib.o bldaddr.o charset.o color.o conf.o context.o copyaddr.o detoken.o detach.o editorial.o escapes.o filter.o flag.o folder.o handle.o help.o helpindx.o hist.o icache.o imap.o init.o keyword.o ldap.o list.o mailcap.o mailcmd.o mailindx.o maillist.o mailview.o margin.o mimedesc.o mimetype.o msgno.o newmail.o news.o pattern.o pipe.o readfile.o remote.o reply.o rfc2231.o save.o search.o sequence.o send.o sort.o state.o status.o store.o stream.o string.o strlst.o takeaddr.o tempfile.o text.o thread.o adjtime.o url.o util.o helptext.o smkeys.o smime.o 
ranlib libpith.a
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
Making all in pico
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
Making all in osdep
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c altedit.c
altedit.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: altedit.c 854 2007-12-07 17:44:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c chkpoint.c
chkpoint.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: chkpoint.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c color.c
color.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: color.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c filesys.c
filesys.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: filesys.c 770 2007-10-24 00:23:09Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c fsync.c
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c getkey.c
getkey.c:320:12: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
    if (ch >= 0x00 && ch <= 0x1F)       /* C0 control -> C-     */
        ~~ ^  ~~~~
getkey.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: getkey.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mouse.c
mouse.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mouse.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c newmail.c
newmail.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: newmail.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c popen.c
popen.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: popen.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c raw.c
raw.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: raw.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c read.c
read.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: read.c 763 2007-10-23 23:37:34Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c shell.c
shell.c:108:2: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
        system((shell = (char *)getenv("SHELL")) ? shell : "/bin/csh");
        ^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shell.c:109:13: warning: variable 'dummy' is uninitialized when used here [-Wuninitialized]
        rtfrmshell(dummy);      /* fixup tty */
                   ^~~~~
shell.c:101:13: note: initialize the variable 'dummy' to silence this warning
        int   dummy;
                   ^
                    = 0
shell.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: shell.c 807 2007-11-09 01:21:33Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c signals.c
signals.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: signals.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c spell.c
spell.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: spell.c 854 2007-12-07 17:44:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c terminal.c
terminal.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: terminal.c 921 2008-01-31 02:09:25Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c truncate.c
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c tty.c
tty.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: tty.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
rm -f libpicoosd.a
/usr/bin/ar cru libpicoosd.a altedit.o chkpoint.o color.o filesys.o fsync.o getkey.o mouse.o newmail.o popen.o raw.o read.o shell.o signals.o spell.o terminal.o truncate.o tty.o 
ranlib libpicoosd.a
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c attach.c
attach.c:167:43: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
                      snprintf(bfn, sizeof(bfn), "%s%c%.*s", 
                                                      ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
attach.c:1071:61: warning: 'strncpy' call operates on objects of type 'char' while the size is based on a different type 'char *' [-Wsizeof-pointer-memaccess]
                    strncpy(sz, (lblsz) ? lblsz : prettysz(attsz), sizeof(sz));
                            ~~                                            ^~
attach.c:1071:61: note: did you mean to provide an explicit length?
                    strncpy(sz, (lblsz) ? lblsz : prettysz(attsz), sizeof(sz));
                                                                          ^~
attach.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: attach.c 1082 2008-06-12 18:39:50Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c basic.c
basic.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: basic.c 831 2007-11-27 01:04:19Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c bind.c
bind.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: bind.c 857 2007-12-08 00:49:45Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c browse.c
browse.c:1472:41: warning: the value of the size argument in 'strncat' is too large, might lead to a buffer overflow [-Wstrncat-size]
                    strncat(tmp, gmp->current->fname, sizeof(tmp)-strlen(tmp));
                                                      ^~~~~~~~~~~~~~~~~~~~~~~
browse.c:1472:41: note: change the argument to be the free space in the destination buffer minus the terminating null byte
                    strncat(tmp, gmp->current->fname, sizeof(tmp)-strlen(tmp));
                                                      ^~~~~~~~~~~~~~~~~~~~~~~
                                                      sizeof(tmp) - strlen(tmp) - 1
browse.c:2695:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      chdir(mp->dname);
      ^~~~~ ~~~~~~~~~
browse.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: browse.c 942 2008-03-04 18:21:33Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c buffer.c
buffer.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: buffer.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c composer.c
composer.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: composer.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c display.c
display.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: display.c 1025 2008-04-08 22:59:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c file.c
file.c:403:39: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
          snprintf(dirbuf, dirbuflen, "%s%c%.*s", 
                                           ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
file.c:638:40: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
                          snprintf(dir, sizeof(dir), "%s%c%.*s", 
                                                          ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
file.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: file.c 1082 2008-06-12 18:39:50Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c fileio.c
fileio.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: fileio.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c line.c
line.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: line.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pico.c
pico.c:929:4: warning: add explicit braces to avoid dangling else [-Wdangling-else]
          else
          ^
pico.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pico.c 921 2008-01-31 02:09:25Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c random.c
random.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: random.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c region.c
region.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: region.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c search.c
search.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: search.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c window.c
window.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: window.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c word.c
word.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: word.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
rm -f libpico.a
/usr/bin/ar cru libpico.a attach.o basic.o bind.o browse.o buffer.o composer.o display.o file.o fileio.o line.o pico.o random.o region.o search.o window.o word.o 
ranlib libpico.a
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c main.c
main.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: main.c 1184 2008-12-16 23:52:15Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c utf8stub.c
utf8stub.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: utf8stub.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall  -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o pico main.o utf8stub.o ../c-client/utf8.o libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -o pico main.o utf8stub.o ../c-client/utf8.o  -L/usr/lib libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a -lgssapi_krb5 -lldap -ltinfo -llber -lssl -pthread
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pilot.c
pilot.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pilot.c 1184 2008-12-16 23:52:15Z hubert@u.washington.edu $";
            ^
1 warning generated.
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall  -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o pilot pilot.o utf8stub.o ../c-client/utf8.o libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -o pilot pilot.o utf8stub.o ../c-client/utf8.o  -L/usr/lib libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a -lgssapi_krb5 -lldap -ltinfo -llber -lssl -pthread
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
Making all in alpine
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
echo "char datestamp[]="\"`date`\"";" > date.c
echo "char hoststamp[]="\"`hostname`\"";" >> date.c
/usr/bin/make  all-recursive
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
Making all in osdep
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c chnge_pw.c
chnge_pw.c:59:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    system(cmd_buf);
    ^~~~~~ ~~~~~~~
chnge_pw.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: chnge_pw.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c debuging.c
debuging.c:401:48: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    snprintf(tmp, sizeof(tmp), " %20.20s : %.*s\n", vars->name,
                                                           ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
debuging.c:405:44: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(tmp, sizeof(tmp)," %20.20s : %.*s\n","",
                                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
debuging.c:420:48: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    snprintf(tmp, sizeof(tmp), " %20.20s : %.*s\n", vars->name,
                                                           ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
debuging.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: debuging.c 900 2008-01-05 01:13:26Z hubert@u.washington.edu $";
            ^
4 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c diskquot.non.c
diskquot.non.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: diskquot.non.c 761 2007-10-23 22:35:18Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c execview.c
execview.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: execview.c 942 2008-03-04 18:21:33Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c fltrname.c
fltrname.c:93:35: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    "Character \"%s\" after \"%.*s\" not allowed in file name",
                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
fltrname.c:105:38: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(error, sizeof(error), "\"%.*s\" is a directory", sizeof(error)-50, file);
                                          ~~^~                    ~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
fltrname.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: fltrname.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c jobcntrl.c
jobcntrl.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: jobcntrl.c 765 2007-10-23 23:51:37Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c print.c
print.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: print.c 942 2008-03-04 18:21:33Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c termin.gen.c
termin.gen.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: termin.gen.c 1025 2008-04-08 22:59:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c termin.unx.c
termin.unx.c:181:8: warning: explicitly assigning a variable of type 'struct pine *' to itself [-Wself-assign]
    ps = ps; /* get rid of unused parameter warning */
    ~~ ^ ~~
termin.unx.c:740:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            fgets(string, string_size, stdin);
            ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
termin.unx.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: termin.unx.c 1025 2008-04-08 22:59:38Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c termout.gen.c
termout.gen.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: termout.gen.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../../include -I../../include -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c termout.unx.c
termout.unx.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: termout.unx.c 955 2008-03-06 23:52:36Z hubert@u.washington.edu $";
            ^
1 warning generated.
rm -f libpineosd.a
/usr/bin/ar cru libpineosd.a chnge_pw.o debuging.o diskquot.non.o execview.o fltrname.o jobcntrl.o print.o termin.gen.o termin.unx.o termout.gen.o termout.unx.o 
ranlib libpineosd.a
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c addrbook.c
addrbook.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: addrbook.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c adrbkcmd.c
adrbkcmd.c:629:27: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion]
            abe.addr.list[cnt] = '\0';
                                 ^~~~
adrbkcmd.c:3310:19: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]
            if(pab->type && REMOTE_VIA_IMAP
                         ^  ~~~~~~~~~~~~~~~
adrbkcmd.c:3310:19: note: use '&' for a bitwise operation
            if(pab->type && REMOTE_VIA_IMAP
                         ^~
                         &
adrbkcmd.c:3310:19: note: remove constant to silence this warning
            if(pab->type && REMOTE_VIA_IMAP
                        ~^~~~~~~~~~~~~~~~~~
adrbkcmd.c:3406:13: warning: variable 'how_many_in_list' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    else if(modify_config == RevertToDefault)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
adrbkcmd.c:3412:8: note: uninitialized use occurs here
    if(how_many_in_list)
       ^~~~~~~~~~~~~~~~
adrbkcmd.c:3406:10: note: remove the 'if' if its condition is always true
    else if(modify_config == RevertToDefault)
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
adrbkcmd.c:3032:33: note: initialize the variable 'how_many_in_list' to silence this warning
                 num_in_list, how_many_in_list, i, cnt, warn_about_revert = 0;
                                              ^
                                               = 0
adrbkcmd.c:4888:22: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion]
        vinfo->email[cnt] = '\0';
                            ^~~~
adrbkcmd.c:4896:24: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion]
            vinfo->email[1] = '\0';
                              ^~~~
adrbkcmd.c:4908:26: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion]
            vinfo->email[cnt] = '\0';
                                ^~~~
adrbkcmd.c:6382:7: warning: variable 'cmd' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
      default:
      ^~~~~~~
adrbkcmd.c:6387:13: note: uninitialized use occurs here
    cmd   = cmd   ? cmd   : "";
            ^~~
adrbkcmd.c:6344:20: note: initialize the variable 'cmd' to silence this warning
    char   ch, *cmd, *dname;
                   ^
                    = NULL
adrbkcmd.c:6382:7: warning: variable 'dname' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
      default:
      ^~~~~~~
adrbkcmd.c:6386:13: note: uninitialized use occurs here
    dname = dname ? dname : "";
            ^~~~~
adrbkcmd.c:6344:28: note: initialize the variable 'dname' to silence this warning
    char   ch, *cmd, *dname;
                           ^
                            = NULL
adrbkcmd.c:7294:9: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
                                    strlen(buf), buf, vals[i],
                                    ^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
adrbkcmd.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: adrbkcmd.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
10 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c after.c
after.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: after.c 138 2006-09-22 22:12:03Z mikes@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c alpine.c
alpine.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: alpine.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c arg.c
arg.c:627:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
                                  getcwd(dir, sizeof(path));
                                  ^~~~~~ ~~~~~~~~~~~~~~~~~
arg.c:671:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
                                  getcwd(dir, sizeof(path));
                                  ^~~~~~ ~~~~~~~~~~~~~~~~~
arg.c:1248:47: warning: for loop has empty body [-Wempty-body]
      for(p1 = value; *p1 && *p1 != '"'; p1++);
                                              ^
arg.c:1248:47: note: put the semicolon on a separate line to silence this warning
arg.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: arg.c 900 2008-01-05 01:13:26Z hubert@u.washington.edu $";
            ^
4 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c busy.c
busy.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: signal.c 138 2006-09-22 22:12:03Z mikes@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c colorconf.c
colorconf.c:2591:34: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
        snprintf(name, sizeof(name), "%.*s", p ? MIN(p - vtmp->name, 30) : 30, vtmp->name);
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
colorconf.c:2598:34: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
        snprintf(name, sizeof(name), "%.*s Symbol",
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
colorconf.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: colorconf.c 934 2008-02-23 00:44:29Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c confscroll.c
confscroll.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: confscroll.c 1169 2008-08-27 06:42:06Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c context.c
context.c:657:10: warning: variable 'other_ctxt' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
        else if(cmd == 'u')
                ^~~~~~~~~~
context.c:661:14: note: uninitialized use occurs here
        other_var = other_ctxt->var.v;
                    ^~~~~~~~~~
context.c:657:7: note: remove the 'if' if its condition is always true
        else if(cmd == 'u')
             ^~~~~~~~~~~~~~
context.c:583:37: note: initialize the variable 'other_ctxt' to silence this warning
    CONTEXT_S *cur_ctxt, *other_ctxt;
                                    ^
                                     = NULL
context.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: context.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c dispfilt.c
dispfilt.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: dispfilt.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c flagmaint.c
flagmaint.c:127:45: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(tmp, sizeof(tmp), "%*.*s---  %.*s",
                                          ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
flagmaint.c:268:44: warning: for loop has empty body [-Wempty-body]
                for(offset=0; (*alval)[offset]; offset++);
                                                         ^
flagmaint.c:268:44: note: put the semicolon on a separate line to silence this warning
flagmaint.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: flagmaint.c 807 2007-11-09 01:21:33Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c folder.c
folder.c:901:16: warning: unused variable 'nickpart' [-Wunused-variable]
    char       nickpart[MAILTMPLEN], servpart[MAILTMPLEN], new_cntxt[MAILTMPLEN];
               ^
folder.c:904:40: warning: unused variable 'new' [-Wunused-variable]
              *return_cntxt = NULL, *val, *p, new[MAILTMPLEN];
                                              ^
folder.c:1160:35: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(tmp, sizeof(tmp), "{%.*s}", sizeof(tmp)-3, server);
                                       ~~^~    ~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
folder.c:3457:36: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(tmp, sizeof(tmp), "%.*s%.*s",
                                        ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
folder.c:3481:39: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    snprintf(tmp2, sizeof(tmp2), "%.*s%.*s",
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
folder.c:4921:35: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(tmp, sizeof(tmp), "%s%.*s*", (rc == 11) ? "" : "*",
                                              ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
folder.c:5893:33: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(tmp, sizeof(tmp), "%.*s", MIN(p - context->context, sizeof(tmp)-1),
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
folder.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: folder.c 1144 2008-08-14 16:53:34Z hubert@u.washington.edu $";
            ^
8 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c help.c
help.c:639:5: warning: variable 'rv' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
        if(config){
           ^~~~~~
help.c:647:10: note: uninitialized use occurs here
        return((rv == MC_EXIT) ? 2 : 1);
                ^~
help.c:639:2: note: remove the 'if' if its condition is always true
        if(config){
        ^~~~~~~~~~
help.c:636:11: note: initialize the variable 'rv' to silence this warning
        int    rv;
                 ^
                  = 0
help.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: help.c 1032 2008-04-11 00:30:04Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c imap.c
imap.c:169:76: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(ps_global->last_error, sizeof(ps_global->last_error), "%s : %.*s",
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
imap.c:1192:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            system("csh");
            ^~~~~~ ~~~~~
imap.c:2050:12: warning: unused variable 'c' [-Wunused-variable]
  char *s, c;
           ^
imap.c:2379:5: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
    fgets(tmp2, sizeof(tmp2), fp);
    ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~
imap.c:2943:16: warning: unused variable 'h1' [-Wunused-variable]
    STRLIST_S *h1, *h2;
               ^
imap.c:2943:21: warning: unused variable 'h2' [-Wunused-variable]
    STRLIST_S *h1, *h2;
                    ^
imap.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: imap.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
7 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c init.c
init.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: init.c 101 2006-08-10 22:53:04Z mikes@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c kblock.c
kblock.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: kblock.c 1025 2008-04-08 22:59:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c keymenu.c
keymenu.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: keymenu.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c ldapconf.c
ldapconf.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: ldapconf.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c listsel.c
listsel.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: listsel.c 918 2008-01-23 19:39:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailcmd.c
mailcmd.c:1041:36: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(cnt, sizeof(cnt), " (%.*s %s)", sizeof(cnt)-20,
                                                      ~~^~       ~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:1074:40: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        snprintf(prompt, sizeof(prompt), "%.*s %.*s \"%.*s\"%.*s? ",
                                                          ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:1241:66: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(prompt, sizeof(prompt), "UNexclude %ld message%s in %.*s", del_count,
                                                                             ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:564:8: warning: variable 'topthrd' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
                                if(thrd && thrd->top)
                                   ^~~~~~~~~~~~~~~~~
mailcmd.c:567:8: note: uninitialized use occurs here
                                if(topthrd)
                                   ^~~~~~~
mailcmd.c:564:5: note: remove the 'if' if its condition is always true
                                if(thrd && thrd->top)
                                ^~~~~~~~~~~~~~~~~~~~~
mailcmd.c:564:8: warning: variable 'topthrd' is used uninitialized whenever '&&' condition is false [-Wsometimes-uninitialized]
                                if(thrd && thrd->top)
                                   ^~~~
mailcmd.c:567:8: note: uninitialized use occurs here
                                if(topthrd)
                                   ^~~~~~~
mailcmd.c:564:8: note: remove the '&&' if its condition is always true
                                if(thrd && thrd->top)
                                   ^~~~~~~
mailcmd.c:510:29: note: initialize the variable 'topthrd' to silence this warning
                PINETHRD_S *thrd, *topthrd;
                                          ^
                                           = NULL
mailcmd.c:455:12: warning: variable 'topthrd' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
                                    if(thrd && thrd->top)
                                       ^~~~~~~~~~~~~~~~~
mailcmd.c:458:12: note: uninitialized use occurs here
                                    if(topthrd)
                                       ^~~~~~~
mailcmd.c:455:9: note: remove the 'if' if its condition is always true
                                    if(thrd && thrd->top)
                                    ^~~~~~~~~~~~~~~~~~~~~
mailcmd.c:455:12: warning: variable 'topthrd' is used uninitialized whenever '&&' condition is false [-Wsometimes-uninitialized]
                                    if(thrd && thrd->top)
                                       ^~~~
mailcmd.c:458:12: note: uninitialized use occurs here
                                    if(topthrd)
                                       ^~~~~~~
mailcmd.c:455:12: note: remove the '&&' if its condition is always true
                                    if(thrd && thrd->top)
                                       ^~~~~~~
mailcmd.c:405:33: note: initialize the variable 'topthrd' to silence this warning
                    PINETHRD_S *thrd, *topthrd;
                                              ^
                                               = NULL
mailcmd.c:1740:34: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                snprintf(fp->comment, l+1, "(%.*s)", strlen(kw->kw), kw->kw);
                                             ~~^~    ~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:3152:69: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(prompt, sizeof(prompt), "Exclude %ld message%s from %.*s", del_count,
                                                                         ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:3205:65: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(prompt, sizeof(prompt), "Expunge %ld message%s from %.*s", del_count,
                                                                     ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:3785:44: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(lfile, sizeof(lfile), "part_%.*s", sizeof(lfile)-6,
                                                       ~~^~   ~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:4344:39: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                    snprintf(full_filename, len, "%.*s", MIN(fn-tmp,len-1), tmp);
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5398:46: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(expanded, sizeof(expanded), " [%.*s]", sizeof(expanded)-5, 
                                                  ~~^~    ~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5409:56: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(prompt, sizeof(prompt), "GOTO %s in <%s> %.*s%s: ",
                                                            ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5414:52: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(prompt, sizeof(prompt), "GOTO folder %.*s%s: ", sizeof(prompt)-20, expanded,
                                                        ~~^~       ~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5421:54: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
              snprintf(prompt, sizeof(prompt), "GOTO <%s> %.*s%s: ",
                                                          ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5425:49: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
              snprintf(prompt, sizeof(prompt), "GOTO %.*s%s: ", sizeof(prompt)-20, expanded,
                                                     ~~^~       ~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5432:46: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(prompt, sizeof(prompt), "<%s> %.*s%s: ",
                                                         ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:5436:41: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(prompt, sizeof(prompt), "%.*s%s: ", sizeof(prompt)-20, expanded,
                                                    ~~^~       ~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailcmd.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailcmd.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
20 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailindx.c
mailindx.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailindx.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailpart.c
mailpart.c:1540:4: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
          ftruncate(fileno((FILE *)store->txt), (off_t) start_of_append);
          ^~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mailpart.c:2750:40: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(tmp, sizeof(tmp), "  %-*.*s : ", indent - 5,
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailpart.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailpart.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c mailview.c
mailview.c:837:5: warning: '&&' within '||' [-Wlogical-op-parentheses]
           && !struncmp(handle->h.url.path, "x-alpine-", 9)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mailview.c:837:5: note: place parentheses around the '&&' expression to silence this warning
           && !struncmp(handle->h.url.path, "x-alpine-", 9)
           ^
mailview.c:850:58: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(prompt, sizeof(prompt), "Compose mail to \"%.*s%s\" ? ",
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailview.c:854:59: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
          snprintf(prompt, sizeof(prompt), "View selected %s %s%.*s%s ? ",
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailview.c:2057:45: warning: field precision should have type 'int', but argument has type 'long' [-Wformat]
              snprintf(folder, sizeof(folder), "{%.*s/nntp}#news.%.*s",
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
mailview.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: mailview.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
5 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c newuser.c
newuser.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: newuser.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pattern.c
pattern.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pattern.c 169 2006-10-04 23:26:48Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c pipe.c
pipe.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: pipe.c 155 2006-09-29 23:28:46Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c print.c
print.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: print.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c radio.c
radio.c:77:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      fgets(rep, WANT_TO_BUF, stdin);
      ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
radio.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: radio.c 769 2007-10-24 00:15:40Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c remote.c
remote.c:100:5: warning: variable 'p' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
        if(!(in_store = so_get(CharStar, NULL, EDIT_ACCESS)) ||
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:213:2: note: uninitialized use occurs here
        p += strlen(p);
        ^
remote.c:100:2: note: remove the 'if' if its condition is always false
        if(!(in_store = so_get(CharStar, NULL, EDIT_ACCESS)) ||
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:100:5: warning: variable 'p' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized]
        if(!(in_store = so_get(CharStar, NULL, EDIT_ACCESS)) ||
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:213:2: note: uninitialized use occurs here
        p += strlen(p);
        ^
remote.c:100:5: note: remove the '||' if its condition is always false
        if(!(in_store = so_get(CharStar, NULL, EDIT_ACCESS)) ||
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
remote.c:180:2: note: variable 'p' is declared here
        char *p = tmp;
        ^
remote.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: remote.c 1032 2008-04-11 00:30:04Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c reply.c
reply.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: reply.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c roleconf.c
roleconf.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: roleconf.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c send.c
send.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: send.c 1142 2008-08-13 17:22:21Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c setup.c
setup.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: setup.c 918 2008-01-23 19:39:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c signal.c
signal.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: signal.c 1025 2008-04-08 22:59:38Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c status.c
status.c:1152:53: warning: field width should have type 'int', but argument has type 'long' [-Wformat]
                    snprintf(t, SIZEOF_20KBUF-(t-tmp_20k_buf), "%*.*s\n", indent + p - m->text, p - m->text, m->text);
                                                                ~~^~~     ~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
status.c:1169:55: warning: field width should have type 'int', but argument has type 'long' [-Wformat]
                    snprintf(t, SIZEOF_20KBUF-(t-tmp_20k_buf), "\n%*.*s", indent + q - p, q - p, p);
                                                                  ~~^~~   ~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
status.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: status.c 840 2007-12-01 01:34:49Z hubert@u.washington.edu $";
            ^
3 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c takeaddr.c
takeaddr.c:1570:52: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
    snprintf(tmp, sizeof(tmp), _("Word to find %s%.*s%s: "),
                                                 ~~^~
../include/system.h:245:29: note: expanded from macro '_'
# define _(String) gettext (String)
                            ^
/usr/include/libintl.h:109:41: note: expanded from macro 'gettext'
# define gettext(msgid) dgettext (NULL, msgid)
                                        ^
/usr/include/libintl.h:112:26: note: expanded from macro 'dgettext'
  dcgettext (domainname, msgid, LC_MESSAGES)
                         ^
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:1896:50: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(buf2, sizeof(buf2), "[%c]  %.*s", ctmp->checked ? 'X' : SPACE,
                                                      ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:1899:49: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  snprintf(buf2, sizeof(buf2), "     %.*s", sizeof(buf2)-6, buf1);
                                                     ~~^~   ~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:2152:36: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                        "Entry with nickname \"%.*s\" already exists, replace ",
                                               ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:2158:20: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                  "Nicknames \"%.*s\" and \"%.*s\" already exist, replace ",
                               ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:2420:8: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
                "%c%.*s",
                   ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:2433:49: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
        snprintf(tmp, sizeof(tmp), "Saved %d %s to \"%.*s\"",
                                                     ~~^~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
takeaddr.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: takeaddr.c 1012 2008-03-26 00:44:22Z hubert@u.washington.edu $";
            ^
8 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c titlebar.c
titlebar.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: titlebar.c 1075 2008-06-04 00:19:39Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c smime.c
smime.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: smime.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
1 warning generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c newmail.c
newmail.c:306:63: warning: field precision should have type 'int', but argument has type 'unsigned long' [-Wformat]
            snprintf(buf, sizeof(buf), "New Mail window started at %.*s\n",
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:8: note: expanded from macro 'snprintf'
                            __VA_ARGS__)
                            ^
newmail.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: newmail.c 1266 2009-07-14 18:39:12Z hubert@u.washington.edu $";
            ^
2 warnings generated.
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c date.c
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall `cat ../c-client/LDFLAGS` -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o alpine addrbook.o adrbkcmd.o after.o alpine.o arg.o busy.o colorconf.o confscroll.o context.o dispfilt.o flagmaint.o folder.o help.o imap.o init.o kblock.o keymenu.o ldapconf.o listsel.o mailcmd.o mailindx.o mailpart.o mailview.o newuser.o pattern.o pipe.o print.o radio.o remote.o reply.o roleconf.o send.o setup.o signal.o status.o takeaddr.o titlebar.o smime.o newmail.o date.o ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -Wl,-z -Wl,defs -Wl,--as-needed -o alpine addrbook.o adrbkcmd.o after.o alpine.o arg.o busy.o colorconf.o confscroll.o context.o dispfilt.o flagmaint.o folder.o help.o imap.o init.o kblock.o keymenu.o ldapconf.o listsel.o mailcmd.o mailindx.o mailpart.o mailview.o newuser.o pattern.o pipe.o print.o radio.o remote.o reply.o roleconf.o send.o setup.o signal.o status.o takeaddr.o titlebar.o smime.o newmail.o date.o  -ldl -L/usr/lib -lcom_err ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a -lgssapi_krb5 -lldap -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto -pthread
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c rpdump.c
rpdump.c:759:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            fgets(string, field_len, stdin);
            ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~
rpdump.c:797:7: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
      fgets(rep, sizeof(rep), stdin);
      ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
rpdump.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: rpdump.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
3 warnings generated.
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall `cat ../c-client/LDFLAGS` -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o rpdump rpdump.o ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -Wl,-z -Wl,defs -Wl,--as-needed -o rpdump rpdump.o  -ldl -L/usr/lib -lcom_err ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a -lgssapi_krb5 -lldap -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto -pthread
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
x86_64-linux-gnu-gcc -DHAVE_CONFIG_H   -I../include -I../include -DLOCALEDIR=\"/usr/share/locale\" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -c rpload.c
rpload.c:998:6: warning: ignoring return value of function declared with warn_unused_result attribute [-Wunused-result]
            fgets(string, field_len, stdin);
            ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~
rpload.c:2:13: warning: unused variable 'rcsid' [-Wunused-variable]
static char rcsid[] = "$Id: rpload.c 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $";
            ^
2 warnings generated.
/bin/bash ../libtool --tag=CC   --mode=link x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall `cat ../c-client/LDFLAGS` -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib -o rpload rpload.o ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto
libtool: link: x86_64-linux-gnu-gcc -g -pthread -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wl,-z -Wl,defs -Wl,--as-needed -Wl,-z -Wl,defs -Wl,--as-needed -o rpload rpload.o  -ldl -L/usr/lib -lcom_err ../pico/libpico.a ../pico/osdep/libpicoosd.a ../pith/libpith.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a osdep/libpineosd.a ../c-client/c-client.a -lgssapi_krb5 -lldap -ltinfo -llber -lssl -lpam -lkrb5 -lcrypto -pthread
../c-client/c-client.a(osdep.o): In function `ssl_onceonlyinit':
/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client/osdep.c:337: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[2]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[1]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
touch debian/stamp-makefile-build
DEB_MAKE_CHECK_TARGET unset, not running checks
 fakeroot debian/rules binary
test -x debian/rules
dh_testroot
dh_clean -k 
dh_clean: dh_clean -k is deprecated; use dh_prep instead
dh_installdirs -A 
mkdir -p "."
/usr/share/cdbs/1/rules/buildcore.mk:109: WARNING:  DEB_DH_STRIP_ARGS is a deprecated variable
if test -e /usr/share/misc/config.guess ; then \
		for i in ./config.guess ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/misc/config.guess $i ; \
			fi ; \
		done ; \
	fi
if test -e /usr/share/misc/config.sub ; then \
		for i in ./config.sub ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/misc/config.sub $i ; \
			fi ; \
		done ; \
	fi
if test -e /usr/share/gnulib/build-aux/config.rpath ; then \
		for i in ./config.rpath ; do \
			if ! test -e $i.cdbs-orig ; then \
				mv $i $i.cdbs-orig ; \
				cp --remove-destination /usr/share/gnulib/build-aux/config.rpath $i ; \
			fi ; \
		done ; \
	fi
DEB_MAKE_CHECK_TARGET unset, not running checks
/usr/bin/make  -C .  install DESTDIR=/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp/
make[1]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
if test ! -L c-client ; then ln -s imap/c-client c-client ; fi
touch imap/ip6
cd imap && /usr/bin/make ldb EXTRACFLAGS=" -I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall" EXTRALDFLAGS=" -L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl"  EXTRASPECIALS="SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss "
make[2]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make build EXTRACFLAGS='-I/usr/include -D_FORTIFY_SOURCE=2 -I/usr/include -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' EXTRALDFLAGS='-L/usr/lib -Wl,-z,defs,--as-needed -L/usr/lib  -lgssapi_krb5 -lssl -lldap  -ltinfo -llber -lssl' EXTRADRIVERS='mbox' EXTRAAUTHENTICATORS='' PASSWDTYPE=std SSLTYPE=nopwd IP=4 EXTRASPECIALS='SSLDIR=/usr SSLCERTS=/etc/ssl/certs EXTRAAUTHENTICATORS=gss ' BUILDTYPE=lnp IP=6 \
	SPECIALS="SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib SSLCERTS=/etc/ssl/certs SSLKEYS=/etc/ssl/private GSSINCLUDE=/usr/include GSSLIB=/usr/lib MAILSPOOL=/var/mail"
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
Rebuilding c-client for lnp...
cd c-client;make all CC=`cat CCTYPE` \
	 CFLAGS="`cat CFLAGS`" `cat SPECIALS`
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/c-client'
sh -c 'rm -rf rebuild || true'
Building bundled tools...
cd mtest;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mtest'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mtest'
cd ipopd;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/ipopd'
make[4]: Nothing to be done for `ipopd'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/ipopd'
cd imapd;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/imapd'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/imapd'
cd mailutil;make
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mailutil'
make[4]: `mailutil' is up to date.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mailutil'
cd mlock;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mlock'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/mlock'
cd dmail;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/dmail'
make[4]: `dmail' is up to date.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/dmail'
cd tmail;make || true
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/tmail'
make[4]: `tmail' is up to date.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap/tmail'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
make[2]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/imap'
/usr/bin/make  install-recursive
make[2]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
Making install in m4
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/m4'
Making install in po
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/po'
/bin/mkdir -p /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share
if test "alpine" = "gettext-tools"; then \
	  /bin/mkdir -p /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share/gettext/po; \
	  for file in Makefile.in.in remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot   Makevars.template; do \
	    /usr/bin/install -c -m 644 ./$file \
			    /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share/gettext/po/$file; \
	  done; \
	  for file in Makevars; do \
	    rm -f /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share/gettext/po/$file; \
	  done; \
	else \
	  : ; \
	fi
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/po'
Making install in pith
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
/usr/bin/make  install-recursive
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
Making install in osdep
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
make[6]: Nothing to be done for `install-exec-am'.
make[6]: Nothing to be done for `install-data-am'.
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/osdep'
Making install in charconv
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
make[6]: Nothing to be done for `install-exec-am'.
make[6]: Nothing to be done for `install-data-am'.
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith/charconv'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[6]: Nothing to be done for `install-exec-am'.
make[6]: Nothing to be done for `install-data-am'.
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pith'
Making install in pico
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
Making install in osdep
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico/osdep'
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
test -z "/usr/bin" || /bin/mkdir -p "/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin"
  /bin/bash ../libtool   --mode=install /usr/bin/install -c pico pilot '/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin'
libtool: install: /usr/bin/install -c pico /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin/pico
libtool: install: /usr/bin/install -c pilot /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin/pilot
make[5]: Nothing to be done for `install-data-am'.
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/pico'
Making install in alpine
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
/usr/bin/make  install-recursive
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
Making install in osdep
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
make[6]: Nothing to be done for `install-exec-am'.
make[6]: Nothing to be done for `install-data-am'.
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine/osdep'
make[5]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[6]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
test -z "/usr/bin" || /bin/mkdir -p "/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin"
  /bin/bash ../libtool   --mode=install /usr/bin/install -c alpine rpdump rpload '/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin'
libtool: install: /usr/bin/install -c alpine /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin/alpine
libtool: install: /usr/bin/install -c rpdump /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin/rpdump
libtool: install: /usr/bin/install -c rpload /«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/bin/rpload
make[6]: Nothing to be done for `install-data-am'.
make[6]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[5]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg/alpine'
make[3]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[4]: Entering directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[4]: Nothing to be done for `install-exec-am'.
test -z "/usr/share/man/man1" || /bin/mkdir -p "/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share/man/man1"
 /usr/bin/install -c -m 644 doc/alpine.1 doc/pico.1 doc/pilot.1 doc/rpdump.1 doc/rpload.1 '/«BUILDDIR»/alpine-2.10+dfsg/debian/tmp//usr/share/man/man1'
make[4]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[3]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[2]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
make[1]: Leaving directory `/«BUILDDIR»/alpine-2.10+dfsg'
touch debian/stamp-makefile-install
Adding cdbs dependencies to debian/alpine-doc.substvars
dh_installdirs -palpine-doc 
dh_installdocs -palpine-doc 
dh_installexamples -palpine-doc 
dh_installman -palpine-doc  
dh_installinfo -palpine-doc  
dh_installmenu -palpine-doc 
dh_installcron -palpine-doc 
dh_installinit -palpine-doc  
dh_installdebconf -palpine-doc 
dh_installemacsen -palpine-doc   
dh_installcatalogs -palpine-doc 
dh_installpam -palpine-doc 
dh_installlogrotate -palpine-doc 
dh_installlogcheck -palpine-doc 
dh_installchangelogs -palpine-doc  
dh_installudev -palpine-doc 
dh_lintian -palpine-doc 
dh_bugfiles -palpine-doc 
dh_install -palpine-doc  
dh_link -palpine-doc  
dh_installmime -palpine-doc 
dh_installgsettings -palpine-doc 
dh_strip -palpine-doc  --dbg-package=alpine-dbg
dh_compress -palpine-doc  
dh_fixperms -palpine-doc  
dh_makeshlibs -palpine-doc  
dh_installdeb -palpine-doc 
dh_perl -palpine-doc 
dh_shlibdeps -palpine-doc    
dh_gencontrol -palpine-doc  
dpkg-gencontrol: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums -palpine-doc 
dh_builddeb -palpine-doc 
dpkg-deb: building package `alpine-doc' in `../alpine-doc_2.10+dfsg-1_all.deb'.
Adding cdbs dependencies to debian/alpine.substvars
dh_installdirs -palpine 
Adding cdbs dependencies to debian/alpine-dbg.substvars
dh_installdirs -palpine-dbg 
mv pico/pico pico/pico.alpine
mv doc/pico.1 doc/pico.alpine.1
Adding cdbs dependencies to debian/alpine-pico.substvars
dh_installdirs -palpine-pico 
Adding cdbs dependencies to debian/pilot.substvars
dh_installdirs -ppilot 
dh_installdocs -palpine README
dh_installexamples -palpine 
dh_installman -palpine  
dh_installinfo -palpine  
dh_installmenu -palpine 
dh_installcron -palpine 
dh_installinit -palpine  
dh_installdebconf -palpine 
dh_installemacsen -palpine   
dh_installcatalogs -palpine 
dh_installpam -palpine 
dh_installlogrotate -palpine 
dh_installlogcheck -palpine 
dh_installchangelogs -palpine  
dh_installudev -palpine 
dh_lintian -palpine 
dh_bugfiles -palpine 
dh_install -palpine  
dh_link -palpine  
dh_installmime -palpine 
dh_installgsettings -palpine 
dh_installdocs -palpine-dbg 
dh_installexamples -palpine-dbg 
dh_installman -palpine-dbg  
dh_installinfo -palpine-dbg  
dh_installmenu -palpine-dbg 
dh_installcron -palpine-dbg 
dh_installinit -palpine-dbg  
dh_installdebconf -palpine-dbg 
dh_installemacsen -palpine-dbg   
dh_installcatalogs -palpine-dbg 
dh_installpam -palpine-dbg 
dh_installlogrotate -palpine-dbg 
dh_installlogcheck -palpine-dbg 
dh_installchangelogs -palpine-dbg  
dh_installudev -palpine-dbg 
dh_lintian -palpine-dbg 
dh_bugfiles -palpine-dbg 
dh_install -palpine-dbg  
dh_link -palpine-dbg  
dh_installmime -palpine-dbg 
dh_installgsettings -palpine-dbg 
dh_installdocs -palpine-pico 
dh_installexamples -palpine-pico 
dh_installman -palpine-pico  
dh_installinfo -palpine-pico  
dh_installmenu -palpine-pico 
dh_installcron -palpine-pico 
dh_installinit -palpine-pico  
dh_installdebconf -palpine-pico 
dh_installemacsen -palpine-pico   
dh_installcatalogs -palpine-pico 
dh_installpam -palpine-pico 
dh_installlogrotate -palpine-pico 
dh_installlogcheck -palpine-pico 
dh_installchangelogs -palpine-pico  
dh_installudev -palpine-pico 
dh_lintian -palpine-pico 
dh_bugfiles -palpine-pico 
dh_install -palpine-pico  
dh_link -palpine-pico  
dh_installmime -palpine-pico 
dh_installgsettings -palpine-pico 
dh_installdocs -ppilot 
dh_installexamples -ppilot 
dh_installman -ppilot  
dh_installinfo -ppilot  
dh_installmenu -ppilot 
dh_installcron -ppilot 
dh_installinit -ppilot  
dh_installdebconf -ppilot 
dh_installemacsen -ppilot   
dh_installcatalogs -ppilot 
dh_installpam -ppilot 
dh_installlogrotate -ppilot 
dh_installlogcheck -ppilot 
dh_installchangelogs -ppilot  
dh_installudev -ppilot 
dh_lintian -ppilot 
dh_bugfiles -ppilot 
dh_install -ppilot  
dh_link -ppilot  
dh_installmime -ppilot 
dh_installgsettings -ppilot 
dh_strip -palpine  --dbg-package=alpine-dbg
dh_compress -palpine  
dh_fixperms -palpine  
dh_makeshlibs -palpine  
dh_compress -palpine-dbg  
dh_fixperms -palpine-dbg  
dh_strip -palpine-pico  --dbg-package=alpine-dbg
dh_compress -palpine-pico  
dh_fixperms -palpine-pico  
dh_makeshlibs -palpine-pico  
dh_strip -ppilot  --dbg-package=alpine-dbg
dh_compress -ppilot  
dh_fixperms -ppilot  
dh_makeshlibs -ppilot  
dh_installdeb -palpine 
dh_perl -palpine 
dh_shlibdeps -palpine    
dh_installdeb -palpine-dbg 
dh_perl -palpine-dbg 
dh_shlibdeps -palpine-dbg    
dh_installdeb -palpine-pico 
dh_perl -palpine-pico 
dh_shlibdeps -palpine-pico    
dh_installdeb -ppilot 
dh_perl -ppilot 
dh_shlibdeps -ppilot    
dh_gencontrol -palpine  
dpkg-gencontrol: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums -palpine 
dh_builddeb -palpine 
dpkg-deb: building package `alpine' in `../alpine_2.10+dfsg-1_amd64.deb'.
dh_gencontrol -palpine-dbg  
dpkg-gencontrol: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums -palpine-dbg 
dh_builddeb -palpine-dbg 
dpkg-deb: building package `alpine-dbg' in `../alpine-dbg_2.10+dfsg-1_amd64.deb'.
dh_gencontrol -palpine-pico  
dpkg-gencontrol: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums -palpine-pico 
dh_builddeb -palpine-pico 
dpkg-deb: building package `alpine-pico' in `../alpine-pico_2.10+dfsg-1_amd64.deb'.
dh_gencontrol -ppilot  
dpkg-gencontrol: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums -ppilot 
dh_builddeb -ppilot 
dpkg-deb: building package `pilot' in `../pilot_2.10+dfsg-1_amd64.deb'.
 dpkg-genchanges  >../alpine_2.10+dfsg-1_amd64.changes
dpkg-genchanges: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-genchanges: including full source code in upload
 dpkg-source --after-build alpine-2.10+dfsg
dpkg-source: warning: unknown information field 'Dm-Upload-Allowed' in input data in general section of control info file
dpkg-buildpackage: full upload (original source is included)
────────────────────────────────────────────────────────────────────────────────
Build finished at 20140309-0048

Finished
────────

I: Built successfully
E: Package builds alpine-doc_2.10+dfsg-1_all.deb when binary-indep target is not called.  This is a bug in the packaging.

┌──────────────────────────────────────────────────────────────────────────────┐
│ Post Build Chroot                                                            │
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ Changes                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘


alpine_2.10+dfsg-1_amd64.changes:
─────────────────────────────────

Format: 1.8
Date: Sun, 19 May 2013 16:15:01 -0700
Source: alpine
Binary: alpine alpine-doc alpine-dbg alpine-pico pilot
Architecture: source all amd64
Version: 2.10+dfsg-1
Distribution: sid
Urgency: low
Maintainer: Asheesh Laroia <asheesh@asheesh.org>
Changed-By: Asheesh Laroia <asheesh@asheesh.org>
Description: 
 alpine     - Text-based email client, friendly for novices but powerful
 alpine-dbg - Text-based email client's debugging symbols
 alpine-doc - Text-based email client's documentation
 alpine-pico - Simple text editor from Alpine, a text-based email client
 pilot      - Simple file browser from Alpine, a text-based email client
Closes: 653420 674067 692870
Changes: 
 alpine (2.10+dfsg-1) unstable; urgency=low
 .
   * New upstream release.
   * This release ships a fix for an issue where the PREFDATETIME token
     was always set to "Sun" incorrectly. (Closes: #692870)
   * This release ships a fix for IMAP-encoded non-ASCII folder names.
     (Closes: #674067)
   * This release simplifies (and corrects) S/MIME handling for messages
     that encrypted *and* signed. (Closes: #653420)
Checksums-Sha1: 
 983980837f2ca2dadb0cc3b45ecc5057578c3201 1413 alpine_2.10+dfsg-1.dsc
 92b787a3a037308221016d7ee2cf0b4cd7489152 7405374 alpine_2.10+dfsg.orig.tar.gz
 ea5f2dd1c2a474dfb75cb5e1707fa06eb78929f6 17928 alpine_2.10+dfsg-1.debian.tar.xz
 8b2de0e97c93e491e0d04245aec478298657711b 349630 alpine-doc_2.10+dfsg-1_all.deb
 5e430089476280d0ca71f6efdb7cf235beef0515 1687392 alpine_2.10+dfsg-1_amd64.deb
 ea8b0512f06a8eac9f993947aa2484e53bee270b 2215868 alpine-dbg_2.10+dfsg-1_amd64.deb
 0e223d81cf7f184431b4d2b02532239683efa58f 303868 alpine-pico_2.10+dfsg-1_amd64.deb
 bc3f5a04d60e062096a6cb9aa0a9d6684fb0a477 301086 pilot_2.10+dfsg-1_amd64.deb
Checksums-Sha256: 
 97a0c40435cb78f402a23815db81bcf5bd592a3ef9d08d72aa286e8714a272e8 1413 alpine_2.10+dfsg-1.dsc
 68474cb59ec9b58125da5e633e598db49fef22bca77f2df1b3c3438032ae6ee3 7405374 alpine_2.10+dfsg.orig.tar.gz
 f31487e4a8b93e1d2ac873f5e0879e78e6fd64672679d8844c643539879af2cf 17928 alpine_2.10+dfsg-1.debian.tar.xz
 4c1179a618bd202753d6953426394a12b8a156e6c27f745b885e5f9c7dd558d8 349630 alpine-doc_2.10+dfsg-1_all.deb
 09e8bb89bdee099d0879e1a049f6866722d0c9c5a40b61cf9db1b8e8ab8ca9d1 1687392 alpine_2.10+dfsg-1_amd64.deb
 a1446a7a24d5df7806bba2bae75219603d88f547dc2106d39393e5a8b9161e1d 2215868 alpine-dbg_2.10+dfsg-1_amd64.deb
 df3029566722a00d3483ecd4a23488e5e3c7284eff3f65a137e1fb61fd7e5105 303868 alpine-pico_2.10+dfsg-1_amd64.deb
 40796367d463eaf3754960ddbfe56c81e78b3c1f2478305c2d5a9f4dd057df6e 301086 pilot_2.10+dfsg-1_amd64.deb
Files: 
 bf3f093331f62176abc53740efeddc97 1413 mail optional alpine_2.10+dfsg-1.dsc
 8260c37404799491a1ad81a7fbe4e360 7405374 mail optional alpine_2.10+dfsg.orig.tar.gz
 093b576d13ebb9809a4b04b969e32a96 17928 mail optional alpine_2.10+dfsg-1.debian.tar.xz
 4ae27dc9fcd47d24713a2aec8a2cacf7 349630 doc optional alpine-doc_2.10+dfsg-1_all.deb
 3accbd57b8ed390e141ad9bebc41c0be 1687392 mail optional alpine_2.10+dfsg-1_amd64.deb
 58067209e590ee47da2b199985522c2b 2215868 debug extra alpine-dbg_2.10+dfsg-1_amd64.deb
 86f7224a9d29f37206eabcc785ac74cb 303868 editors extra alpine-pico_2.10+dfsg-1_amd64.deb
 2b4ac0b1a0d5c07ce464237e2b765995 301086 utils optional pilot_2.10+dfsg-1_amd64.deb

┌──────────────────────────────────────────────────────────────────────────────┐
│ Package contents                                                             │
└──────────────────────────────────────────────────────────────────────────────┘


alpine-doc_2.10+dfsg-1_all.deb
──────────────────────────────

dpkg-deb: error: failed to read archive `/«CHROOT»/«BUILDDIR»/alpine-doc_2.10+dfsg-1_all.deb': No such file or directory

dpkg-deb: error: failed to read archive `/«CHROOT»/«BUILDDIR»/alpine-doc_2.10+dfsg-1_all.deb': No such file or directory


alpine_2.10+dfsg-1_amd64.deb
────────────────────────────

 new debian package, version 2.0.
 size 1687392 bytes: control archive=1059 bytes.
     846 bytes,    19 lines      control              
     616 bytes,    10 lines      md5sums              
 Package: alpine
 Version: 2.10+dfsg-1
 Architecture: amd64
 Maintainer: Asheesh Laroia <asheesh@asheesh.org>
 Installed-Size: 6896
 Depends: mlock, libc6 (>= 2.15), libgssapi-krb5-2 (>= 1.10+dfsg~), libkrb5-3 (>= 1.6.dfsg.2), libldap-2.4-2 (>= 2.4.7), libpam0g (>= 0.99.7.1), libssl1.0.0 (>= 1.0.0), libtinfo5
 Recommends: alpine-doc
 Suggests: aspell, mail-transport-agent | exim4
 Conflicts: pine
 Replaces: pine
 Section: mail
 Priority: optional
 Homepage: http://sourceforge.net/projects/re-alpine/
 Description: Text-based email client, friendly for novices but powerful
  Alpine is an upgrade of the well-known PINE email client.  Its name derives
  from the use of the Apache License and its ties to PINE.
  .
  It features a full suite of support for mail protocols like IMAP and SMTP and
  security protocols like TLS.  It uses curses for its interface.

drwxr-xr-x root/root         0 2014-03-09 00:48 ./
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/bin/
-rwxr-xr-x root/root   4932160 2014-03-09 00:48 ./usr/bin/alpine
-rwxr-xr-x root/root   1038480 2014-03-09 00:48 ./usr/bin/rpload
-rwxr-xr-x root/root   1035392 2014-03-09 00:48 ./usr/bin/rpdump
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/man1/
-rw-r--r-- root/root      4786 2014-03-09 00:48 ./usr/share/man/man1/alpine.1.gz
-rw-r--r-- root/root       977 2014-03-09 00:48 ./usr/share/man/man1/rpload.1.gz
-rw-r--r-- root/root       708 2014-03-09 00:48 ./usr/share/man/man1/rpdump.1.gz
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/alpine/
-rw-r--r-- root/root      2174 2013-05-20 01:13 ./usr/share/doc/alpine/README.Debian
-rw-r--r-- root/root      2237 2011-01-10 05:00 ./usr/share/doc/alpine/README.gz
-rw-r--r-- root/root      3970 2013-05-21 09:16 ./usr/share/doc/alpine/changelog.Debian.gz
-rw-r--r-- root/root      3647 2013-05-21 08:08 ./usr/share/doc/alpine/copyright
lrwxrwxrwx root/root         0 2014-03-09 00:48 ./usr/bin/alpinef -> alpine
lrwxrwxrwx root/root         0 2014-03-09 00:48 ./usr/share/man/man1/alpinef.1.gz -> alpine.1.gz


alpine-dbg_2.10+dfsg-1_amd64.deb
────────────────────────────────

 new debian package, version 2.0.
 size 2215868 bytes: control archive=896 bytes.
     740 bytes,    19 lines      control              
     467 bytes,     7 lines      md5sums              
 Package: alpine-dbg
 Source: alpine
 Version: 2.10+dfsg-1
 Architecture: amd64
 Maintainer: Asheesh Laroia <asheesh@asheesh.org>
 Installed-Size: 10943
 Depends: alpine (= 2.10+dfsg-1) | alpine-pico (= 2.10+dfsg-1) | pilot (= 2.10+dfsg-1)
 Suggests: aspell
 Section: debug
 Priority: extra
 Homepage: http://sourceforge.net/projects/re-alpine/
 Description: Text-based email client's debugging symbols
  Alpine is an upgrade of the well-known PINE email client.  Its name derives
  from the use of the Apache License and its ties to PINE.
  .
  It features a full suite of support for mail protocols like IMAP and SMTP and
  security protocols like TLS.  It uses curses for its interface.
  .
  This build stores the debugging symbols to the alpine package.

drwxr-xr-x root/root         0 2014-03-09 00:48 ./
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/lib/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/lib/debug/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/lib/debug/usr/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/lib/debug/usr/bin/
-rw-r--r-- root/root    706399 2014-03-09 00:48 ./usr/lib/debug/usr/bin/pico.alpine
-rw-r--r-- root/root    701269 2014-03-09 00:48 ./usr/lib/debug/usr/bin/pilot
-rw-r--r-- root/root   7143579 2014-03-09 00:48 ./usr/lib/debug/usr/bin/alpine
-rw-r--r-- root/root   1305492 2014-03-09 00:48 ./usr/lib/debug/usr/bin/rpload
-rw-r--r-- root/root   1299710 2014-03-09 00:48 ./usr/lib/debug/usr/bin/rpdump
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/alpine-dbg/
-rw-r--r-- root/root      3970 2013-05-21 09:16 ./usr/share/doc/alpine-dbg/changelog.Debian.gz
-rw-r--r-- root/root      3647 2013-05-21 08:08 ./usr/share/doc/alpine-dbg/copyright


alpine-pico_2.10+dfsg-1_amd64.deb
─────────────────────────────────

 new debian package, version 2.0.
 size 303868 bytes: control archive=1059 bytes.
     750 bytes,    19 lines      control              
     274 bytes,     4 lines      md5sums              
     265 bytes,    12 lines   *  postinst             #!/bin/sh
     115 bytes,    10 lines   *  prerm                #!/bin/sh
 Package: alpine-pico
 Source: alpine
 Version: 2.10+dfsg-1
 Architecture: amd64
 Maintainer: Asheesh Laroia <asheesh@asheesh.org>
 Installed-Size: 744
 Depends: libc6 (>= 2.15), libtinfo5
 Section: editors
 Priority: extra
 Homepage: http://sourceforge.net/projects/re-alpine/
 Description: Simple text editor from Alpine, a text-based email client
  "pico" is a simple but powerful text editor.  It was originally the pine
  composer,  the editor used by the pine email client for writing email messages.
  .
  It has gained popularity since its initial use in that context and is now used
  as a stand-alone editor by many users.
  .
  It is similar to but less powerful than GNU Nano, an editor created with the
  pico interface when the pico license was non-free.

drwxr-xr-x root/root         0 2014-03-09 00:48 ./
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/bin/
-rwxr-xr-x root/root    713608 2014-03-09 00:48 ./usr/bin/pico.alpine
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/man1/
-rw-r--r-- root/root      3312 2014-03-09 00:48 ./usr/share/man/man1/pico.alpine.1.gz
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/alpine-pico/
-rw-r--r-- root/root      3970 2013-05-21 09:16 ./usr/share/doc/alpine-pico/changelog.Debian.gz
-rw-r--r-- root/root      3647 2013-05-21 08:08 ./usr/share/doc/alpine-pico/copyright


pilot_2.10+dfsg-1_amd64.deb
───────────────────────────

 new debian package, version 2.0.
 size 301086 bytes: control archive=798 bytes.
     688 bytes,    17 lines      control              
     250 bytes,     4 lines      md5sums              
 Package: pilot
 Source: alpine
 Version: 2.10+dfsg-1
 Architecture: amd64
 Maintainer: Asheesh Laroia <asheesh@asheesh.org>
 Installed-Size: 742
 Depends: libc6 (>= 2.15), libtinfo5
 Section: utils
 Priority: optional
 Homepage: http://sourceforge.net/projects/re-alpine/
 Description: Simple file browser from Alpine, a text-based email client
  "pilot" is a simple file browser from Alpine.  It is used in Alpine to
  let the user select attachments.  As with (Al)pine, commands are displayed
  at the bottom of the screen, and context-sensitive help is provided.
  .
  As a stand-alone program, it is useful as a basic file browser, filling the
  same utility as programs like the midnight commander.

drwxr-xr-x root/root         0 2014-03-09 00:48 ./
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/bin/
-rwxr-xr-x root/root    713392 2014-03-09 00:48 ./usr/bin/pilot
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/man/man1/
-rw-r--r-- root/root      1596 2014-03-09 00:48 ./usr/share/man/man1/pilot.1.gz
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/
drwxr-xr-x root/root         0 2014-03-09 00:48 ./usr/share/doc/pilot/
-rw-r--r-- root/root      3970 2013-05-21 09:16 ./usr/share/doc/pilot/changelog.Debian.gz
-rw-r--r-- root/root      3647 2013-05-21 08:08 ./usr/share/doc/pilot/copyright

mv: cannot stat '/«CHROOT»/«BUILDDIR»/alpine-doc_2.10+dfsg-1_all.deb': No such file or directory
E: Could not move alpine-doc_2.10+dfsg-1_all.deb to .
du: cannot access '/mnt/ito/data/projets/debian-clang/buildlogs/alpine/alpine-doc_2.10+dfsg-1_all.deb': No such file or directory

┌──────────────────────────────────────────────────────────────────────────────┐
│ Post Build                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ Cleanup                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘

Purging /«BUILDDIR»
Not cleaning session: cloned chroot in use

┌──────────────────────────────────────────────────────────────────────────────┐
│ Summary                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘

Build Architecture: amd64
Build-Space: 177624
Build-Time: 71
Distribution: sid
Host Architecture: amd64
Install-Time: 42
Job: alpine_2.10+dfsg-1.dsc
Machine Architecture: amd64
Package: alpine
Package-Time: 120
Source-Version: 2.10+dfsg-1
Space: 177624
Status: successful
Version: 2.10+dfsg-1
────────────────────────────────────────────────────────────────────────────────
Finished at 20140309-0048
Build needed 00:02:00, 177624k disc space