[dovecot/core] 8e0477: mbox: Code cleanup - use bool instead of int for t...

GitHub noreply at github.com
Mon Jun 6 13:00:15 UTC 2016


  Branch: refs/heads/master
  Home:   https://github.com/dovecot/core
  Commit: 8e047750fa23706e883b14584d0ed7c4bfde3892
      https://github.com/dovecot/core/commit/8e047750fa23706e883b14584d0ed7c4bfde3892
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/lib-storage/index/mbox/mbox-lock.c

  Log Message:
  -----------
  mbox: Code cleanup - use bool instead of int for tracking locked-status


  Commit: 0dffa25d211be541ee3c953b23566a1a990789df
      https://github.com/dovecot/core/commit/0dffa25d211be541ee3c953b23566a1a990789df
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/anvil/anvil-connection.c
    M src/anvil/penalty.c
    M src/auth/auth-client-connection.h
    M src/auth/auth-master-connection.h
    M src/auth/auth-penalty.c
    M src/auth/auth-postfix-connection.c
    M src/auth/auth-request-handler.c
    M src/auth/auth-request.h
    M src/auth/auth-worker-client.c
    M src/auth/auth-worker-server.c
    M src/auth/db-checkpassword.c
    M src/auth/db-passwd-file.h
    M src/auth/db-sql.h
    M src/auth/mech-digest-md5.c
    M src/auth/passdb-pam.c
    M src/auth/userdb-passwd.c
    M src/auth/userdb-sql.c
    M src/auth/userdb-static.c
    M src/config/config-connection.c
    M src/config/config-parser-private.h
    M src/config/doveconf.c
    M src/dict/dict-connection.h
    M src/director/director-connection.c
    M src/director/director-host.h
    M src/director/director.h
    M src/director/doveadm-connection.c
    M src/director/login-connection.c
    M src/director/mail-host.h
    M src/director/user-directory.h
    M src/doveadm/client-connection.h
    M src/doveadm/doveadm-dsync.c
    M src/doveadm/doveadm-mail-index.c
    M src/doveadm/doveadm-mail-mailbox-status.c
    M src/doveadm/doveadm-mail.h
    M src/doveadm/doveadm-print-flow.c
    M src/doveadm/doveadm-print-pager.c
    M src/doveadm/doveadm-print-tab.c
    M src/doveadm/doveadm-print-table.c
    M src/doveadm/doveadm-stats.c
    M src/doveadm/dsync/dsync-brain-private.h
    M src/doveadm/dsync/dsync-ibc-private.h
    M src/doveadm/dsync/dsync-ibc-stream.c
    M src/doveadm/dsync/dsync-mailbox-export.c
    M src/doveadm/dsync/dsync-mailbox-import.c
    M src/doveadm/dsync/dsync-mailbox-tree.h
    M src/doveadm/server-connection.c
    M src/imap-login/imap-login-client.h
    M src/imap-urlauth/imap-urlauth-client.h
    M src/imap-urlauth/imap-urlauth-login.c
    M src/imap-urlauth/imap-urlauth-worker.c
    M src/imap/cmd-append.c
    M src/imap/cmd-idle.c
    M src/imap/cmd-list.c
    M src/imap/cmd-select.c
    M src/imap/cmd-urlfetch.c
    M src/imap/imap-client.h
    M src/imap/imap-fetch-body.c
    M src/imap/imap-fetch.h
    M src/imap/imap-notify.h
    M src/imap/imap-search.h
    M src/imap/imap-sync.c
    M src/indexer/indexer-client.c
    M src/indexer/indexer-queue.h
    M src/indexer/master-connection.c
    M src/indexer/worker-connection.c
    M src/ipc/ipc-connection.h
    M src/lib-auth/auth-client-private.h
    M src/lib-auth/auth-master.c
    M src/lib-auth/auth-master.h
    M src/lib-auth/auth-server-connection.h
    M src/lib-compression/istream-bzlib.c
    M src/lib-compression/istream-lz4.c
    M src/lib-compression/istream-lzma.c
    M src/lib-compression/istream-zlib.c
    M src/lib-compression/ostream-bzlib.c
    M src/lib-compression/ostream-lzma.c
    M src/lib-compression/ostream-zlib.c
    M src/lib-dict/dict-client.c
    M src/lib-dict/dict-private.h
    M src/lib-dict/dict-sql.c
    M src/lib-fs/fs-api-private.h
    M src/lib-http/http-client-private.h
    M src/lib-http/http-header-parser.c
    M src/lib-http/http-message-parser.h
    M src/lib-http/http-request-parser.c
    M src/lib-http/http-request.h
    M src/lib-http/http-response.h
    M src/lib-http/http-server-private.h
    M src/lib-http/http-transfer-chunked.c
    M src/lib-http/http-url.c
    M src/lib-http/http-url.h
    M src/lib-imap-client/imapc-connection.c
    M src/lib-imap-storage/imap-metadata.c
    M src/lib-imap-storage/imap-msgpart-url.c
    M src/lib-imap-storage/imap-msgpart.c
    M src/lib-imap-urlauth/imap-urlauth-connection.c
    M src/lib-imap-urlauth/imap-urlauth-fetch.c
    M src/lib-imap-urlauth/imap-urlauth-fetch.h
    M src/lib-imap-urlauth/imap-urlauth-private.h
    M src/lib-imap/imap-arg.h
    M src/lib-imap/imap-parser.c
    M src/lib-imap/imap-url.c
    M src/lib-imap/imap-url.h
    M src/lib-index/mail-cache-private.h
    M src/lib-index/mail-cache-transaction.c
    M src/lib-index/mail-index-private.h
    M src/lib-index/mail-index-strmap.c
    M src/lib-index/mail-index-sync-private.h
    M src/lib-index/mail-index-sync.c
    M src/lib-index/mail-index-transaction-private.h
    M src/lib-index/mail-index-view-private.h
    M src/lib-index/mail-index-view-sync.c
    M src/lib-index/mail-index.h
    M src/lib-index/mail-transaction-log-private.h
    M src/lib-index/mail-transaction-log-view-private.h
    M src/lib-index/mail-transaction-log.h
    M src/lib-lda/duplicate.c
    M src/lib-lda/lmtp-client.c
    M src/lib-mail/istream-binary-converter.c
    M src/lib-mail/istream-dot.c
    M src/lib-mail/istream-header-filter.c
    M src/lib-mail/message-decoder.c
    M src/lib-mail/message-header-decode.c
    M src/lib-mail/message-header-parser.c
    M src/lib-mail/message-header-parser.h
    M src/lib-mail/message-parser.c
    M src/lib-mail/message-search.c
    M src/lib-master/ipc-server.c
    M src/lib-master/master-instance.c
    M src/lib-master/master-login-auth.c
    M src/lib-master/master-login.c
    M src/lib-master/master-login.h
    M src/lib-master/master-service-private.h
    M src/lib-master/master-service-settings-cache.c
    M src/lib-master/master-service-settings.h
    M src/lib-master/master-service.h
    M src/lib-master/service-settings.h
    M src/lib-sql/driver-cassandra.c
    M src/lib-sql/driver-mysql.c
    M src/lib-sql/driver-pgsql.c
    M src/lib-sql/driver-sqlite.c
    M src/lib-sql/sql-api-private.h
    M src/lib-ssl-iostream/iostream-openssl.h
    M src/lib-storage/index/cydir/cydir-save.c
    M src/lib-storage/index/dbox-common/dbox-file.h
    M src/lib-storage/index/dbox-common/dbox-save.h
    M src/lib-storage/index/dbox-multi/mdbox-map-private.h
    M src/lib-storage/index/dbox-multi/mdbox-map.c
    M src/lib-storage/index/dbox-multi/mdbox-storage-rebuild.c
    M src/lib-storage/index/dbox-multi/mdbox-storage.h
    M src/lib-storage/index/imapc/imapc-list.h
    M src/lib-storage/index/imapc/imapc-save.c
    M src/lib-storage/index/imapc/imapc-storage.h
    M src/lib-storage/index/imapc/imapc-sync.h
    M src/lib-storage/index/index-mail.h
    M src/lib-storage/index/index-rebuild.h
    M src/lib-storage/index/index-search-private.h
    M src/lib-storage/index/index-search.c
    M src/lib-storage/index/index-sort-string.c
    M src/lib-storage/index/index-thread-finish.c
    M src/lib-storage/index/index-thread-private.h
    M src/lib-storage/index/index-thread.c
    M src/lib-storage/index/istream-mail.c
    M src/lib-storage/index/maildir/maildir-copy.c
    M src/lib-storage/index/maildir/maildir-keywords.c
    M src/lib-storage/index/maildir/maildir-save.c
    M src/lib-storage/index/maildir/maildir-storage.h
    M src/lib-storage/index/maildir/maildir-sync.c
    M src/lib-storage/index/maildir/maildir-uidlist.c
    M src/lib-storage/index/mbox/istream-raw-mbox.c
    M src/lib-storage/index/mbox/mbox-save.c
    M src/lib-storage/index/mbox/mbox-storage.h
    M src/lib-storage/index/mbox/mbox-sync-private.h
    M src/lib-storage/index/pop3c/pop3c-client.c
    M src/lib-storage/index/pop3c/pop3c-storage.h
    M src/lib-storage/index/raw/raw-storage.h
    M src/lib-storage/list/mailbox-list-fs-iter.c
    M src/lib-storage/list/mailbox-list-index-notify.c
    M src/lib-storage/list/mailbox-list-index-sync.h
    M src/lib-storage/list/mailbox-list-index.h
    M src/lib-storage/list/mailbox-list-iter.c
    M src/lib-storage/list/mailbox-list-none.c
    M src/lib-storage/mail-namespace.h
    M src/lib-storage/mail-search-register.c
    M src/lib-storage/mail-search.h
    M src/lib-storage/mail-storage-private.h
    M src/lib-storage/mail-storage-service.c
    M src/lib-storage/mail-storage-service.h
    M src/lib-storage/mail-storage.h
    M src/lib-storage/mail-user.h
    M src/lib-storage/mailbox-list-private.h
    M src/lib-storage/mailbox-search-result-private.h
    M src/lib-storage/mailbox-tree.c
    M src/lib/buffer.c
    M src/lib/connection.h
    M src/lib/file-dotlock.c
    M src/lib/file-dotlock.h
    M src/lib/ioloop-private.h
    M src/lib/istream-crlf.c
    M src/lib/istream-file-private.h
    M src/lib/istream-jsonstr.c
    M src/lib/istream-mmap.c
    M src/lib/istream-private.h
    M src/lib/istream-tee.c
    M src/lib/istream.h
    M src/lib/mempool.h
    M src/lib/module-dir.h
    M src/lib/ostream-file-private.h
    M src/lib/ostream-private.h
    M src/lib/ostream.h
    M src/lmtp/client.h
    M src/lmtp/lmtp-proxy.c
    M src/log/log-connection.c
    M src/login-common/client-common.h
    M src/login-common/login-proxy.c
    M src/login-common/ssl-proxy-openssl.c
    M src/master/service-process.h
    M src/master/service.h
    M src/plugins/acl/acl-api-private.h
    M src/plugins/acl/acl-api.h
    M src/plugins/acl/acl-backend-vfile.h
    M src/plugins/acl/acl-lookup-dict.c
    M src/plugins/acl/acl-mailbox-list.c
    M src/plugins/expire/expire-plugin.c
    M src/plugins/fts-lucene/fts-backend-lucene.c
    M src/plugins/fts-solr/fts-backend-solr.c
    M src/plugins/fts-solr/solr-connection.c
    M src/plugins/fts-squat/squat-trie-private.h
    M src/plugins/fts-squat/squat-trie.c
    M src/plugins/fts-squat/squat-uidlist.c
    M src/plugins/fts/fts-api-private.h
    M src/plugins/fts/fts-indexer.c
    M src/plugins/fts/fts-storage.c
    M src/plugins/fts/fts-storage.h
    M src/plugins/lazy-expunge/lazy-expunge-plugin.c
    M src/plugins/pop3-migration/pop3-migration-plugin.c
    M src/plugins/quota/quota-fs.c
    M src/plugins/quota/quota-maildir.c
    M src/plugins/quota/quota-private.h
    M src/plugins/quota/quota-storage.c
    M src/plugins/virtual/virtual-mail.c
    M src/plugins/virtual/virtual-storage.h
    M src/plugins/virtual/virtual-sync.c
    M src/pop3/pop3-client.h
    M src/replication/replicator/dsync-client.c
    M src/replication/replicator/notify-connection.c
    M src/replication/replicator/replicator-brain.c
    M src/replication/replicator/replicator-queue.h

  Log Message:
  -----------
  global: unsigned int:1 -> bool:1

perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch]


  Commit: c1277b66e1aaadaae8cb3344b97b60b0fe57ca26
      https://github.com/dovecot/core/commit/c1277b66e1aaadaae8cb3344b97b60b0fe57ca26
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/auth/auth-cache.h
    M src/lib-storage/index/index-sort-string.c

  Log Message:
  -----------
  global: uint32_t:1 -> bool:1

They were uint32_t because I wanted to be sure that there wouldn't be any
padding added to the struct. But this should be true also with bool:1.


  Commit: 23bdbb7b1831785c6ba6df190f6369da882d2b9d
      https://github.com/dovecot/core/commit/23bdbb7b1831785c6ba6df190f6369da882d2b9d
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/auth/db-ldap.c
    M src/auth/mech-digest-md5.c
    M src/auth/mech-ntlm.c
    M src/auth/mech-scram-sha1.c
    M src/auth/password-scheme-md5crypt.c
    M src/auth/password-scheme-rpa.c
    M src/director/director-connection.c
    M src/doveadm/doveadm-auth.c
    M src/doveadm/doveadm-director.c
    M src/doveadm/doveadm-util.c
    M src/doveadm/dsync/dsync-mailbox-export.c
    M src/imap/imap-sync.c
    M src/lib-dcrypt/dcrypt-openssl.c
    M src/lib-dict-extra/dict-ldap-settings.c
    M src/lib-http/http-server-request.c
    M src/lib-http/test-http-client-errors.c
    M src/lib-http/test-http-payload.c
    M src/lib-imap/imap-bodystructure.c
    M src/lib-index/mail-index-sync-ext.c
    M src/lib-index/mail-index-sync.c
    M src/lib-index/mail-index-transaction-export.c
    M src/lib-lda/duplicate.c
    M src/lib-ldap/ldap-connection.c
    M src/lib-mail/message-header-parser.c
    M src/lib-mail/message-parser.c
    M src/lib-mail/message-part-serialize.c
    M src/lib-mail/test-message-header-encode.c
    M src/lib-mail/test-message-parser.c
    M src/lib-master/test-master-service-settings-cache.c
    M src/lib-ntlm/ntlm-des.c
    M src/lib-ntlm/ntlm-encrypt.c
    M src/lib-ntlm/ntlm-message.c
    M src/lib-otp/otp-parse.c
    M src/lib-settings/settings-parser.c
    M src/lib-settings/settings.c
    M src/lib-sql/driver-cassandra.c
    M src/lib-sql/driver-pgsql.c
    M src/lib-ssl-iostream/iostream-openssl-context.c
    M src/lib-ssl-iostream/iostream-openssl.c
    M src/lib-storage/index/maildir/maildir-filename-flags.c
    M src/lib-storage/index/maildir/maildir-filename.c
    M src/lib-storage/index/mbox/mbox-file.c
    M src/lib-storage/index/mbox/mbox-lock.c
    M src/lib-storage/index/mbox/mbox-save.c
    M src/lib-storage/index/mbox/mbox-sync.c
    M src/lib-storage/mail-search.c
    M src/lib-storage/mail-search.h
    M src/lib/askpass.c
    M src/lib/buffer.h
    M src/lib/compat.h
    M src/lib/file-cache.c
    M src/lib/file-lock.c
    M src/lib/hash.c
    M src/lib/ioloop-select.c
    M src/lib/macros.h
    M src/lib/md4.c
    M src/lib/md5.c
    M src/lib/net.c
    M src/lib/test-timing.c
    M src/lib/test-unichar.c
    M src/lib/var-expand.c
    M src/lib/wildcard-match.c
    M src/login-common/sasl-server.c
    M src/login-common/ssl-proxy-openssl.c
    M src/master/service-process.c
    M src/plugins/fts-lucene/fts-backend-lucene.c
    M src/plugins/fts-solr/solr-connection.c
    M src/plugins/push-notification/push-notification-event-flagsclear.c
    M src/plugins/push-notification/push-notification-event-flagsset.c
    M src/plugins/push-notification/push-notification-event-messageappend.c
    M src/plugins/push-notification/push-notification-event-messagenew.c
    M src/plugins/push-notification/push-notification-event-messageread.c
    M src/plugins/push-notification/push-notification-event-messagetrash.c
    M src/plugins/push-notification/push-notification-plugin.c
    M src/plugins/quota/Makefile.am
    M src/pop3/pop3-client.c
    M src/pop3/pop3-commands.c

  Log Message:
  -----------
  global: Require comparisons to be strict boolean expressions

 * No implicit integer -> boolean or pointer -> boolean conversions
 * !expr can be used only if expr is boolean type

