History log of /dovecot/src/auth/mech-ntlm.c
Revision Date Author Comments Expand
ace06232cfa0e99ecca1040e8553b3216d025768 11-Apr-2017 Timo Sirainen <timo.sirainen@dovecot.fi>

auth: Use mem_equals_timing_safe() for all password hash comparisons. It's unlikely these could be used to perform timing attacks, since the attacker would have to have broken MD5/SHA badly enough to be able to quickly generate string that result in wanted hashes. Still, the extra cost is almost nothing and it's always better to be super paranoid!

23bdbb7b1831785c6ba6df190f6369da882d2b9d 06-Jun-2016 Timo Sirainen <timo.sirainen@dovecot.fi>

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.

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

auth: Mark memory pools as growing and use the same sizes for all mechanisms. Mainly to have DEBUG log fewer warnings.

6135260095e1704ed6edff9d00bdfc043c11429c 17-Apr-2014 Timo Sirainen <tss@iki.fi>

auth: Use special AUTH_SUBSYS_DB/MECH parameters as auth_request_log*() subsystem. This avoids hardcoded strings all over the place and also allows assigning the correct passdb/userdb name for log messages generated by generic passdb/userdb code, which doesn't know exactly where it was called from.

a10ed8c47534b4c6b6bf2711ccfe577e720a47b4 23-Jun-2012 Timo Sirainen <tss@iki.fi>

Marked functions parameters that are allowed to be NULL. Some APIs were also changed. The non-obvious APIs where NULL parameter was changed to "" are master_service_init() and auth_master_user_list_init(). These checks can currently be enabled only on a patched clang: http://llvm.org/bugs/show_bug.cgi?id=6786

