Commit Graph

12 Commits

Author SHA1 Message Date
ba39d4fff5 Turn off warnings. (get_name): Same.
2001-10-05  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-service.c (camel_service_finalize): Turn off warnings.
	(get_name): Same.

	* camel-sasl.c (sasl_challenge): Turn off warnings.

	* camel-tcp-stream.c (tcp_connect): Turn off warnings.
	(tcp_getsockopt): Same.
	(tcp_setsockopt): Here too.
	(tcp_get_socket): And here.

	* camel-folder.c (folder_sync): Turn off warnings.
	(expunge): Same.
	(append_message): Here too.
	(get_message): And here.
	(search_by_expression): And again here.
	(folder_changed): Here too.

	* camel-store.c (get_folder): Set an exception and turn off
	debugging g_warnings.
	(create_folder): Same.
	(delete_folder): Here too.
	(rename_folder): And here.
	(get_trash): And here.
	(get_folder_info): Same.
	(free_folder_info): And again here.
	(camel_folder_info_build): Here too.
	(folder_subscribed): Same.
	(subscribe_folder): Here too.
	(unsubscribe_folder): And here.

svn path=/trunk/; revision=13458
2001-10-05 19:38:24 +00:00
a1dbf7e2b8 A quoted string cannot contain \n's so check for those as well.
2001-08-09  Jeffrey Stedfast  <fejj@ximian.com>

	* providers/imap/camel-imap-utils.c (imap_parse_string_generic): A
	quoted string cannot contain \n's so check for those as well.
	(imap_atom_specials): Update this to fix bug #6553.

svn path=/trunk/; revision=11845
2001-08-09 22:48:12 +00:00
99e55fbc6b special case popb4smtp auth before we try and connect, and do the magic
2001-08-03  Not Zed  <NotZed@Ximian.com>

        * providers/smtp/camel-smtp-transport.c (smtp_connect): special
        case popb4smtp auth before we try and connect, and do the magic
        here first.

2001-08-02  Not Zed  <NotZed@Ximian.com>

        * providers/smtp/camel-smtp-transport.c (smtp_connect): Check for
        POPB4SMTP separate to the esmtp auth list.
        (smtp_auth): If creating the sasl object means it is
        already authenticated, then exit early.  Sort of 'clean hack' to
        help popb4smtp work.
        (smtp_auth): Unref the sasl object, clean up a memleak i think.

        * providers/smtp/camel-smtp-provider.c
        (camel_provider_module_init): Added POPB4SMTP auth type.

        * camel-sasl.c (camel_sasl_authtype): Added POPB4SMTP type.

        * camel-sasl-popb4smtp.c: New file for pop before smtp
        'authentication'.

        * Makefile.am (libcamel_la_SOURCES, HEADERS): Add
        camel-sasl-popb4smtp.[ch].

svn path=/trunk/; revision=11615
2001-08-03 15:33:57 +00:00
014ed35be5 Remove the "quick_login" member, which is unnecessary.
* camel-service.h: Remove the "quick_login" member, which is
	unnecessary.

	* providers/smtp/camel-smtp-transport.c (smtp_auth): Remove the
	references to quick_login and fix this to use the CamelSasl
	interfaces correctly to do the same thing.
	(connect_to_server): Split this out of smtp_connect
	(smtp_connect): Use connect_to_server. When re-EHLO'ing after
	auth, ignore errors.
	(query_auth_types): Use connect_to_server rather than
	smtp_connect, so it doesn't try to authenticate. Add LOGIN
	authtype to the list of authtypes to check for.

	* providers/smtp/camel-smtp-provider.c
	(camel_provider_module_init): Add LOGIN authtype to the authtypes
	list explicitly.

	* camel-sasl.c (camel_sasl_authtype_list): Don't list LOGIN here:
	it's not a real SASL authtype and is only used for SMTP.

	* camel-sasl-plain.c:
	* camel-sasl-login.c:
	* camel-sasl-kerberos4.c:
	* camel-sasl-cram-md5.c:
	* camel-sasl-anonymous.c:
	* providers/pop3/camel-pop3-provider.c: Remove "quick_login"
	argument from authtypes.

svn path=/trunk/; revision=9100
2001-04-02 20:57:39 +00:00
b27a35eae5 New files to handle the LOGIN SASL mechanism.
2001-04-01  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-sasl-login.[c,h]: New files to handle the LOGIN SASL
	mechanism.

	* camel-sasl-plain.c: Removed the definition of
	camel_sasl_login_authtype.

	* camel-sasl.c (camel_sasl_new): Oops. I thought LOGIN was an
	alias to PLAIN. I was wrong. These two SASL objects have to be
	separate.

	* providers/smtp/camel-smtp-transport.c (smtp_auth): Updated to
	check for and use authmech->quick_login when available.

svn path=/trunk/; revision=9088
2001-04-01 22:54:44 +00:00
c3db21df6e Updated the authtype values.
2001-04-01  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-sasl-plain.c:
	* camel-sasl-anonymous.c:
	* camel-sasl-digest-md5.c:
	* camel-sasl-cram-md5.c:
	* camel-sasl-kerberos4.c: Updated the authtype values.

	* camel-service.h: Added another field to CamelServiceAuthType
	that specifies whether or not the mechanism supports "quick auth"
	which means that the client can send the initial challenge in the
	AUTH request.

	* camel-sasl.c (camel_sasl_new): Add support for LOGIN.
	(camel_sasl_authtype_list): Here too.
	(camel_sasl_authtype): And finally here.

	* camel-sasl-plain.c: Define camel_sasl_login_authtype.

	* providers/smtp/camel-smtp-transport.c (smtp_auth): Only unref
	the SASL object if it exists.

