aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/smtp/camel-smtp-transport.h
Commit message (Collapse)AuthorAgeFilesLines
* Fixes bug #31752Jeffrey Stedfast2002-10-081-1/+1
| | | | | | | | | | | | | | 2002-10-07 Jeffrey Stedfast <fejj@ximian.com> Fixes bug #31752 * providers/smtp/camel-smtp-transport.c (connect_to_server): Don't forget to send another EHLO command to the server once we toggle into STARTTLS mode. (smtp_helo): Reset any flags set using the EHLO response and also any authtypes. svn path=/trunk/; revision=18334
* Remove "possibly non-fatal" exception strings, all exceptions are fatalJeffrey Stedfast2002-07-261-0/+1
| | | | | | | | | | | | | | | | | | | 2002-07-25 Jeffrey Stedfast <fejj@ximian.com> * providers/smtp/camel-smtp-transport.c: Remove "possibly non-fatal" exception strings, all exceptions are fatal unless their caller decides otherwise. (connect_to_server): If smtp_helo() fails due to us getting disconnected, treat the exception as fatal. (smtp_connect): Abort if smtp_helo() fails and we got disconnected. (smtp_send_to): If smtp_mail() fails, abort the send operation. (smtp_set_exception): If respbuf was NULL, then we got disconnected and so update our state accordingly. (smtp_disconnect): Only send a QUIT if we are still in the connected state (or, at least think we are). svn path=/trunk/; revision=17595
* Make the standard AUTH format take priority over the AUTH= priority, sinceJeffrey Stedfast2002-07-171-0/+2
| | | | | | | | | | | | 2002-07-16 Jeffrey Stedfast <fejj@ximian.com> * providers/smtp/camel-smtp-transport.c (smtp_helo): Make the standard AUTH format take priority over the AUTH= priority, since sometimes servers only list a subset of the supported authtypes in the AUTH= response while they list all authtypes in the standard AUTH response. Fixes "bug" #27841. svn path=/trunk/; revision=17479
* Remove this: it couldn't be generically used, because different subclassesDan Winship2002-03-111-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * camel-tcp-stream.c (camel_tcp_stream_get_socket): Remove this: it couldn't be generically used, because different subclasses returned entirely different types of data. (camel_tcp_stream_get_local_address, camel_tcp_stream_get_remote_address): Add these to replace what get_socket was being used for. (camel_tcp_address_new, camel_tcp_address_free): Utility functions for get_{local,remote}_address. * providers/smtp/camel-smtp-transport.c: Change localaddr to a CamelTcpAddress *. (connect_to_server): Call camel_tcp_stream_get_local_address to get the local IP address. (smtp_disconnect): free localaddr. (smtp_helo): Update for localaddr change. * camel-tcp-stream-raw.c (stream_get_socket): Remove (stream_get_local_address, stream_get_remote_address): Implement. * camel-tcp-stream-ssl.c (stream_get_socket): Remove (stream_get_local_address, stream_get_remote_address): Implement. * camel-tcp-stream-openssl.c (stream_get_socket): Remove (stream_get_local_address, stream_get_remote_address): Implement. svn path=/trunk/; revision=16092
* Start the ssl stream off in non-ssl mode (useful for STARTTLS).Jeffrey Stedfast2002-03-061-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-03-05 Jeffrey Stedfast <fejj@ximian.com> * camel-tcp-stream-openssl.c (camel_tcp_stream_openssl_new_raw): Start the ssl stream off in non-ssl mode (useful for STARTTLS). (camel_tcp_stream_openssl_enable_ssl): New function to toggle an ssl stream into ssl mode. (open_ssl_connection): Close the sockfd on fail so our caller doesn't have to - this also allows us to save the original errno. (stream_connect): If we want ssl mode, do our ssl stuff. (camel_tcp_stream_openssl_class_init): Init some SSL stuff here instead of in open_ssl_connection since these only ever need to be called once. (stream_read): Only use SSL_read if we are in ssl mode. (stream_write): Only use SSL_write if we are in ssl mode. * providers/smtp/camel-smtp-transport.c (smtp_helo): Check for the STARTTLS extension. (connect_to_server): Try to use STARTTLS whenever possible rather than the old way of doing things. (connect_to_server_wrapper): Wrapper around connect_to_server() to first try STARTTLS and then attempt normal SSL mode if we can't connect via STARTTLS. * camel-tcp-stream-ssl.c (camel_tcp_stream_ssl_enable_ssl): New function to toggle an ssl stream into ssl mode. (camel_tcp_stream_ssl_new_raw): Start the ssl stream off in non-ssl mode (useful for STARTTLS). (stream_connect): Only connect in SSL mode if required. svn path=/trunk/; revision=15937
* Use flags rather than a bunch of gboolean variables. (smtp_connect): Same.Jeffrey Stedfast2002-01-291-5/+11
| | | | | | | | | | | | | | | | | | | | | 2002-01-28 Jeffrey Stedfast <fejj@ximian.com> * providers/smtp/camel-smtp-transport.c (smtp_construct): (connect_to_server): Use flags rather than a bunch of gboolean variables. (smtp_connect): Same. (smtp_mail): Here too. Use the enhanced status codes if available. (smtp_data): And again here. (smtp_helo): Finally here. Also detect the ENHANCEDSTATUSCODES extension. (smtp_rcpt): Use the enhanced status codes if available. (smtp_rset): Here too. (smtp_quit): And finally here. * camel-transport.h: Removed gboolean supports_8bit since this is pretty local to only SMTP for now. svn path=/trunk/; revision=15498
* Fixing the license text.Ettore Perazzoli2001-10-281-1/+0
| | | | svn path=/trunk/; revision=14212
* Update the licensing information to require version 2 of the GPLEttore Perazzoli2001-10-271-2/+2
| | | | | | (instead of version 2 or any later version). svn path=/trunk/; revision=14190
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-1/+1
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Add an "extra_conf" field to CamelProvider with structures and defines andDan Winship2001-03-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * camel-provider.h: Add an "extra_conf" field to CamelProvider with structures and defines and stuff, for providers to specify additional configuration options that they want. Also add a "supports ssl" flag to the provider flags. * camel-remote-store.c: add a "default_ssl_port" field. (remote_construct): If the URL has the "use_ssl" parameter, set the store's use_ssl flag. (remote_connect): If using SSL and no port specified, use the default_ssl_port rather than the default_port. * providers/smtp/camel-smtp-provider.c (smtp_provider): add CAMEL_PROVIDER_SUPPORTS_SSL and CAMEL_URL_ALLOW_USER. (The config gui code knows that the ALLOW_USER and ALLOW_AUTH go together.) (ssmtp_provider): gone * providers/smtp/camel-smtp-transport.c (smtp_construct): Set a flag if "use_ssl" param is set. (smtp_connect): Check the CamelSmtpTransport use_ssl flag rather than checking if this is smtp or ssmtp. * providers/imap/camel-imap-provider.c (imap_conf_entries): Add a bunch of IMAP-specific configuration options, like "check for new mail in all folders" (default TRUE), "show only subscribed folders" (default TRUE), "ignore server-supplied namespace", and "apply filters to INBOX" (not yet implemented). (imap_provider): We support SSL and we no longer allow a path in the URL. (namespace is handled via extra_conf) (simap_provider): Gone * providers/imap/camel-imap-store.c (camel_imap_store_init): Set default_ssl_port, don't set CAMEL_STORE_SUBSCRIPTIONS here (construct): remove simap stuff, deal with "use_lsub", "namespace", "check_all", and "filter" parameters. Set base_url to not include params. (imap_store_setup_online): Don't ask for the namespace if it was set explicitly. Don't get subscribed folders if !use_lsub. (imap_concat): Fix a bug. (get_folder_info): Support for not checking all folders. * providers/pop3/camel-pop3-provider.c (pop3_conf_entries): "keep on server" (currently still implemented by the mailer code, not here), "delete after N days" (not yet implemented). (pop3_provider): we support SSL (spop_provider): gone * providers/pop3/camel-pop3-store.c (camel_pop3_store_init): Set default_ssl_port (pop3_connect): Remove spop code svn path=/trunk/; revision=8968
* Don't forget to unref the SASL object.Jeffrey Stedfast2001-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | 2001-03-02 Jeffrey Stedfast <fejj@ximian.com> * providers/imap/camel-imap-store.c (try_auth): Don't forget to unref the SASL object. * providers/smtp/camel-smtp-transport.c (query_auth_types): Implemented. (smtp_auth): Implemented. (smtp_helo): Don't bother parsing the authtypes if we already have them. (smtp_connect): call smtp_auth() here if we found any authtypes. (smtp_disconnect): Updated as I now use a hash table for the supported authtypes rather than a linked list. (esmtp_get_authtypes): modify to use a hash table instead of a linked list and also use isspace() rather than == ' '. svn path=/trunk/; revision=8525
* change a bunch of IS_CAMEL_* macros to CAMEL_IS_*Dan Winship2000-12-141-1/+1
| | | | | | | * Namespace cleanup: change a bunch of IS_CAMEL_* macros to CAMEL_IS_* svn path=/trunk/; revision=6972
* Fixed some memory leaks. (camel_smtp_transport_init): InitializeJeffrey Stedfast2000-09-291-1/+1
| | | | | | | | | | | | | | | | | | | 2000-09-28 Jeffrey Stedfast <fejj@helixcode.com> * providers/smtp/camel-smtp-transport.c: Fixed some memory leaks. (camel_smtp_transport_init): Initialize supports_8bit to FALSE. (smtp_helo): If server supports 8bit, set supports_8bit to TRUE. * camel-transport.h (struct _CamelTransport): Added variable gboolean supports_8bit (we'll need this eventually? - see bugzilla bug #53) * providers/smtp/camel-smtp-transport.c (smtp_get_email_addr_from_text): Ugh, no wonder people were getting illegal seek warnings *sigh*. I guess I can only blame myself for this one though :-( svn path=/trunk/; revision=5631
* Merge with camel-async.Peter Williams2000-08-111-5/+5
| | | | svn path=/trunk/; revision=4687
* Fixes to make the SMTP transport thread-safeEDT 2000 Jeffrey Stedfast2000-05-251-0/+13
| | | | | | | | | Wed May 24 18:09:26 EDT 2000 Jeffrey Stedfast <fejj@helixcode.com> * providers/smtp/camel-smtp-transport.[c,h]: Fixes to make the SMTP transport thread-safe svn path=/trunk/; revision=3190
* o fixed numerous bugs in providers/smtp/camel-smtp-transport.c; should nowEDT 2000 Jeffrey Stedfast2000-04-081-1/+1
| | | | | | | | | | Fri Apr 7 16:49:42 EDT 2000 Jeffrey Stedfast <fejj@stampede.org> o fixed numerous bugs in providers/smtp/camel-smtp-transport.c; should now build correctly o readded smtp to providers/Makefile.am CVS svn path=/trunk/; revision=2332
* o Added smtp/ to providers tree under camel o Added makefiles and sourceEDT 2000 Jeffrey Stedfast2000-04-071-0/+68
Thu Apr 6 22:56:44 EDT 2000 Jeffrey Stedfast <fejj@stampede.org> o Added smtp/ to providers tree under camel o Added makefiles and source for an smtp module (untested as of yet) svn path=/trunk/; revision=2317