/dovecot/src/anvil/main.c auth-master-connection.c auth-master-connection.h auth-request-handler.c auth-request.c auth-request.h auth-settings.h auth-stream.h auth-worker-server.c auth.c auth.h db-checkpassword.h db-ldap.c db-ldap.h db-passwd-file.c main.c mech-anonymous.c mech-apop.c mech-cram-md5.c mech-ntlm.c mech-otp-skey-common.c mech-plain-common.c mech-rpa.c mech-winbind.c mech.c password-scheme-otp.c password-scheme.h userdb-passwd.c userdb-static.c userdb.h /dovecot/src/config/config-parser-private.h /dovecot/src/config/config-request.h /dovecot/src/config/doveconf.c /dovecot/src/config/main.c /dovecot/src/dict/main.c /dovecot/src/director/director-connection.c /dovecot/src/director/director-test.c /dovecot/src/director/director.h /dovecot/src/dns/dns-client.c /dovecot/src/doveadm/doveadm-director.c /dovecot/src/doveadm/doveadm-log.c /dovecot/src/doveadm/doveadm-mail-fetch.c /dovecot/src/doveadm/doveadm-mail-iter.h /dovecot/src/doveadm/doveadm-mail-mailbox-status.c /dovecot/src/doveadm/dsync/doveadm-dsync.c /dovecot/src/doveadm/dsync/dsync-brain.c /dovecot/src/doveadm/dsync/dsync-mailbox-import.c /dovecot/src/doveadm/dsync/dsync-slave-io.c /dovecot/src/doveadm/main.c /dovecot/src/imap-login/client.c /dovecot/src/imap-login/client.h /dovecot/src/imap/cmd-append.c /dovecot/src/imap/cmd-expunge.c /dovecot/src/imap/imap-client.h /dovecot/src/imap/imap-commands-util.h /dovecot/src/imap/imap-expunge.h /dovecot/src/imap/imap-fetch-body.c /dovecot/src/imap/imap-fetch.h /dovecot/src/imap/imap-search.h /dovecot/src/imap/imap-sync.c /dovecot/src/indexer/indexer.c /dovecot/src/indexer/master-connection.c /dovecot/src/ipc/client.c /dovecot/src/ipc/main.c /dovecot/src/lib-auth/auth-client-request.c /dovecot/src/lib-auth/auth-client.h /dovecot/src/lib-auth/auth-master.c /dovecot/src/lib-auth/auth-master.h /dovecot/src/lib-dict/dict.h /dovecot/src/lib-dns/dns-lookup.h /dovecot/src/lib-imap-client/imapc-connection.h /dovecot/src/lib-imap-storage/imap-msgpart.c /dovecot/src/lib-imap/imap-base-subject.c /dovecot/src/lib-imap/imap-parser.c /dovecot/src/lib-imap/imap-parser.h /dovecot/src/lib-imap/imap-url.c /dovecot/src/lib-imap/imap-util.h /dovecot/src/lib-index/mail-cache-lookup.c /dovecot/src/lib-index/mail-cache-transaction.c /dovecot/src/lib-index/mail-index-alloc-cache.c /dovecot/src/lib-index/mail-index-alloc-cache.h /dovecot/src/lib-index/mail-index-map-hdr.c /dovecot/src/lib-index/mail-index-map.c /dovecot/src/lib-index/mail-index-util.h /dovecot/src/lib-index/mail-index-view.c /dovecot/src/lib-index/mail-index.c /dovecot/src/lib-index/mail-index.h /dovecot/src/lib-lda/mail-deliver.h /dovecot/src/lib-lda/smtp-client.h /dovecot/src/lib-mail/istream-binary-converter.c /dovecot/src/lib-mail/istream-dot.c /dovecot/src/lib-mail/istream-header-filter.h /dovecot/src/lib-mail/message-header-parser.h /dovecot/src/lib-mail/message-parser.h /dovecot/src/lib-mail/message-part-serialize.c /dovecot/src/lib-mail/message-search.h /dovecot/src/lib-mail/message-size.c /dovecot/src/lib-mail/message-size.h /dovecot/src/lib-mail/rfc822-parser.h /dovecot/src/lib-mail/test-istream-header-filter.c /dovecot/src/lib-master/anvil-client.h /dovecot/src/lib-master/ipc-client.h /dovecot/src/lib-master/ipc-server.c /dovecot/src/lib-master/master-service-settings-cache.h /dovecot/src/lib-master/master-service-settings.h /dovecot/src/lib-master/master-service.c /dovecot/src/lib-master/master-service.h /dovecot/src/lib-master/mountpoint-list.c /dovecot/src/lib-ntlm/ntlm-encrypt.c /dovecot/src/lib-ntlm/ntlm-encrypt.h /dovecot/src/lib-otp/otp-parse.c /dovecot/src/lib-settings/settings-parser.c /dovecot/src/lib-settings/settings.h /dovecot/src/lib-sql/driver-mysql.c /dovecot/src/lib-sql/driver-pgsql.c /dovecot/src/lib-sql/driver-sqlpool.c /dovecot/src/lib-sql/sql-api.c /dovecot/src/lib-storage/index/dbox-common/dbox-file-fix.c /dovecot/src/lib-storage/index/dbox-common/dbox-save.h /dovecot/src/lib-storage/index/dbox-common/dbox-storage.c /dovecot/src/lib-storage/index/dbox-common/dbox-sync-rebuild.c /dovecot/src/lib-storage/index/dbox-multi/mdbox-map.c /dovecot/src/lib-storage/index/dbox-multi/mdbox-storage.c /dovecot/src/lib-storage/index/dbox-multi/mdbox-storage.h /dovecot/src/lib-storage/index/dbox-multi/mdbox-sync.c /dovecot/src/lib-storage/index/dbox-single/sdbox-storage.c /dovecot/src/lib-storage/index/imapc/imapc-mail.c /dovecot/src/lib-storage/index/index-mail-headers.c /dovecot/src/lib-storage/index/index-mail.c /dovecot/src/lib-storage/index/index-mail.h /dovecot/src/lib-storage/index/index-search.c /dovecot/src/lib-storage/index/index-sort.c /dovecot/src/lib-storage/index/index-storage.h /dovecot/src/lib-storage/index/index-sync-changes.h /dovecot/src/lib-storage/index/maildir/maildir-filename-flags.c /dovecot/src/lib-storage/index/maildir/maildir-filename-flags.h /dovecot/src/lib-storage/index/maildir/maildir-mail.c /dovecot/src/lib-storage/index/maildir/maildir-save.c /dovecot/src/lib-storage/index/maildir/maildir-storage.c /dovecot/src/lib-storage/index/maildir/maildir-storage.h /dovecot/src/lib-storage/index/maildir/maildir-sync-index.c /dovecot/src/lib-storage/index/maildir/maildir-sync.c /dovecot/src/lib-storage/index/maildir/maildir-sync.h /dovecot/src/lib-storage/index/maildir/maildir-uidlist.c /dovecot/src/lib-storage/index/maildir/maildir-uidlist.h /dovecot/src/lib-storage/index/maildir/maildir-util.c /dovecot/src/lib-storage/index/mbox/mbox-file.c /dovecot/src/lib-storage/index/mbox/mbox-lock.c /dovecot/src/lib-storage/index/mbox/mbox-mail.c /dovecot/src/lib-storage/index/mbox/mbox-storage.c /dovecot/src/lib-storage/index/mbox/mbox-sync-parse.c /dovecot/src/lib-storage/index/mbox/mbox-sync.c /dovecot/src/lib-storage/index/raw/raw-storage.c /dovecot/src/lib-storage/index/shared/shared-storage.c /dovecot/src/lib-storage/list/mailbox-list-delete.c /dovecot/src/lib-storage/list/mailbox-list-fs-iter.c /dovecot/src/lib-storage/list/mailbox-list-fs.c /dovecot/src/lib-storage/list/mailbox-list-index-status.c /dovecot/src/lib-storage/list/mailbox-list-index.c /dovecot/src/lib-storage/list/mailbox-list-maildir.c /dovecot/src/lib-storage/mail-namespace.h /dovecot/src/lib-storage/mail-search.h /dovecot/src/lib-storage/mail-storage-service.c /dovecot/src/lib-storage/mail-storage-service.h /dovecot/src/lib-storage/mail-storage.c /dovecot/src/lib-storage/mail-storage.h /dovecot/src/lib-storage/mail-thread.h /dovecot/src/lib-storage/mail.c /dovecot/src/lib-storage/mailbox-get.c /dovecot/src/lib-storage/mailbox-list-private.h /dovecot/src/lib-storage/mailbox-list.c /dovecot/src/lib-storage/mailbox-list.h /dovecot/src/lib-storage/mailbox-tree.c /dovecot/src/lib-storage/mailbox-tree.h /dovecot/src/lib-test/test-common.h /dovecot/src/lib/base64.h /dovecot/src/lib/buffer.h /dovecot/src/lib/child-wait.h /dovecot/src/lib/eacces-error.h /dovecot/src/lib/failures.c /dovecot/src/lib/file-dotlock.c /dovecot/src/lib/hash.c /dovecot/src/lib/hash.h /dovecot/src/lib/hash2.h /dovecot/src/lib/ioloop-notify-fd.h /dovecot/src/lib/ioloop.c /dovecot/src/lib/ioloop.h /dovecot/src/lib/iso8601-date.c /dovecot/src/lib/istream-base64-encoder.c /dovecot/src/lib/istream-chain.c /dovecot/src/lib/istream-chain.h /dovecot/src/lib/istream-crlf.c /dovecot/src/lib/istream-private.h /dovecot/src/lib/istream-seekable.h /dovecot/src/lib/istream.c /dovecot/src/lib/istream.h /dovecot/src/lib/lib-signals.c /dovecot/src/lib/lib-signals.h /dovecot/src/lib/macros.h /dovecot/src/lib/mkdir-parents.c /dovecot/src/lib/module-dir.h /dovecot/src/lib/network.c /dovecot/src/lib/network.h /dovecot/src/lib/ostream-private.h /dovecot/src/lib/ostream.c /dovecot/src/lib/ostream.h /dovecot/src/lib/restrict-access.h /dovecot/src/lib/safe-mkstemp.c /dovecot/src/lib/strfuncs.c /dovecot/src/lib/strfuncs.h /dovecot/src/lib/test-iso8601-date.c /dovecot/src/lib/uri-util.c /dovecot/src/lib/uri-util.h /dovecot/src/lib/var-expand.h /dovecot/src/lmtp/client.h /dovecot/src/lmtp/lmtp-proxy.h /dovecot/src/log/main.c /dovecot/src/login-common/client-common-auth.c /dovecot/src/login-common/login-proxy.c /dovecot/src/login-common/login-settings.h /dovecot/src/login-common/sasl-server.c /dovecot/src/login-common/ssl-proxy-openssl.c /dovecot/src/master/common.h /dovecot/src/plugins/acl/acl-backend-vfile-acllist.c /dovecot/src/plugins/acl/acl-plugin.h /dovecot/src/plugins/fts-lucene/fts-backend-lucene.c /dovecot/src/plugins/fts-lucene/lucene-wrapper.h /dovecot/src/plugins/fts-solr/solr-connection.c /dovecot/src/plugins/fts-squat/squat-trie.h /dovecot/src/plugins/fts/fts-storage.c /dovecot/src/plugins/quota/quota-dirsize.c /dovecot/src/plugins/quota/quota-fs.c /dovecot/src/plugins/quota/quota-maildir.c /dovecot/src/plugins/quota/quota.c /dovecot/src/pop3/pop3-client.h /dovecot/src/replication/aggregator/aggregator.c /dovecot/src/replication/replicator/replicator.c /dovecot/src/ssl-params/main.c /dovecot/src/stats/mail-domain.h /dovecot/src/stats/mail-ip.h /dovecot/src/stats/mail-session.h /dovecot/src/stats/mail-user.h /dovecot/src/stats/main.c
50782de8a9d5ebe11ee61496b4e695a1d3875230 08-Jun-2010 Timo Sirainen <tss@iki.fi>