svn path=/trunk/; revision=9086
2001-04-01 22:10:55 +00:00
fe962a2055 Big header cleanups and nntp compile fix
svn path=/trunk/; revision=9024
2001-03-29 20:31:40 +00:00
0a12cd8b6b add an argument to say whether or not you want "PLAIN" in the list (so you
* camel-sasl.c (camel_sasl_authtype_list): add an argument to say
	whether or not you want "PLAIN" in the list (so you don't end up
	with "Password" twice in the config dialog).

	* providers/imap/camel-imap-provider.c (camel_provider_module_init):
	* providers/imap/camel-imap-store.c (query_auth_types): We don't
	want PLAIN.

	* providers/smtp/camel-smtp-provider.c (camel_provider_module_init):
	* providers/smtp/camel-smtp-transport.c (query_auth_types): But we
	do.

svn path=/trunk/; revision=8972
2001-03-27 05:30:41 +00:00
691be72a02 Don't return NULL if the token is non-NULL. This is why:
2001-03-05  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-sasl-plain.c (plain_challenge): Don't return NULL if the
	token is non-NULL. This is why:

	sending : AUTH PLAIN
        received: 334 ok. go on.                 <-- this is why
        sending : ZGZPaQpAZ214Lm5ldBBnb29jYXI=
        received: 235 {mp005-rz3} go ahead

	* camel-sasl.c (camel_sasl_authtype): Add the PLAIN type here.
	(camel_sasl_authtype_list): And here too.

	* camel-sasl-plain.c: Initialize the camel_sasl_plain_authtype.

	* camel-sasl-plain.h: extern the camel_sasl_plain_authtype.

svn path=/trunk/; revision=8562
2001-03-05 21:28:08 +00:00
81b0fea2f0 #include "camel-sasl-digest-md5.h" (camel_sasl_authtype_list): add
2001-03-01  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-sasl.c: #include "camel-sasl-digest-md5.h"
	(camel_sasl_authtype_list): add DIGEST-MD5 stuff here.
	(camel_sasl_authtype): And here too.
	(camel_sasl_new): And here...

	* camel-sasl-digest-md5.[c,h]: new SASL class for DIGEST-MD5 (has
	been tested and proven to work).

svn path=/trunk/; revision=8513
2001-03-02 02:29:08 +00:00
61a496ffca Take a GByteArray as input as well. Comment that you can pass %NULL for
* camel-sasl.c (camel_sasl_challenge): Take a GByteArray as input
	as well. Comment that you can pass %NULL for @token to get the
	initial auth data for mechanisms that are client-initiated.
	(camel_sasl_challenge_base64): Convenience function for protocols
	that use base64-encoded SASL.
	(camel_sasl_authenticated): Implement this... (it was prototyped
	already)
	(camel_sasl_new): Function to take a service name, a mechanism
	name, and a CamelService, and return a CamelSasl for it.
	(camel_sasl_authtype, camel_sasl_authtype_list): Functions to
	return CamelServiceAuthType information about SASL mechanisms, to
	allow providers to deal with them generically.

	* camel-sasl-anonymous.c, camel-sasl-plain.c: Update/simplify for
	CamelSasl changes. Both of these are single-round
	(client-initiated) mechanisms, so they don't need to keep state.
	(camel_sasl_plain_new): Removed; use camel_sasl_new instead.
	(Can't get rid of camel_sasl_anonymous_new though...)

	* camel-sasl-cram-md5.c: Update/simplify for CamelSasl changes.
	(camel_sasl_cram_md5_new): Removed; use camel_sasl_new instead.
	(cram_md5_challenge): Use md5_get_digest where possible, and
	various other minor simplifications. CRAM-MD5 only has a single
	round, so there's no need to keep track of state. This code is now
	tested (against Cyrus IMAPd) and known to work.

	* camel-sasl-kerberos4.h: Update/simplify for CamelSasl changes.
	Make only a single #ifdef HAVE_KRB4. Remove stuff from priv that
	isn't needed between rounds.
	(camel_sasl_kerberos4_new): Removed; use camel_sasl_new instead
	(krb4_challenge): Fix up the logic I broke in my previous "at
	least make it compile" fixes, update to match other changes, and
	remove IMAP-isms that shouldn't be in the generic code. This still
	isn't tested, because we're stuck behind a NAT right now...

svn path=/trunk/; revision=8462
2001-03-01 22:23:23 +00:00
4321d72d9b Added camel-sasl*.[c,h] to the build.
2001-02-28  Jeffrey Stedfast  <fejj@ximian.com>

	* Makefile.am: Added camel-sasl*.[c,h] to the build.

	* camel-sasl.[c,h]: new "abstract" SASL class

	* camel-sasl-kerberos4.[c,h]: new SASL class for KERBEROS_V4

	* camel-sasl-cram-md5.[c,h]: new SASL class for CRAM-MD5

	* camel-sasl-plain.[c,h]: new SASL class for PLAIN

	* providers/imap/camel-imap-auth.c: Removed the base64 functions.

	* camel-mime-utils.c (base64_encode_simple): Moved here from
	camel-imap-auth.c
	(base64_decode_simple): Same.

svn path=/trunk/; revision=8428
2001-02-28 18:16:02 +00:00