diff options
author | Not Zed <NotZed@Ximian.com> | 2004-09-24 10:50:45 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2004-09-24 10:50:45 +0800 |
commit | 2223bc36fa7b6b16ff7ea83e39e64e9375e3ebc1 (patch) | |
tree | 47094ce1777a4c6fe98bfc81e70a07a6f9f5414a /camel/camel-tcp-stream.h | |
parent | 6883c5737127983d776b7071c258ae74c9bfb4c1 (diff) | |
download | gsoc2013-evolution-2223bc36fa7b6b16ff7ea83e39e64e9375e3ebc1.tar.gz gsoc2013-evolution-2223bc36fa7b6b16ff7ea83e39e64e9375e3ebc1.tar.zst gsoc2013-evolution-2223bc36fa7b6b16ff7ea83e39e64e9375e3ebc1.zip |
** See bug #47821.
2004-09-13 Not Zed <NotZed@Ximian.com>
** See bug #47821.
* camel-service.c: removed the old hostent based hostname interfaces.
* camel-sasl-kerberos4.c (krb4_challenge): new hostname interfaces.
* camel-sasl-gssapi.c (gssapi_challenge): new hostname interfaces.
* camel-sasl-digest-md5.c (digest_md5_challenge): use new hostname
interfaces.
(generate_response): just take hostname directly, not hostent.
* camel-mime-utils.c (camel_header_msgid_generate): use new
hostname interfaces.
* providers/smtp/camel-smtp-transport.c (connect_to_server): fixed
to use new addrinfo apis.
* providers/pop3/camel-pop3-store.c (connect_to_server): fixed to
use new addrinfo apis.
* camel-tcp-stream-ssl.c (stream_connect): try all addresses
supplied.
* camel-tcp-stream.c (camel_tcp_stream_get_remote_address)
(camel_tcp_stream_get_local_address): return a sockaddr now, and
also the address length. Fixed all implementations and callers.
(camel_tcp_stream_connect): use addrinfo rather than hostent for
host AND port info. Fixed all implementations and callers.
svn path=/trunk/; revision=27352
Diffstat (limited to 'camel/camel-tcp-stream.h')
-rw-r--r-- | camel/camel-tcp-stream.h | 29 |
1 files changed, 6 insertions, 23 deletions
diff --git a/camel/camel-tcp-stream.h b/camel/camel-tcp-stream.h index 9472da10ee..b7be61dbec 100644 --- a/camel/camel-tcp-stream.h +++ b/camel/camel-tcp-stream.h @@ -88,18 +88,6 @@ typedef struct _CamelSockOptData { } value; } CamelSockOptData; -typedef enum { - CAMEL_TCP_ADDRESS_IPv4, - CAMEL_TCP_ADDRESS_IPv6 -} CamelTcpAddressFamily; - -typedef struct { - CamelTcpAddressFamily family; - gushort port, length; - guint8 address[1]; -} CamelTcpAddress; - - struct _CamelTcpStream { CamelStream parent_object; @@ -109,29 +97,24 @@ typedef struct { CamelStreamClass parent_class; /* Virtual methods */ - int (*connect) (CamelTcpStream *stream, struct hostent *host, int port); + int (*connect) (CamelTcpStream *stream, struct addrinfo *host); int (*getsockopt) (CamelTcpStream *stream, CamelSockOptData *data); int (*setsockopt) (CamelTcpStream *stream, const CamelSockOptData *data); - CamelTcpAddress * (*get_local_address) (CamelTcpStream *stream); - CamelTcpAddress * (*get_remote_address) (CamelTcpStream *stream); + struct sockaddr * (*get_local_address) (CamelTcpStream *stream, socklen_t *len); + struct sockaddr * (*get_remote_address) (CamelTcpStream *stream, socklen_t *len); } CamelTcpStreamClass; /* Standard Camel function */ CamelType camel_tcp_stream_get_type (void); /* public methods */ -int camel_tcp_stream_connect (CamelTcpStream *stream, struct hostent *host, int port); +int camel_tcp_stream_connect (CamelTcpStream *stream, struct addrinfo *host); int camel_tcp_stream_getsockopt (CamelTcpStream *stream, CamelSockOptData *data); int camel_tcp_stream_setsockopt (CamelTcpStream *stream, const CamelSockOptData *data); -CamelTcpAddress *camel_tcp_stream_get_local_address (CamelTcpStream *stream); -CamelTcpAddress *camel_tcp_stream_get_remote_address (CamelTcpStream *stream); - -CamelTcpAddress *camel_tcp_address_new (CamelTcpAddressFamily family, - gushort port, gushort length, - gpointer address); -void camel_tcp_address_free (CamelTcpAddress *address); +struct sockaddr *camel_tcp_stream_get_local_address (CamelTcpStream *stream, socklen_t *len); +struct sockaddr *camel_tcp_stream_get_remote_address (CamelTcpStream *stream, socklen_t *len); #ifdef __cplusplus } |