auth: Removed unnecessary auth_request callback and context uses. --HG-- branch : HEAD

7bafda1813454621e03615e83d55bccfa7cc56bd 04-Dec-2009 Timo Sirainen <tss@iki.fi>

Removed MEMBER() macro. Require C99 style struct initializer. --HG-- branch : HEAD

/dovecot/src/anvil/anvil-settings.c auth-settings.c auth.c db-ldap.c db-sql.c mech-anonymous.c mech-apop.c mech-cram-md5.c mech-digest-md5.c mech-external.c mech-gssapi.c mech-login.c mech-ntlm.c mech-otp.c mech-plain.c mech-rpa.c mech-skey.c mech-winbind.c passdb-bsdauth.c passdb-checkpassword.c passdb-ldap.c passdb-pam.c passdb-passwd-file.c passdb-passwd.c passdb-shadow.c passdb-sia.c passdb-sql.c passdb-vpopmail.c userdb-checkpassword.c userdb-ldap.c userdb-nss.c userdb-passwd-file.c userdb-passwd.c userdb-prefetch.c userdb-sql.c userdb-static.c userdb-vpopmail.c /dovecot/src/config/config-settings.c /dovecot/src/dict/dict-settings.c /dovecot/src/imap-login/imap-login-settings.c /dovecot/src/imap/imap-settings.c /dovecot/src/lib-dict/dict-client.c /dovecot/src/lib-dict/dict-db.c /dovecot/src/lib-dict/dict-file.c /dovecot/src/lib-dict/dict-sql.c /dovecot/src/lib-index/mail-index-strmap.c /dovecot/src/lib-index/mailbox-list-index.c /dovecot/src/lib-lda/duplicate.c /dovecot/src/lib-lda/lda-settings.c /dovecot/src/lib-master/master-service-settings.c /dovecot/src/lib-settings/settings-parser.c /dovecot/src/lib-sql/driver-mysql.c /dovecot/src/lib-sql/driver-pgsql.c /dovecot/src/lib-sql/driver-sqlite.c /dovecot/src/lib-sql/sql-api.c /dovecot/src/lib-storage/index/cydir/cydir-storage.c /dovecot/src/lib-storage/index/dbox-multi/mdbox-settings.c /dovecot/src/lib-storage/index/dbox-multi/mdbox-storage.c /dovecot/src/lib-storage/index/dbox-single/sdbox-storage.c /dovecot/src/lib-storage/index/maildir/maildir-settings.c /dovecot/src/lib-storage/index/maildir/maildir-storage.c /dovecot/src/lib-storage/index/mbox/mbox-settings.c /dovecot/src/lib-storage/index/mbox/mbox-storage.c /dovecot/src/lib-storage/index/raw/raw-storage.c /dovecot/src/lib-storage/index/shared/shared-list.c /dovecot/src/lib-storage/index/shared/shared-storage.c /dovecot/src/lib-storage/list/mailbox-list-fs.c /dovecot/src/lib-storage/list/mailbox-list-maildir.c /dovecot/src/lib-storage/mail-storage-settings.c /dovecot/src/lib-storage/test-mail-storage.c /dovecot/src/lib-storage/test-mailbox.c /dovecot/src/lib/macros.h /dovecot/src/lib/mempool-alloconly.c /dovecot/src/lib/mempool-datastack.c /dovecot/src/lib/mempool-system-clean.c /dovecot/src/lib/mempool-system.c /dovecot/src/lib/mempool-unsafe-datastack.c /dovecot/src/lmtp/lmtp-settings.c /dovecot/src/log/log-settings.c /dovecot/src/login-common/login-settings.c /dovecot/src/master/master-settings.c /dovecot/src/plugins/acl/acl-backend-vfile.c /dovecot/src/plugins/convert/convert-storage.c /dovecot/src/plugins/fts-lucene/fts-backend-lucene.c /dovecot/src/plugins/fts-solr/fts-backend-solr.c /dovecot/src/plugins/fts-squat/fts-backend-squat.c /dovecot/src/plugins/quota/quota-maildir.c /dovecot/src/plugins/virtual/virtual-storage.c /dovecot/src/pop3-login/pop3-login-settings.c /dovecot/src/pop3/pop3-settings.c /dovecot/src/ssl-params/ssl-params-settings.c /dovecot/src/util/maildirlock.c
08d6658a4e2ec8104cd1307f6baa75fdb07a24f8 05-May-2009 Mark Washenberger <none@none>