These were checked with a patched clang. It found various actual bugs,
which were fixed by the previous commits.


  Commit: f0339f522dc9c8e2e8a29ef9a3f937c431c6bd1b
      https://github.com/dovecot/core/commit/f0339f522dc9c8e2e8a29ef9a3f937c431c6bd1b
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/director/director-connection.c
    M src/director/director.c
    M src/doveadm/dsync/dsync-brain.c
    M src/doveadm/dsync/test-dsync-mailbox-tree-sync.c
    M src/imap-login/client-authenticate.c
    M src/lib-imap-urlauth/imap-urlauth-connection.c
    M src/lib-index/mail-cache-compress.c
    M src/lib-index/mail-index-transaction-update.c
    M src/lib-mail/message-address.c
    M src/lib-mail/rfc822-parser.c
    M src/lib-otp/otp-parse.c
    M src/lib-sql/driver-pgsql.c
    M src/lib-storage/index/index-mail-headers.c
    M src/lib-storage/index/index-search.c
    M src/lib-storage/index/mbox/mbox-sync-rewrite.c
    M src/lib-storage/list/mailbox-list-index-status.c
    M src/lib/istream-sized.c
    M src/lib/istream.c
    M src/lib/net.c
    M src/lib/restrict-access.c
    M src/login-common/client-common-auth.c
    M src/plugins/acl/acl-backend-vfile.c
    M src/plugins/acl/acl-backend.c
    M src/plugins/fts-solr/solr-connection.c
    M src/plugins/quota/Makefile.am
    M src/plugins/quota/quota-dict.c
    M src/plugins/quota/quota.c
    M src/replication/replicator/doveadm-connection.c
    M src/replication/replicator/replicator-queue.c

  Log Message:
  -----------
  global: Use only explicit int -> bool conversions

