
2001-02-12 Not Zed <NotZed@Ximian.com> * camel-mime-part.c (init_header_name_table): Add address headers to list that we dont fold when writing. The are properly formatted as we build them. (write_to_stream): DOH, lookup the header name in the formatted hash table, not the value, that would never have worked. * camel-internet-address.c (camel_internet_address_encode_address): Changed to take a parameter saying how much we've printed so far. We now fold the header as we format it. We dont fold addresses, even if they are too long, we simply put them on another line by themselves: this should make the result more parsable by mailers that can't handle split up addresses (which are legal). (internet_encode): Fix for changes to above. svn path=/trunk/; revision=8198
56 lines
2.3 KiB
C
56 lines
2.3 KiB
C
/*
|
|
* Copyright (C) 2000 Helix Code Inc.
|
|
*
|
|
* Authors: Michael Zucchi <notzed@helixcode.com>
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Library General Public License
|
|
* as published by the Free Software Foundation; either version 2 of
|
|
* the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Library General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Library General Public
|
|
* License along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
*/
|
|
|
|
#ifndef _CAMEL_INTERNET_ADDRESS_H
|
|
#define _CAMEL_INTERNET_ADDRESS_H
|
|
|
|
#include <camel/camel-address.h>
|
|
|
|
#define CAMEL_INTERNET_ADDRESS(obj) CAMEL_CHECK_CAST (obj, camel_internet_address_get_type (), CamelInternetAddress)
|
|
#define CAMEL_INTERNET_ADDRESS_CLASS(klass) CAMEL_CHECK_CLASS_CAST (klass, camel_internet_address_get_type (), CamelInternetAddressClass)
|
|
#define CAMEL_IS_INTERNET_ADDRESS(obj) CAMEL_CHECK_TYPE (obj, camel_internet_address_get_type ())
|
|
|
|
typedef struct _CamelInternetAddressClass CamelInternetAddressClass;
|
|
|
|
struct _CamelInternetAddress {
|
|
CamelAddress parent;
|
|
|
|
struct _CamelInternetAddressPrivate *priv;
|
|
};
|
|
|
|
struct _CamelInternetAddressClass {
|
|
CamelAddressClass parent_class;
|
|
};
|
|
|
|
guint camel_internet_address_get_type (void);
|
|
CamelInternetAddress *camel_internet_address_new (void);
|
|
|
|
int camel_internet_address_add (CamelInternetAddress *, const char *, const char *);
|
|
gboolean camel_internet_address_get (const CamelInternetAddress *, int, const char **, const char **);
|
|
|
|
int camel_internet_address_find_name(CamelInternetAddress *, const char *, const char **);
|
|
int camel_internet_address_find_address(CamelInternetAddress *, const char *, const char **);
|
|
|
|
/* utility functions, for network/display formatting */
|
|
char * camel_internet_address_encode_address(int *len, const char *name, const char *addr);
|
|
char * camel_internet_address_format_address(const char *real, const char *addr);
|
|
|
|
#endif /* ! _CAMEL_INTERNET_ADDRESS_H */
|