Renamed headers to prevent collision if they were flattened on an install. --HG-- branch : HEAD

Makefile.am auth-cache.c auth-client-connection.c auth-common.h auth-master-connection.c auth-request-handler.c auth-request.c auth-stream.c auth-worker-client.c auth-worker-server.c auth.c db-checkpassword.c db-ldap.c db-passwd-file.c db-sql.c main.c mech-anonymous.c mech-apop.c mech-cram-md5.c mech-digest-md5.c mech-gssapi.c mech-login.c mech-ntlm.c mech-otp-skey-common.c mech-otp-skey-common.h mech-otp.c mech-plain-common.c mech-plain-common.h mech-plain.c mech-rpa.c mech-skey.c mech-winbind.c mech.c passdb-blocking.c passdb-bsdauth.c passdb-cache.c passdb-checkpassword.c passdb-ldap.c passdb-pam.c passdb-passwd-file.c passdb-passwd.c passdb-shadow.c passdb-sia.c passdb-sql.c passdb-vpopmail.c passdb.c userdb-blocking.c userdb-checkpassword.c userdb-ldap.c userdb-nss.c userdb-passwd-file.c userdb-passwd.c userdb-prefetch.c userdb-sql.c userdb-static.c userdb-vpopmail.c userdb.c /dovecot/src/imap/Makefile.am /dovecot/src/imap/cmd-append.c /dovecot/src/imap/cmd-cancelupdate.c /dovecot/src/imap/cmd-capability.c /dovecot/src/imap/cmd-check.c /dovecot/src/imap/cmd-close.c /dovecot/src/imap/cmd-copy.c /dovecot/src/imap/cmd-create.c /dovecot/src/imap/cmd-delete.c /dovecot/src/imap/cmd-enable.c /dovecot/src/imap/cmd-examine.c /dovecot/src/imap/cmd-expunge.c /dovecot/src/imap/cmd-fetch.c /dovecot/src/imap/cmd-id.c /dovecot/src/imap/cmd-idle.c /dovecot/src/imap/cmd-list.c /dovecot/src/imap/cmd-logout.c /dovecot/src/imap/cmd-lsub.c /dovecot/src/imap/cmd-namespace.c /dovecot/src/imap/cmd-noop.c /dovecot/src/imap/cmd-rename.c /dovecot/src/imap/cmd-search.c /dovecot/src/imap/cmd-select.c /dovecot/src/imap/cmd-sort.c /dovecot/src/imap/cmd-status.c /dovecot/src/imap/cmd-store.c /dovecot/src/imap/cmd-subscribe.c /dovecot/src/imap/cmd-thread.c /dovecot/src/imap/cmd-uid.c /dovecot/src/imap/cmd-unselect.c /dovecot/src/imap/cmd-unsubscribe.c /dovecot/src/imap/cmd-x-cancel.c /dovecot/src/imap/imap-client.c /dovecot/src/imap/imap-client.h /dovecot/src/imap/imap-commands-util.c /dovecot/src/imap/imap-commands-util.h /dovecot/src/imap/imap-commands.c /dovecot/src/imap/imap-commands.h /dovecot/src/imap/imap-common.h /dovecot/src/imap/imap-expunge.c /dovecot/src/imap/imap-fetch-body.c /dovecot/src/imap/imap-fetch.c /dovecot/src/imap/imap-search-args.c /dovecot/src/imap/imap-search.c /dovecot/src/imap/imap-status.c /dovecot/src/imap/imap-sync.c /dovecot/src/imap/mail-storage-callbacks.c /dovecot/src/imap/main.c /dovecot/src/plugins/imap-acl/imap-acl-plugin.c /dovecot/src/plugins/imap-quota/imap-quota-plugin.c /dovecot/src/pop3-login/client-authenticate.c /dovecot/src/pop3/Makefile.am /dovecot/src/pop3/main.c /dovecot/src/pop3/pop3-capability.h /dovecot/src/pop3/pop3-client.c /dovecot/src/pop3/pop3-client.h /dovecot/src/pop3/pop3-commands.c /dovecot/src/pop3/pop3-commands.h /dovecot/src/pop3/pop3-common.h
ba8566b02903a4b00a39a611d19f421739a09456 09-Jan-2009 Timo Sirainen <tss@iki.fi>

auth: Code cleanup for specifying what passdb features auth mechanisms need. --HG-- branch : HEAD

b44650b0f48a4b5f0dc240ed836833a00b643b9f 13-May-2007 Timo Sirainen <tss@iki.fi>

All password schemes can now be encoded with base64 or hex. The encoding is ".b64", ".base64" or ".hex" suffix in the scheme, eg. {plain.b64}. Password scheme verification function can now be set to NULL, in which case the verification is done by generating a new crypted password from given plaintext password and comparing it. --HG-- branch : HEAD

a8e132559a7ebe54c8269d79ce29fa3338c76199 13-May-2007 Timo Sirainen <tss@iki.fi>

Removed enum passdb_credentials. Use scheme strings directly instead. This makes it possible to implement new mechanisms in plugins. --HG-- branch : HEAD

