00001 /* 00002 The oSIP library implements the Session Initiation Protocol (SIP -rfc3261-) 00003 Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Lesser General Public 00007 License as published by the Free Software Foundation; either 00008 version 2.1 of the License, or (at your option) any later version. 00009 00010 This library is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 Lesser General Public License for more details. 00014 00015 You should have received a copy of the GNU Lesser General Public 00016 License along with this library; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 */ 00019 00020 00021 #ifndef _OSIP_CONTACT_H_ 00022 #define _OSIP_CONTACT_H_ 00023 00024 #include <osipparser2/headers/osip_from.h> 00025 00041 typedef osip_from_t osip_contact_t; 00042 00043 #ifdef __cplusplus 00044 extern "C" 00045 { 00046 #endif 00047 00052 int osip_contact_init (osip_contact_t ** header); 00057 void osip_contact_free (osip_contact_t * header); 00063 int osip_contact_parse (osip_contact_t * header, const char *hvalue); 00069 int osip_contact_to_str (const osip_contact_t * header, char **dest); 00075 int osip_contact_clone (const osip_contact_t * header, osip_contact_t ** dest); 00080 #define osip_contact_get_displayname(header) osip_from_get_displayname((osip_from_t*)header) 00081 00086 #define osip_contact_set_displayname(header,value) osip_from_set_displayname((osip_from_t*)header, value) 00087 00091 #define osip_contact_get_url(header) osip_from_get_url((osip_from_t*)header) 00092 00097 #define osip_contact_set_url(header,url) osip_from_set_url((osip_from_t*)header,url) 00098 00104 #define osip_contact_param_get(header,pos,dest) osip_from_param_get((osip_from_t*)header,pos,dest) 00105 00111 #define osip_contact_param_add(header,name, value) osip_generic_param_add((header)->gen_params, name,value) 00112 00118 #define osip_contact_param_get_byname(header,name,dest) osip_generic_param_get_byname((header)->gen_params,name,dest) 00119 00120 00121 #ifdef __cplusplus 00122 } 00123 #endif 00124 00127 #endif