These were checked with a patched clang.


  Commit: a5286dc8a017c8adbcd243b61dd5051e8012d40b
      https://github.com/dovecot/core/commit/a5286dc8a017c8adbcd243b61dd5051e8012d40b
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/lib/macros.h

  Log Message:
  -----------
  lib: define FALSE to be (!1)

This allows the patched clang to treat FALSE as a boolean expression.


  Commit: 761c441db58493fcf10d3418b0cabadc3028cfb6
      https://github.com/dovecot/core/commit/761c441db58493fcf10d3418b0cabadc3028cfb6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/lib-storage/index/mbox/mbox-file.c
    M src/lib-storage/index/mbox/mbox-sync.c

  Log Message:
  -----------
  mbox: mbox_index_header.dirty_flag isn't boolean, so don't use TRUE/FALSE with it.


  Commit: 0679f8a70a8dda43b204ae35fc6a903818cc6584
      https://github.com/dovecot/core/commit/0679f8a70a8dda43b204ae35fc6a903818cc6584
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2016-06-06 (Mon, 06 Jun 2016)

  Changed paths:
    M src/config/doveconf.c
    M src/lib-master/master-service.c
    M src/lib-master/master-service.h
    M src/master/main.c

  Log Message:
  -----------
  lib-master: Add automatic data stack frame to init unless disabled.


Compare: https://github.com/dovecot/core/compare/e93184a9055c...0679f8a70a8d


More information about the dovecot-cvs mailing list