f968e62caa52a8924bd05ebf76ff515b5c18e17b 31-Mar-2007 Timo Sirainen <tss@iki.fi>

Reverted accidental commit. This code isn't ready yet. --HG-- branch : HEAD

1108376e39a19912e8394e64e19b1bc6f6691cf6 30-Mar-2007 Timo Sirainen <tss@iki.fi>

Moved all storage destruction code to mail-storage.c and made destroy() optional. Removed set_callbacks(). Made autodetect() optional. --HG-- branch : HEAD

35136dd2baf8dc30e4e754294ed81ff48e8c1e64 08-Nov-2006 Timo Sirainen <tss@iki.fi>

Added auth_request_set_credentials() to modify credentials in passdb and implemented it for SQL passdb. Added passdb_need_set_credentials boolean to mechanisms to indicate that it's required (OTP will need it). Patch by Andrey Panin. --HG-- branch : HEAD

e70d5895795732b8247ab9abb045b438e954bc46 17-Jun-2006 Timo Sirainen <tss@iki.fi>

Added mech_generic_auth_internal() and mech_generic_auth_free() functions and used them wherever possible to reduce code duplication. Patch by Andrey Panin. --HG-- branch : HEAD

e074ffeaee1ce283bd42f167c6810e3d013f8218 16-Jun-2006 Timo Sirainen <tss@iki.fi>

Relicensed dovecot-auth to MIT. --HG-- branch : HEAD

8d6cb44a0161d88743756733f83c4fb278485987 14-Feb-2006 Timo Sirainen <tss@iki.fi>

While casting const pointers to something else, the const was often unneededly dropped out in the middle of casts. --HG-- branch : HEAD

6ef7e31619edfaa17ed044b45861d106a86191ef 13-Jan-2006 Timo Sirainen <tss@iki.fi>

Added "bool" type and changed all ints that were used as booleans to bool. --HG-- branch : HEAD

/dovecot/configure.in auth-cache.c auth-cache.h auth-client-connection.c auth-master-connection.c auth-master-listener.c auth-master-listener.h auth-request-handler.c auth-request-handler.h auth-request.c auth-request.h auth-worker-client.c auth.c auth.h common.h db-ldap.c db-ldap.h db-passwd-file.c db-passwd-file.h main.c mech-apop.c mech-cram-md5.c mech-digest-md5.c mech-ntlm.c mech-rpa.c passdb-bsdauth.c passdb-cache.c passdb-cache.h passdb-pam.c passdb-passwd.c passdb-shadow.c passdb.h password-scheme.c password-scheme.h userdb-ldap.c userdb-prefetch.c userdb.h /dovecot/src/imap-login/client-authenticate.c /dovecot/src/imap-login/client-authenticate.h /dovecot/src/imap-login/client.c /dovecot/src/imap-login/client.h /dovecot/src/imap/client.c /dovecot/src/imap/client.h /dovecot/src/imap/cmd-append.c /dovecot/src/imap/cmd-authenticate.c /dovecot/src/imap/cmd-capability.c /dovecot/src/imap/cmd-check.c /dovecot/src/imap/cmd-close.c /dovecot/src/imap/cmd-copy.c /dovecot/src/imap/cmd-create.c /dovecot/src/imap/cmd-delete.c /dovecot/src/imap/cmd-examine.c /dovecot/src/imap/cmd-expunge.c /dovecot/src/imap/cmd-fetch.c /dovecot/src/imap/cmd-idle.c /dovecot/src/imap/cmd-list.c /dovecot/src/imap/cmd-login.c /dovecot/src/imap/cmd-logout.c /dovecot/src/imap/cmd-lsub.c /dovecot/src/imap/cmd-namespace.c /dovecot/src/imap/cmd-noop.c /dovecot/src/imap/cmd-rename.c /dovecot/src/imap/cmd-search.c /dovecot/src/imap/cmd-select.c /dovecot/src/imap/cmd-sort.c /dovecot/src/imap/cmd-status.c /dovecot/src/imap/cmd-store.c /dovecot/src/imap/cmd-subscribe.c /dovecot/src/imap/cmd-thread.c /dovecot/src/imap/cmd-uid.c /dovecot/src/imap/cmd-unselect.c /dovecot/src/imap/cmd-unsubscribe.c /dovecot/src/imap/commands-util.c /dovecot/src/imap/commands-util.h /dovecot/src/imap/commands.c /dovecot/src/imap/commands.h /dovecot/src/imap/imap-expunge.c /dovecot/src/imap/imap-expunge.h /dovecot/src/imap/imap-fetch-body.c /dovecot/src/imap/imap-fetch.c /dovecot/src/imap/imap-fetch.h /dovecot/src/imap/imap-search.c /dovecot/src/imap/imap-search.h /dovecot/src/imap/imap-sort.c /dovecot/src/imap/imap-sync.c /dovecot/src/imap/imap-sync.h /dovecot/src/imap/imap-thread.c /dovecot/src/imap/namespace.c /dovecot/src/lib-auth/auth-client.c /dovecot/src/lib-auth/auth-client.h /dovecot/src/lib-auth/auth-server-connection.c /dovecot/src/lib-auth/auth-server-connection.h /dovecot/src/lib-auth/auth-server-request.c /dovecot/src/lib-auth/auth-server-request.h /dovecot/src/lib-charset/charset-iconv.c /dovecot/src/lib-charset/charset-utf8.c /dovecot/src/lib-charset/charset-utf8.h /dovecot/src/lib-dict/dict-client.c /dovecot/src/lib-dict/dict-private.h /dovecot/src/lib-dict/dict-sql.c /dovecot/src/lib-dict/dict.c /dovecot/src/lib-dict/dict.h /dovecot/src/lib-imap/imap-base-subject.c /dovecot/src/lib-imap/imap-base-subject.h /dovecot/src/lib-imap/imap-bodystructure.c /dovecot/src/lib-imap/imap-bodystructure.h /dovecot/src/lib-imap/imap-date.c /dovecot/src/lib-imap/imap-date.h /dovecot/src/lib-imap/imap-envelope.c /dovecot/src/lib-imap/imap-envelope.h /dovecot/src/lib-imap/imap-match.c /dovecot/src/lib-imap/imap-match.h /dovecot/src/lib-imap/imap-parser.c /dovecot/src/lib-imap/imap-parser.h /dovecot/src/lib-imap/imap-quote.c /dovecot/src/lib-imap/imap-quote.h /dovecot/src/lib-index/mail-cache-compress.c /dovecot/src/lib-index/mail-cache-lookup.c /dovecot/src/lib-index/mail-cache-transaction.c /dovecot/src/lib-index/mail-cache.c /dovecot/src/lib-index/mail-cache.h /dovecot/src/lib-index/mail-index-fsck.c /dovecot/src/lib-index/mail-index-lock.c /dovecot/src/lib-index/mail-index-private.h /dovecot/src/lib-index/mail-index-sync-ext.c /dovecot/src/lib-index/mail-index-sync-private.h /dovecot/src/lib-index/mail-index-sync-update.c /dovecot/src/lib-index/mail-index-sync.c /dovecot/src/lib-index/mail-index-transaction-private.h /dovecot/src/lib-index/mail-index-transaction.c /dovecot/src/lib-index/mail-index-view-private.h /dovecot/src/lib-index/mail-index-view-sync.c /dovecot/src/lib-index/mail-index-view.c /dovecot/src/lib-index/mail-index.c /dovecot/src/lib-index/mail-index.h /dovecot/src/lib-index/mail-transaction-log-append.c /dovecot/src/lib-index/mail-transaction-log-private.h /dovecot/src/lib-index/mail-transaction-log-view.c /dovecot/src/lib-index/mail-transaction-log.c /dovecot/src/lib-index/mail-transaction-log.h /dovecot/src/lib-mail/istream-header-filter.c /dovecot/src/lib-mail/istream-header-filter.h /dovecot/src/lib-mail/message-address.c /dovecot/src/lib-mail/message-body-search.c /dovecot/src/lib-mail/message-body-search.h /dovecot/src/lib-mail/message-content-parser.c /dovecot/src/lib-mail/message-content-parser.h /dovecot/src/lib-mail/message-date.c /dovecot/src/lib-mail/message-date.h /dovecot/src/lib-mail/message-header-decode.c /dovecot/src/lib-mail/message-header-decode.h /dovecot/src/lib-mail/message-header-search.c /dovecot/src/lib-mail/message-header-search.h /dovecot/src/lib-mail/message-parser.c /dovecot/src/lib-mail/message-parser.h /dovecot/src/lib-mail/message-part-serialize.c /dovecot/src/lib-mail/message-send.c /dovecot/src/lib-mail/message-send.h /dovecot/src/lib-mail/message-size.c /dovecot/src/lib-mail/message-size.h /dovecot/src/lib-ntlm/ntlm-encrypt.c /dovecot/src/lib-ntlm/ntlm-message.c /dovecot/src/lib-ntlm/ntlm-message.h /dovecot/src/lib-ntlm/ntlm.h /dovecot/src/lib-settings/settings.c /dovecot/src/lib-settings/settings.h /dovecot/src/lib-sql/driver-mysql.c /dovecot/src/lib-sql/driver-pgsql.c /dovecot/src/lib-storage/index/dbox/dbox-list.c /dovecot/src/lib-storage/index/dbox/dbox-mail.c /dovecot/src/lib-storage/index/dbox/dbox-save.c /dovecot/src/lib-storage/index/dbox/dbox-storage.c /dovecot/src/lib-storage/index/dbox/dbox-storage.h /dovecot/src/lib-storage/index/dbox/dbox-sync-expunge.c /dovecot/src/lib-storage/index/dbox/dbox-sync.c /dovecot/src/lib-storage/index/dbox/dbox-sync.h /dovecot/src/lib-storage/index/dbox/dbox-uidlist.c /dovecot/src/lib-storage/index/index-mail-headers.c /dovecot/src/lib-storage/index/index-mail.c /dovecot/src/lib-storage/index/index-mailbox-check.c /dovecot/src/lib-storage/index/index-search.c /dovecot/src/lib-storage/index/index-storage.c /dovecot/src/lib-storage/index/index-storage.h /dovecot/src/lib-storage/index/index-sync.c /dovecot/src/lib-storage/index/maildir/maildir-copy.c /dovecot/src/lib-storage/index/maildir/maildir-list.c /dovecot/src/lib-storage/index/maildir/maildir-mail.c /dovecot/src/lib-storage/index/maildir/maildir-save.c /dovecot/src/lib-storage/index/maildir/maildir-storage.c /dovecot/src/lib-storage/index/maildir/maildir-storage.h /dovecot/src/lib-storage/index/maildir/maildir-sync.c /dovecot/src/lib-storage/index/maildir/maildir-uidlist.c /dovecot/src/lib-storage/index/maildir/maildir-uidlist.h /dovecot/src/lib-storage/index/mbox/istream-raw-mbox.c /dovecot/src/lib-storage/index/mbox/istream-raw-mbox.h /dovecot/src/lib-storage/index/mbox/mbox-file.c /dovecot/src/lib-storage/index/mbox/mbox-file.h /dovecot/src/lib-storage/index/mbox/mbox-list.c /dovecot/src/lib-storage/index/mbox/mbox-lock.c /dovecot/src/lib-storage/index/mbox/mbox-mail.c /dovecot/src/lib-storage/index/mbox/mbox-md5.c /dovecot/src/lib-storage/index/mbox/mbox-save.c /dovecot/src/lib-storage/index/mbox/mbox-storage.c /dovecot/src/lib-storage/index/mbox/mbox-storage.h /dovecot/src/lib-storage/index/mbox/mbox-sync-parse.c /dovecot/src/lib-storage/index/mbox/mbox-sync-private.h /dovecot/src/lib-storage/index/mbox/mbox-sync-rewrite.c /dovecot/src/lib-storage/index/mbox/mbox-sync-update.c /dovecot/src/lib-storage/index/mbox/mbox-sync.c /dovecot/src/lib-storage/index/mbox/mbox-transaction.c /dovecot/src/lib-storage/mail-search.c /dovecot/src/lib-storage/mail-search.h /dovecot/src/lib-storage/mail-storage-private.h /dovecot/src/lib-storage/mail-storage.c /dovecot/src/lib-storage/mail-storage.h /dovecot/src/lib-storage/mailbox-tree.c /dovecot/src/lib-storage/mailbox-tree.h /dovecot/src/lib-storage/subscription-file/subscription-file.c /dovecot/src/lib-storage/subscription-file/subscription-file.h /dovecot/src/lib/array.h /dovecot/src/lib/buffer.c /dovecot/src/lib/buffer.h /dovecot/src/lib/compat.h /dovecot/src/lib/data-stack.c /dovecot/src/lib/data-stack.h /dovecot/src/lib/fd-close-on-exec.c /dovecot/src/lib/fd-close-on-exec.h /dovecot/src/lib/fd-set-nonblock.c /dovecot/src/lib/fd-set-nonblock.h /dovecot/src/lib/file-dotlock.c /dovecot/src/lib/file-dotlock.h /dovecot/src/lib/hash.c /dovecot/src/lib/hash.h /dovecot/src/lib/hex-binary.c /dovecot/src/lib/ioloop-epoll.c /dovecot/src/lib/ioloop-notify-dn.c /dovecot/src/lib/ioloop-notify-inotify.c /dovecot/src/lib/ioloop-poll.c /dovecot/src/lib/ioloop.c /dovecot/src/lib/ioloop.h /dovecot/src/lib/istream-data.c /dovecot/src/lib/istream-file.c /dovecot/src/lib/istream-internal.h /dovecot/src/lib/istream-limit.c /dovecot/src/lib/istream-mmap.c /dovecot/src/lib/istream-seekable.c /dovecot/src/lib/istream.c /dovecot/src/lib/istream.h /dovecot/src/lib/lib-signals.c /dovecot/src/lib/lib-signals.h /dovecot/src/lib/mempool-alloconly.c /dovecot/src/lib/module-dir.c /dovecot/src/lib/module-dir.h /dovecot/src/lib/network.c /dovecot/src/lib/network.h /dovecot/src/lib/ostream-crlf.c /dovecot/src/lib/ostream-file.c /dovecot/src/lib/ostream-internal.h /dovecot/src/lib/ostream.c /dovecot/src/lib/ostream.h /dovecot/src/lib/printf-upper-bound.c /dovecot/src/lib/restrict-access.c /dovecot/src/lib/restrict-access.h /dovecot/src/lib/restrict-process-size.h /dovecot/src/lib/seq-range-array.c /dovecot/src/lib/seq-range-array.h /dovecot/src/lib/strfuncs.c /dovecot/src/lib/strfuncs.h /dovecot/src/lib/unlink-directory.c /dovecot/src/lib/unlink-directory.h /dovecot/src/lib/var-expand.c /dovecot/src/login-common/client-common.c /dovecot/src/login-common/client-common.h /dovecot/src/login-common/common.h /dovecot/src/login-common/main.c /dovecot/src/login-common/master.c /dovecot/src/login-common/master.h /dovecot/src/login-common/sasl-server.c /dovecot/src/login-common/ssl-proxy-gnutls.c /dovecot/src/login-common/ssl-proxy-openssl.c /dovecot/src/login-common/ssl-proxy.c /dovecot/src/login-common/ssl-proxy.h /dovecot/src/master/auth-process.c /dovecot/src/master/common.h /dovecot/src/master/log.c /dovecot/src/master/login-process.c /dovecot/src/master/mail-process.c /dovecot/src/master/mail-process.h /dovecot/src/master/main.c /dovecot/src/master/master-login-interface.h /dovecot/src/master/master-settings.c /dovecot/src/master/master-settings.h /dovecot/src/master/ssl-init.c /dovecot/src/master/syslog-util.c /dovecot/src/master/syslog-util.h /dovecot/src/plugins/imap-quota/imap-quota-plugin.c /dovecot/src/plugins/quota/quota-dict.c /dovecot/src/plugins/quota/quota-dirsize.c /dovecot/src/plugins/quota/quota-fs.c /dovecot/src/plugins/quota/quota-private.h /dovecot/src/plugins/quota/quota-storage.c /dovecot/src/plugins/quota/quota.c /dovecot/src/plugins/quota/quota.h /dovecot/src/plugins/trash/trash-plugin.c /dovecot/src/plugins/zlib/istream-zlib.c /dovecot/src/plugins/zlib/zlib-plugin.c /dovecot/src/pop3-login/client-authenticate.c /dovecot/src/pop3-login/client-authenticate.h /dovecot/src/pop3-login/client.c /dovecot/src/pop3-login/client.h /dovecot/src/pop3/client.c /dovecot/src/pop3/commands.c /dovecot/src/pop3/common.h /dovecot/src/pop3/main.c /dovecot/src/util/rawlog.c
9426f0585f821606cbf332282a57eea24376a765 28-Dec-2005 Timo Sirainen <tss@iki.fi>

Removed need_passdb from mechanism definitions. passdb_need_plain/credentials is enough to know that. Also give a better error message if no passdbs are set and a mechanism requires passdb. --HG-- branch : HEAD

e03ec0b7b9d92551331bc509bcd86920544171d1 28-Oct-2005 Timo Sirainen <tss@iki.fi>

Use a bit larger initial pool sizes --HG-- branch : HEAD

0469ed17dafcc56589ce00960a23f4f06817dfb5 27-Oct-2005 Timo Sirainen <tss@iki.fi>

Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by pod@herald.ox.ac.uk --HG-- branch : HEAD

d368b5e0c6ecc4361de943119db898e9c62e5f2c 22-Apr-2005 Timo Sirainen <tss@iki.fi>

Grow default auth_request pools to 512 bytes per request. --HG-- branch : HEAD

78c471cb3d6467b7bb889330a86912cb8493e0fd 24-Mar-2005 Timo Sirainen <tss@iki.fi>

Fixes incorrect error message and adds missing hex_to_binary() return value check. Patch by Andrey Panin. --HG-- branch : HEAD

4ac5448461b63de9637de839fbc611a3d503287c 08-Jan-2005 Timo Sirainen <tss@iki.fi>

Another try with API cleanup. --HG-- branch : HEAD

78ed6a99e980228a75fa59cff84327dc0ea82857 08-Jan-2005 Timo Sirainen <tss@iki.fi>

API cleanup --HG-- branch : HEAD

49e513d090753ccbf95560b2f3a21f081a5b6c51 08-Jan-2005 Timo Sirainen <tss@iki.fi>

Added auth_request_log_*(). --HG-- branch : HEAD

1e21e6be70994b1aa9e52ca0e2f51afefca6d0df 08-Jan-2005 Timo Sirainen <tss@iki.fi>

Cleanups. --HG-- branch : HEAD

97c339398f1aba6f315b55a9b6ee6b020e33bea4 07-Jan-2005 Timo Sirainen <tss@iki.fi>

Reorganized the code to have less global/static variables. --HG-- branch : HEAD

e80203675151ef9d4f3f850cf02041042eb13096 07-Jan-2005 Timo Sirainen <tss@iki.fi>

Split auth_request* functions from mech.c to auth-request.c --HG-- branch : HEAD

517d1e7142d57299c733b30423e35e7e1f8d01d6 07-Jan-2005 Timo Sirainen <tss@iki.fi>

Make FAIL reply contain "temp" parameter if the authentication failed because of temporary internal error. Also cleaned up the auth code a bit. --HG-- branch : HEAD

b97514e470fc4c78f6f1ce4660f1e5aec559c3b4 29-Nov-2004 Timo Sirainen <tss@iki.fi>

Initial response support for NTLM and RPA. Patch by Andrey Panin. --HG-- branch : HEAD

09ea3aa6bc03544a9e712d263f07976255aaaaf0 11-Nov-2004 Timo Sirainen <tss@iki.fi>

allow LM authentication for older (Win9x) clients which do not pass NTLM response in type 3 message. fixes crash in dovecot-auth (empty credentials could be passed to hex_to_binary function if NTLM2 was negotiated). Patch by Andrey Panin --HG-- branch : HEAD

1704aa6b56b6a97bab6e995bcf7170b0c6527291 22-Oct-2004 Timo Sirainen <tss@iki.fi>

support OEM encoding in NTLM messages. Patch by Andrey Panin. --HG-- branch : HEAD

73bfdbe28c2ce6d143eadf0bab8ccfbe4cab0fae 13-Oct-2004 Timo Sirainen <tss@iki.fi>

Changed dovecot-auth protocol to ASCII based. Should be easier now to write replacement server if needed by someone. Also cleaned up/made more consistent auth code. The new code could still use some cleaning though.. --HG-- branch : HEAD

Makefile.am auth-client-connection.c auth-client-connection.h auth-client-interface.h auth-master-connection.c auth-master-connection.h auth-master-interface.h mech-anonymous.c mech-apop.c mech-cram-md5.c mech-digest-md5.c mech-login.c mech-ntlm.c mech-plain.c mech-rpa.c mech.c mech.h userdb.h /dovecot/src/imap-login/client-authenticate.c /dovecot/src/lib-auth/auth-client.h /dovecot/src/lib-auth/auth-server-connection.c /dovecot/src/lib-auth/auth-server-connection.h /dovecot/src/lib-auth/auth-server-request.c /dovecot/src/lib-auth/auth-server-request.h /dovecot/src/login-common/sasl-server.c /dovecot/src/login-common/sasl-server.h /dovecot/src/master/auth-process.c /dovecot/src/master/auth-process.h /dovecot/src/master/common.h /dovecot/src/master/login-process.c /dovecot/src/master/mail-process.c /dovecot/src/master/mail-process.h /dovecot/src/pop3-login/client-authenticate.c
1acbc717de94ed9b08a41705964618c4f01e6e23 07-Oct-2004 Timo Sirainen <tss@iki.fi>

fix endianness problem, patch by Andrey Panin --HG-- branch : HEAD

88c2db95c4a0f8f7986a63cd57cf4b6850d76543 05-Oct-2004 Timo Sirainen <tss@iki.fi>

NTLM2 authentication support. Patch by Andrey Panin --HG-- branch : HEAD

9abfe876fa81576f130f3f82f622ae936c21a716 30-Aug-2004 Timo Sirainen <tss@iki.fi>

Changed "invalid username" error message. --HG-- branch : HEAD

0bca7c45b737daf3890e91a1ab2473ab360e78f1 28-Aug-2004 Timo Sirainen <tss@iki.fi>

Added auth_username_translation setting. --HG-- branch : HEAD

d43c646d4b84635aa795946555be04a553d5413a 30-Jul-2004 Timo Sirainen <tss@iki.fi>

Added LANMAN password scheme. Patch by Andrey Panin --HG-- branch : HEAD

c7480644202e5451fbed448508ea29a25cffc99c 28-Jul-2004 Timo Sirainen <tss@iki.fi>

NTLM authentication. Patch by Andrey Panin --HG-- branch : HEAD