osip.h   osip.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_accept.h   osip_accept.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 56 skipping to change at line 56
/** /**
* Allocate an Accept element. * Allocate an Accept element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define accept_init(header) osip_content_type_init(header) #define accept_init(header) osip_content_type_init(header)
/** /**
* Free an Accept element. * Free an Accept element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_accept_free(header) osip_content_type_free(header) #define osip_accept_free osip_content_type_free
/** /**
* Parse an Accept element. * Parse an Accept element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_accept_parse(header, hvalue) osip_content_type_parse(header, h value) #define osip_accept_parse(header, hvalue) osip_content_type_parse(header, h value)
/** /**
* Get a string representation of an Accept element. * Get a string representation of an Accept element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_accept_encoding.h   osip_accept_encoding.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_accept_language.h   osip_accept_language.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 63 skipping to change at line 63
* Parse an Accept-Language element. * Parse an Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_accept_language_parse(header, hvalue) osip_accept_encoding_pa rse(header, hvalue) #define osip_accept_language_parse(header, hvalue) osip_accept_encoding_pa rse(header, hvalue)
/** /**
* Get a string representation of an Accept-Language element. * Get a string representation of an Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_accept_language_to_str(header, dest) osip_accept_encoding_to_ str(header, dest) #define osip_accept_language_to_str osip_accept_encoding_to_str
/** /**
* Free an Accept-Language element. * Free an Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_accept_language_free(header) osip_accept_encoding_free(he ader) #define osip_accept_language_free osip_accept_encoding_free
/** /**
* Clone an Accept-Language element. * Clone an Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_accept_language_clone(header, dest) osip_accept_encoding_clone (header, dest) #define osip_accept_language_clone(header, dest) osip_accept_encoding_clone (header, dest)
/** /**
* Get the value of an Accept-Language element. * Get the value of an Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_alert_info.h   osip_alert_info.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 56 skipping to change at line 56
/** /**
* Allocate a Alert-Info element. * Allocate a Alert-Info element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_alert_info_init(header) osip_call_info_init(header) #define osip_alert_info_init(header) osip_call_info_init(header)
/** /**
* Free a Alert-Info element. * Free a Alert-Info element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_alert_info_free(header) osip_call_info_free(header) #define osip_alert_info_free osip_call_info_free
/** /**
* Parse a Alert-Info element. * Parse a Alert-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_alert_info_parse(header, hvalue) osip_call_info_parse(header , hvalue) #define osip_alert_info_parse(header, hvalue) osip_call_info_parse(header , hvalue)
/** /**
* Get a string representation of a Alert-Info element. * Get a string representation of a Alert-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_allow.h   osip_allow.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 63 skipping to change at line 63
* Parse a Allow element. * Parse a Allow element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_allow_parse(header, hvalue) osip_content_length_parse(header, hvalue) #define osip_allow_parse(header, hvalue) osip_content_length_parse(header, hvalue)
/** /**
* Get a string representation of a Allow element. * Get a string representation of a Allow element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_allow_to_str(header, dest) osip_content_length_to_str(header, dest) #define osip_allow_to_str osip_content_length_to_str
/** /**
* Free a Allow element. * Free a Allow element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_allow_free(header) osip_content_length_free(header) #define osip_allow_free osip_content_length_free
/** /**
* Clone a Allow element. * Clone a Allow element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_allow_clone(header, dest) osip_content_length_clone(header, d est) #define osip_allow_clone(header, dest) osip_content_length_clone(header, d est)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_authentication_info.h   osip_authentication_info.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_authorization.h   osip_authorization.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_body.h   osip_body.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_call_id.h   osip_call_id.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_call_info.h   osip_call_info.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_condv.h   osip_condv.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_const.h   osip_const.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_contact.h   osip_contact.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 47 skipping to change at line 47
* Structure for Contact headers. * Structure for Contact headers.
* @var osip_contact_t * @var osip_contact_t
*/ */
typedef osip_from_t osip_contact_t; typedef osip_from_t osip_contact_t;
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
#ifndef MINISIZE
/** /**
* Allocate a Contact element. * Allocate a Contact element.
* @param header The element to work on. * @param header The element to work on.
*/ */
int osip_contact_init (osip_contact_t ** header); int osip_contact_init (osip_contact_t ** header);
/** /**
* Free a Contact element. * Free a Contact element.
* @param header The element to work on. * @param header The element to work on.
*/ */
void osip_contact_free (osip_contact_t * header); void osip_contact_free (osip_contact_t * header);
#endif
/** /**
* Parse a Contact element. * Parse a Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
int osip_contact_parse (osip_contact_t * header, const char *hvalue); int osip_contact_parse (osip_contact_t * header, const char *hvalue);
/** /**
* Get a string representation of a Contact element. * Get a string representation of a Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
int osip_contact_to_str (const osip_contact_t * header, char **dest); int osip_contact_to_str (const osip_contact_t * header, char **dest);
#ifndef MINISIZE
/** /**
* Clone a Contact element. * Clone a Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
int osip_contact_clone (const osip_contact_t * header, osip_contact_t ** dest); int osip_contact_clone (const osip_contact_t * header, osip_contact_t ** dest);
#else
#define osip_contact_init osip_from_init
#define osip_contact_free osip_from_free
#define osip_contact_clone osip_from_clone
#endif
/** /**
* Get the displayname from a Contact header. * Get the displayname from a Contact header.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_contact_get_displayname(header) osip_from_get_displayname((osi p_from_t*)header) #define osip_contact_get_displayname(header) osip_from_get_displayname((osi p_from_t*)header)
/** /**
* Set the displayname in the Contact element. * Set the displayname in the Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param value The value of the element. * @param value The value of the element.
*/ */
 End of changes. 5 change blocks. 
1 lines changed or deleted 9 lines changed or added


 osip_content_disposition.h   osip_content_disposition.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_content_encoding.h   osip_content_encoding.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 63 skipping to change at line 63
* Parse a Content-Encoding element. * Parse a Content-Encoding element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_content_encoding_parse(header, hvalue) osip_content_length_pa rse(header, hvalue) #define osip_content_encoding_parse(header, hvalue) osip_content_length_pa rse(header, hvalue)
/** /**
* Get a string representation of a Content-Encoding element. * Get a string representation of a Content-Encoding element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_content_encoding_to_str(header, dest) osip_content_length_to_ str(header, dest) #define osip_content_encoding_to_str osip_content_length_to_str
/** /**
* Free a Content-Encoding element. * Free a Content-Encoding element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_content_encoding_free(header) osip_content_length_free(he ader) #define osip_content_encoding_free osip_content_length_free
/** /**
* Clone a Content-Encoding element. * Clone a Content-Encoding element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_content_encoding_clone(header, dest) osip_content_length_clon e(header, dest) #define osip_content_encoding_clone(header, dest) osip_content_length_clon e(header, dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_content_length.h   osip_content_length.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_content_type.h   osip_content_type.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_cseq.h   osip_cseq.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_dialog.h   osip_dialog.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_error_info.h   osip_error_info.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 56 skipping to change at line 56
/** /**
* Allocate a Error-Info element. * Allocate a Error-Info element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_error_info_init(header) osip_call_info_init(header) #define osip_error_info_init(header) osip_call_info_init(header)
/** /**
* Free a Error-Info element. * Free a Error-Info element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_error_info_free(header) osip_call_info_free(header) #define osip_error_info_free osip_call_info_free
/** /**
* Parse a Error-Info element. * Parse a Error-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param hvalue The string to parse. * @param hvalue The string to parse.
*/ */
#define osip_error_info_parse(header, hvalue) osip_call_info_parse(header , hvalue) #define osip_error_info_parse(header, hvalue) osip_call_info_parse(header , hvalue)
/** /**
* Get a string representation of a Error-Info element. * Get a string representation of a Error-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_fifo.h   osip_fifo.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 51 skipping to change at line 51
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
#ifndef DOXYGEN #ifndef DOXYGEN
#define MAX_LEN 1000 #define MAX_LEN 1000
typedef enum typedef enum
{ ok, plein, vide } { osip_ok, osip_full, osip_empty }
osip_fifo_etat; osip_fifo_state;
#endif #endif
/** /**
* Structure for referencing a fifo. * Structure for referencing a fifo.
* @var osip_fifo_t * @var osip_fifo_t
*/ */
typedef struct osip_fifo osip_fifo_t; typedef struct osip_fifo osip_fifo_t;
/** /**
skipping to change at line 74 skipping to change at line 74
* @struct osip_fifo * @struct osip_fifo
*/ */
struct osip_fifo struct osip_fifo
{ {
#ifdef OSIP_MT #ifdef OSIP_MT
struct osip_mutex *qislocked; /**@internal */ struct osip_mutex *qislocked; /**@internal */
struct osip_sem *qisempty; /**@internal */ struct osip_sem *qisempty; /**@internal */
#endif #endif
osip_list_t queue; /**< list of nodes containing elements * / osip_list_t queue; /**< list of nodes containing elements * /
int nb_elt; /**< nb of elements */ int nb_elt; /**< nb of elements */
osip_fifo_etat etat; /**@internal state of the fifo */ osip_fifo_state state; /**@internal state of the fifo */
}; };
/** /**
* Initialise a osip_fifo_t element. * Initialise a osip_fifo_t element.
* NOTE: this element MUST be previously allocated with * NOTE: this element MUST be previously allocated with
* osip_malloc(). The osip_free() call on the fifo is * osip_malloc(). The osip_free() call on the fifo is
* still automatically done by osip_fifo_free(). This * still automatically done by osip_fifo_free(). This
* also means you can't use a static osip_fifo_t variable * also means you can't use a static osip_fifo_t variable
* if you want to use osip_fifo_free(). * if you want to use osip_fifo_free().
* @param ff The element to initialise. * @param ff The element to initialise.
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 osip_from.h   osip_from.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_header.h   osip_header.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_headers.h   osip_headers.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_list.h   osip_list.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 114 skipping to change at line 114
*/ */
int osip_list_init (osip_list_t * li); int osip_list_init (osip_list_t * li);
/** /**
* Free a list of element. * Free a list of element.
* Each element will be free with the method given as the second parameter. * Each element will be free with the method given as the second parameter.
* @param li The element to work on. * @param li The element to work on.
* @param free_func The method that is able to release one element of the l ist. * @param free_func The method that is able to release one element of the l ist.
*/ */
void osip_list_special_free (osip_list_t * li, void *(*free_func) (void * )); void osip_list_special_free (osip_list_t * li, void *(*free_func) (void * ));
/** /**
* Clone a list of element.
* Each element will be cloned with the method given as the second paramete
r.
* @param src The element to work on.
* @param dst The element to work on.
* @param clone_func The method that is able to release one element of the
list.
*/
int osip_list_clone (const osip_list_t * src, osip_list_t * dst, int *(*c
lone_func) (void *, void *));
/**
* Free a list of element where elements are pointer to 'char'. * Free a list of element where elements are pointer to 'char'.
* @param li The element to work on. * @param li The element to work on.
*/ */
void osip_list_ofchar_free (osip_list_t * li); void osip_list_ofchar_free (osip_list_t * li);
/** /**
* Get the size of a list of element. * Get the size of a list of element.
* @param li The element to work on. * @param li The element to work on.
*/ */
int osip_list_size (const osip_list_t * li); int osip_list_size (const osip_list_t * li);
/** /**
 End of changes. 2 change blocks. 
1 lines changed or deleted 12 lines changed or added


 osip_message.h   osip_message.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 64 skipping to change at line 64
*/ */
struct osip_message struct osip_message
{ {
char *sip_version; /**< SIP version (SIP request only) * / char *sip_version; /**< SIP version (SIP request only) * /
osip_uri_t *req_uri; /**< Request-Uri (SIP request only) * / osip_uri_t *req_uri; /**< Request-Uri (SIP request only) * /
char *sip_method; /**< METHOD (SIP request only) */ char *sip_method; /**< METHOD (SIP request only) */
int status_code; /**< Status Code (SIP answer only) */ int status_code; /**< Status Code (SIP answer only) */
char *reason_phrase; /**< Reason Phrase (SIP answer only) */ char *reason_phrase; /**< Reason Phrase (SIP answer only) */
#ifndef MINISIZE
osip_list_t accepts; /**< Accept headers */ osip_list_t accepts; /**< Accept headers */
osip_list_t accept_encodings; /**< Accept-Encoding headers */ osip_list_t accept_encodings; /**< Accept-Encoding headers */
osip_list_t accept_languages; /**< Accept-Language headers */ osip_list_t accept_languages; /**< Accept-Language headers */
osip_list_t alert_infos; /**< Alert-Info headers */ osip_list_t alert_infos; /**< Alert-Info headers */
osip_list_t allows; /**< Allows headers */ osip_list_t allows; /**< Allows headers */
osip_list_t authentication_infos;/**< authentication_info headers */ osip_list_t authentication_infos;/**< authentication_info headers */
#endif
osip_list_t authorizations; /**< Authorizations headers */ osip_list_t authorizations; /**< Authorizations headers */
osip_call_id_t *call_id; /**< Call-ID header */ osip_call_id_t *call_id; /**< Call-ID header */
#ifndef MINISIZE
osip_list_t call_infos; /**< Call-Infos header */ osip_list_t call_infos; /**< Call-Infos header */
#endif
osip_list_t contacts; /**< Contacts headers */ osip_list_t contacts; /**< Contacts headers */
#ifndef MINISIZE
osip_list_t content_encodings; /**< Content-Encodings headers */ osip_list_t content_encodings; /**< Content-Encodings headers */
#endif
osip_content_length_t *content_length; /**< Content-Length header */ osip_content_length_t *content_length; /**< Content-Length header */
osip_content_type_t *content_type; /**< Content-Type header */ osip_content_type_t *content_type; /**< Content-Type header */
osip_cseq_t *cseq; /**< CSeq header */ osip_cseq_t *cseq; /**< CSeq header */
#ifndef MINISIZE
osip_list_t error_infos; /**< Error-Info headers */ osip_list_t error_infos; /**< Error-Info headers */
#endif
osip_from_t *from; /**< From header */ osip_from_t *from; /**< From header */
osip_mime_version_t *mime_version;/**< Mime-Version header */ osip_mime_version_t *mime_version;/**< Mime-Version header */
osip_list_t proxy_authenticates; /**< Proxy-Authenticate headers */ osip_list_t proxy_authenticates; /**< Proxy-Authenticate headers */
#ifndef MINISIZE
osip_list_t proxy_authentication_infos; /**< P-Authentication-Info head ers */ osip_list_t proxy_authentication_infos; /**< P-Authentication-Info head ers */
#endif
osip_list_t proxy_authorizations;/**< Proxy-authorization headers */ osip_list_t proxy_authorizations;/**< Proxy-authorization headers */
osip_list_t record_routes; /**< Record-Route headers */ osip_list_t record_routes; /**< Record-Route headers */
osip_list_t routes; /**< Route headers */ osip_list_t routes; /**< Route headers */
osip_to_t *to; /**< To header */ osip_to_t *to; /**< To header */
osip_list_t vias; /**< Vias headers */ osip_list_t vias; /**< Vias headers */
osip_list_t www_authenticates; /**< WWW-Authenticate headers */ osip_list_t www_authenticates; /**< WWW-Authenticate headers */
osip_list_t headers; /**< Other headers */ osip_list_t headers; /**< Other headers */
osip_list_t bodies; /**< List of attachements */ osip_list_t bodies; /**< List of attachements */
skipping to change at line 399 skipping to change at line 409
* @param GP The element to work on. * @param GP The element to work on.
* @param NAME The token name. * @param NAME The token name.
* @param VALUE The token value. * @param VALUE The token value.
*/ */
#define osip_generic_param_set(GP, NAME, VALUE) osip_uri_param_set(GP, NAM E, VALUE) #define osip_generic_param_set(GP, NAME, VALUE) osip_uri_param_set(GP, NAM E, VALUE)
/** /**
* Clone a generic parameter element. * Clone a generic parameter element.
* @param GP The element to work on. * @param GP The element to work on.
* @param DEST The resulting new allocated buffer. * @param DEST The resulting new allocated buffer.
*/ */
#define osip_generic_param_clone(GP,DEST) osip_uri_param_clone(GP,DEST) #define osip_generic_param_clone osip_uri_param_clone
#ifndef DOXYGEN #ifndef DOXYGEN
/* /*
* Free a list of a generic parameter element. * Free a list of a generic parameter element.
* @param LIST The list of generic parameter element to free. * @param LIST The list of generic parameter element to free.
*/ */
#define osip_generic_param_freelist(LIST) osip_uri_param_freelist(LIS T) #define osip_generic_param_freelist(LIST) osip_uri_param_freelist(LIS T)
#endif #endif
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param LIST The list of generic parameter element to work on. * @param LIST The list of generic parameter element to work on.
skipping to change at line 447 skipping to change at line 457
* @param value the token name to set. * @param value the token name to set.
*/ */
void osip_generic_param_set_value (osip_generic_param_t * generic_param, void osip_generic_param_set_value (osip_generic_param_t * generic_param,
char *value); char *value);
/** /**
* Get the value of a generic parameter element. * Get the value of a generic parameter element.
* @param generic_param The element to work on. * @param generic_param The element to work on.
*/ */
char *osip_generic_param_get_value (const osip_generic_param_t * generic_ param); char *osip_generic_param_get_value (const osip_generic_param_t * generic_ param);
/**
* Get the a known header from a list of known header.
* @param header_list The element to work on.
* @param pos The index of the element to get.
* @param dest A pointer on the header found.
*/
int osip_message_get_knownheaderlist (osip_list_t *header_list,
int pos,
void **dest);
/** @} */ /** @} */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif #endif
 End of changes. 13 change blocks. 
2 lines changed or deleted 22 lines changed or added


 osip_mime_version.h   osip_mime_version.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_mt.h   osip_mt.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_parser.h   osip_parser.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 83 skipping to change at line 83
* Get the usual reason phrase as defined in SIP for a specific status code . * Get the usual reason phrase as defined in SIP for a specific status code .
* @param status_code A status code. * @param status_code A status code.
*/ */
const char *osip_message_get_reason (int status_code); const char *osip_message_get_reason (int status_code);
/** /**
* Set the Accept header. * Set the Accept header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_accept (osip_message_t * sip, const char *hvalue); int osip_message_set_accept (osip_message_t * sip, const char *hvalue);
#else
#define osip_message_set_accept(sip,value) osip_message_set_head
er((osip_message_t *)sip,(const char *)"Accept",value)
#endif
/** /**
* Get one Accept header. * Get one Accept header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_accept (const osip_message_t * sip, int pos, int osip_message_get_accept (const osip_message_t * sip, int pos,
osip_accept_t ** dest); osip_accept_t ** dest);
#else
#define osip_message_get_accept(sip,pos,dest) osip_message_header_
get_byname(( osip_message_t *)sip,(const char *)"accept",pos,(osip_header_t
**)dest)
#endif
/** /**
* Set the Accept-encoding header. * Set the Accept-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_accept_encoding (osip_message_t * sip, const char *h value); int osip_message_set_accept_encoding (osip_message_t * sip, const char *h value);
#else
#define osip_message_set_accept_encoding(sip,value) osip_message
_set_header((osip_message_t *)sip,(const char *)"Accept-Encoding",value)
#endif
/** /**
* Get one Accept-encoding header. * Get one Accept-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_accept_encoding (const osip_message_t * sip, int pos , int osip_message_get_accept_encoding (const osip_message_t * sip, int pos ,
osip_accept_encoding_t ** dest); osip_accept_encoding_t ** dest);
#else
#define osip_message_get_accept_encoding(sip,pos,dest) osip_messag
e_header_get_byname(( osip_message_t *)sip,(const char *)"accept-encoding",
pos,(osip_header_t **)dest)
#endif
/** /**
* Set the Accept-language header. * Set the Accept-language header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_accept_language (osip_message_t * sip, const char *h value); int osip_message_set_accept_language (osip_message_t * sip, const char *h value);
#else
#define osip_message_set_accept_language(sip,value) osip_message
_set_header((osip_message_t *)sip,(const char *)"Accept-Language",value)
#endif
/** /**
* Get one Accept header. * Get one Accept-Language header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_accept_language (const osip_message_t * sip, int pos , int osip_message_get_accept_language (const osip_message_t * sip, int pos ,
osip_accept_language_t ** dest); osip_accept_language_t ** dest);
#else
#define osip_message_get_accept_language(sip,pos,dest) osip_messag
e_header_get_byname(( osip_message_t *)sip,(const char *)"accept-language",
pos,(osip_header_t **)dest)
#endif
/** /**
* Set the Alert-info header. * Set the Alert-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_alert_info (osip_message_t * sip, const char *hvalue ); int osip_message_set_alert_info (osip_message_t * sip, const char *hvalue );
#else
#define osip_message_set_alert_info(sip,value) osip_message_set_
header((osip_message_t *)sip,(const char *)"Alert-Info",value)
#endif
/** /**
* Get one Alert-info header. * Get one Alert-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_alert_info (const osip_message_t * sip, int pos, int osip_message_get_alert_info (const osip_message_t * sip, int pos,
osip_alert_info_t ** dest); osip_alert_info_t ** dest);
#else
#define osip_message_get_alert_info(sip,pos,dest) osip_message_hea
der_get_byname(( osip_message_t *)sip,(const char *)"alert-info",pos,(osip_
header_t **)dest)
#endif
/** /**
* Set the Allow header. * Set the Allow header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_allow (osip_message_t * sip, const char *hvalue); int osip_message_set_allow (osip_message_t * sip, const char *hvalue);
#else
#define osip_message_set_allow(sip,value) osip_message_set_heade
r((osip_message_t *)sip,(const char *)"Allow",value)
#endif
/** /**
* Get one Allow header. * Get one Allow header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_allow (const osip_message_t * sip, int pos, int osip_message_get_allow (const osip_message_t * sip, int pos,
osip_allow_t ** dest); osip_allow_t ** dest);
#else
#define osip_message_get_allow(sip,pos,dest) osip_message_header_g
et_byname(( osip_message_t *)sip,(const char *)"allow",pos,(osip_header_t *
*)dest)
#endif
/** /**
* Set the Authentication-info header. * Set the Authentication-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_authentication_info (osip_message_t * sip, int osip_message_set_authentication_info (osip_message_t * sip,
const char *hvalue); const char *hvalue);
#else
#define osip_message_set_authentication_info(sip,value) osip_mes
sage_set_header((osip_message_t *)sip,(const char *)"Authentication-Info",v
alue)
#endif
/** /**
* Get one Authentication-info header. * Get one Authentication-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_authentication_info (const osip_message_t * sip, int osip_message_get_authentication_info (const osip_message_t * sip,
int pos, int pos,
osip_authentication_info_t ** d est); osip_authentication_info_t ** d est);
#else
#define osip_message_get_authentication_info(sip,pos,dest) osip_me
ssage_header_get_byname(( osip_message_t *)sip,(const char *)"authenticatio
n-info",pos,(osip_header_t **)dest)
#endif
/** /**
* Set the Authorization header. * Set the Authorization header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_authorization (osip_message_t * sip, const char *hva lue); int osip_message_set_authorization (osip_message_t * sip, const char *hva lue);
/** /**
* Get one Authorization header. * Get one Authorization header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_authorization (const osip_message_t * sip, int pos, int osip_message_get_authorization (const osip_message_t * sip, int pos,
osip_authorization_t ** dest); osip_authorization_t ** dest);
#else
#define osip_message_get_authorization(sip, pos, dest) osip_message_get_kno
wnheaderlist((&(sip)->authorizations), pos, (void **)(dest))
#endif
/** /**
* Set the Call-id header. * Set the Call-id header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_call_id (osip_message_t * sip, const char *hvalue); int osip_message_set_call_id (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Call-id header. * Get one Call-id header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_call_id_t *osip_message_get_call_id (const osip_message_t * sip); osip_call_id_t *osip_message_get_call_id (const osip_message_t * sip);
#else
#define osip_message_get_call_id(sip) ((sip)->call_id)
#endif
/** /**
* Set the Call-info header. * Set the Call-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_call_info (osip_message_t * sip, const char *hvalue) ; int osip_message_set_call_info (osip_message_t * sip, const char *hvalue) ;
#else
#define osip_message_set_call_info(sip,value) osip_message_set_h
eader((osip_message_t *)sip,(const char *)"Call-Info",value)
#endif
/** /**
* Get one Call-info header. * Get one Call-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_call_info (const osip_message_t * sip, int pos, int osip_message_get_call_info (const osip_message_t * sip, int pos,
osip_call_info_t ** dest); osip_call_info_t ** dest);
#else
#define osip_message_get_call_info(sip,pos,dest) osip_message_head
er_get_byname(( osip_message_t *)sip,(const char *)"call-info",pos,(osip_he
ader_t **)dest)
#endif
/** /**
* Set the Contact header. * Set the Contact header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_contact (osip_message_t * sip, const char *hvalue); int osip_message_set_contact (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Contact header. * Get one Contact header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_contact (const osip_message_t * sip, int pos, int osip_message_get_contact (const osip_message_t * sip, int pos,
osip_contact_t ** dest); osip_contact_t ** dest);
#else
#define osip_message_get_contact(sip, pos, dest) osip_message_get_knownhead
erlist((&(sip)->contacts), pos, (void **)(dest))
#endif
/** /**
* Set the Content-encoding header. * Set the Content-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_content_encoding (osip_message_t * sip, const char * hvalue); int osip_message_set_content_encoding (osip_message_t * sip, const char * hvalue);
#else
#define osip_message_set_content_encoding(sip,value) osip_messag
e_set_header((osip_message_t *)sip,(const char *)"Content-Encoding",value)
#endif
/** /**
* Get one Content-encoding header. * Get one Content-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_content_encoding (const osip_message_t * sip, int po s, int osip_message_get_content_encoding (const osip_message_t * sip, int po s,
osip_content_encoding_t ** dest); osip_content_encoding_t ** dest);
#else
#define osip_message_get_content_encoding(sip,pos,dest) osip_messa
ge_header_get_byname(( osip_message_t *)sip,(const char *)"content-encoding
",pos,(osip_header_t **)dest)
#endif
/** /**
* Set the Content-length header. * Set the Content-length header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_content_length (osip_message_t * sip, const char *hv alue); int osip_message_set_content_length (osip_message_t * sip, const char *hv alue);
/** /**
* Get one Content-length header. * Get one Content-length header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_content_length_t *osip_message_get_content_length (const osip_messag e_t osip_content_length_t *osip_message_get_content_length (const osip_messag e_t
* sip); * sip);
#else
#define osip_message_get_content_length(sip) ((sip)->content_length)
#endif
/** /**
* Set the Content-type header. * Set the Content-type header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_content_type (osip_message_t * sip, const char *hval ue); int osip_message_set_content_type (osip_message_t * sip, const char *hval ue);
/** /**
* Get one Content-type header. * Get one Content-type header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_content_type_t *osip_message_get_content_type (const osip_message_t * sip); osip_content_type_t *osip_message_get_content_type (const osip_message_t * sip);
#else
#define osip_message_get_content_type(sip) ((sip)->content_type)
#endif
/** /**
* Set the Cseq header. * Set the Cseq header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_cseq (osip_message_t * sip, const char *hvalue); int osip_message_set_cseq (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Cseq header. * Get one Cseq header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_cseq_t *osip_message_get_cseq (const osip_message_t * sip); osip_cseq_t *osip_message_get_cseq (const osip_message_t * sip);
#else
#define osip_message_get_cseq(sip) ((sip)->cseq)
#endif
/** /**
* Set the Error-info header. * Set the Error-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_error_info (osip_message_t * sip, const char *hvalue ); int osip_message_set_error_info (osip_message_t * sip, const char *hvalue );
#else
#define osip_message_set_error_info(sip,value) osip_message_set_
header((osip_message_t *)sip,(const char *)"Error-Info",value)
#endif
/** /**
* Get one Error-info header. * Get one Error-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_error_info (const osip_message_t * sip, int pos, int osip_message_get_error_info (const osip_message_t * sip, int pos,
osip_error_info_t ** dest); osip_error_info_t ** dest);
#else
#define osip_message_get_error_info(sip,pos,dest) osip_message_hea
der_get_byname(( osip_message_t *)sip,(const char *)"error-info",pos,(osip_
header_t **)dest)
#endif
/** /**
* Set the From header. * Set the From header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_from (osip_message_t * sip, const char *hvalue); int osip_message_set_from (osip_message_t * sip, const char *hvalue);
/** /**
* Get the From header. * Get the From header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_from_t *osip_message_get_from (const osip_message_t * sip); osip_from_t *osip_message_get_from (const osip_message_t * sip);
#else
#define osip_message_get_from(sip) ((sip)->from)
#endif
/** /**
* Set the mime-version header. * Set the mime-version header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_mime_version (osip_message_t * sip, const char *hval ue); int osip_message_set_mime_version (osip_message_t * sip, const char *hval ue);
/** /**
* Get the Mime-version header. * Get the Mime-version header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_mime_version_t *osip_message_get_mime_version (const osip_message_t * sip); osip_mime_version_t *osip_message_get_mime_version (const osip_message_t * sip);
#else
#define osip_message_get_mime_version(sip) ((sip)->mime_version)
#endif
/** /**
* Set the Proxy-authenticate header. * Set the Proxy-authenticate header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_proxy_authenticate (osip_message_t * sip, int osip_message_set_proxy_authenticate (osip_message_t * sip,
const char *hvalue); const char *hvalue);
/** /**
* Get the Proxy-authenticate header. * Get the Proxy-authenticate header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_proxy_authenticate (const osip_message_t * sip, int osip_message_get_proxy_authenticate (const osip_message_t * sip,
int pos, int pos,
osip_proxy_authenticate_t ** des t); osip_proxy_authenticate_t ** des t);
#else
#define osip_message_get_proxy_authenticate(sip, pos, dest) osip_message_ge
t_knownheaderlist((&(sip)->proxy_authenticates), pos, (void **)(dest))
#endif
/** /**
* Set the Proxy-authorization header. * Set the Proxy-authorization header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_proxy_authorization (osip_message_t * sip, int osip_message_set_proxy_authorization (osip_message_t * sip,
const char *hvalue); const char *hvalue);
/** /**
* Get one Proxy-authorization header. * Get one Proxy-authorization header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_proxy_authorization (const osip_message_t * sip, int osip_message_get_proxy_authorization (const osip_message_t * sip,
int pos, int pos,
osip_proxy_authorization_t ** d est); osip_proxy_authorization_t ** d est);
#else
#define osip_message_get_proxy_authorization(sip, pos, dest) osip_message_g
et_knownheaderlist((&(sip)->proxy_authorizations), pos, (void **)(dest))
#endif
/** /**
* Set the Proxy-authentication-info header. * Set the Proxy-authentication-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
#ifndef MINISIZE
int osip_message_set_proxy_authentication_info (osip_message_t * sip, int osip_message_set_proxy_authentication_info (osip_message_t * sip,
const char *hvalue); const char *hvalue);
#else
#define osip_message_set_proxy_authentication_info(sip,value) os
ip_message_set_header((osip_message_t *)sip,(const char *)"Proxy-Authentica
tion-Info",value)
#endif
/** /**
* Get the Proxy-authentication-info header. * Get the Proxy-authentication-info header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_proxy_authentication_info (const osip_message_t * si p, int osip_message_get_proxy_authentication_info (const osip_message_t * si p,
int pos, int pos,
osip_proxy_authentication _info_t osip_proxy_authentication _info_t
** dest); ** dest);
#else
#define osip_message_get_proxy_authentication_info(sip,pos,dest) o
sip_message_header_get_byname(( osip_message_t *)sip,(const char *)"proxy-a
uthentication-info",pos,(osip_header_t **)dest)
#endif
/** /**
* Set the Record-Route header. * Set the Record-Route header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_record_route (osip_message_t * sip, const char *hval ue); int osip_message_set_record_route (osip_message_t * sip, const char *hval ue);
/** /**
* Get one Record-route header. * Get one Record-route header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_record_route (const osip_message_t * sip, int pos, int osip_message_get_record_route (const osip_message_t * sip, int pos,
osip_record_route_t ** dest); osip_record_route_t ** dest);
#else
#define osip_message_get_record_route(sip, pos, dest) osip_message_get_know
nheaderlist((&(sip)->record_routes), pos, (void **)(dest))
#endif
/** /**
* Set the Route header. * Set the Route header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_route (osip_message_t * sip, const char *hvalue); int osip_message_set_route (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Route header. * Get one Route header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_route (const osip_message_t * sip, int pos, int osip_message_get_route (const osip_message_t * sip, int pos,
osip_route_t ** dest); osip_route_t ** dest);
#else
#define osip_message_get_route(sip, pos, dest) osip_message_get_knownheader
list((&(sip)->routes), pos, (void **)(dest))
#endif
/** /**
* Set the To header. * Set the To header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_to (osip_message_t * sip, const char *hvalue); int osip_message_set_to (osip_message_t * sip, const char *hvalue);
/** /**
* Get the To header. * Get the To header.
* @param sip The element to work on. * @param sip The element to work on.
*/ */
#ifndef MINISIZE
osip_to_t *osip_message_get_to (const osip_message_t * sip); osip_to_t *osip_message_get_to (const osip_message_t * sip);
#else
#define osip_message_get_to(sip) ((sip)->to)
#endif
/** /**
* Set the Via header. * Set the Via header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_via (osip_message_t * sip, const char *hvalue); int osip_message_set_via (osip_message_t * sip, const char *hvalue);
/** /**
* Append a Via header. * Append a Via header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_append_via (osip_message_t * sip, const char *hvalue); int osip_message_append_via (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Via header. * Get one Via header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_via (const osip_message_t * sip, int pos, int osip_message_get_via (const osip_message_t * sip, int pos,
osip_via_t ** dest); osip_via_t ** dest);
#else
#define osip_message_get_via(sip, pos, dest) osip_message_get_knownheaderli
st((&(sip)->vias), pos, (void **)(dest))
#endif
/** /**
* Set the Www-authenticate header. * Set the Www-authenticate header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_www_authenticate (osip_message_t * sip, const char * hvalue); int osip_message_set_www_authenticate (osip_message_t * sip, const char * hvalue);
/** /**
* Get one Www-authenticate header. * Get one Www-authenticate header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISIZE
int osip_message_get_www_authenticate (const osip_message_t * sip, int po s, int osip_message_get_www_authenticate (const osip_message_t * sip, int po s,
osip_www_authenticate_t ** dest); osip_www_authenticate_t ** dest);
#else
#define osip_message_get_www_authenticate(sip, pos, dest) osip_message_get_
knownheaderlist((&(sip)->www_authenticates), pos, (void **)(dest))
#endif
#ifndef DOXYGEN #ifndef DOXYGEN
/** /**
* Allocate and Add multiple header (not defined in oSIP). * Allocate and Add multiple header (not defined in oSIP).
* @param sip The element to work on. * @param sip The element to work on.
* @param hname The token name. NAME MUST BE DYNAMICLY ALLOCATED * @param hname The token name. NAME MUST BE DYNAMICLY ALLOCATED
* @param hvalue The token value. VALUE MUST BE DYNAMICLY ALLOCATED * @param hvalue The token value. VALUE MUST BE DYNAMICLY ALLOCATED
*/ */
int osip_message_set_multiple_header (osip_message_t * sip, char *hname, int osip_message_set_multiple_header (osip_message_t * sip, char *hname,
char *hvalue); char *hvalue);
#endif #endif
/** /**
* Allocate and Add an "unknown" header (not defined in oSIP). * Allocate and Add an "unknown" header (not defined in oSIP).
* @param sip The element to work on. * @param sip The element to work on.
* @param hname The token name. * @param hname The token name.
* @param hvalue The token value. * @param hvalue The token value.
*/ */
int osip_message_set_header (osip_message_t * sip, const char *hname, int osip_message_set_header (osip_message_t * sip, const char *hname,
const char *hvalue); const char *hvalue);
/** /**
* Allocate and Add/Replace an "unknown" header (not defined in oSIP).
* @param sip The element to work on.
* @param hname The token name.
* @param hvalue The token value.
*/
int osip_message_replace_header (osip_message_t * sip, const char *hname,
const char *hvalue);
#ifndef MINISIZE
/**
* Allocate and Add an "unknown" header (not defined in oSIP). * Allocate and Add an "unknown" header (not defined in oSIP).
* The element is add on the top of the unknown header list. * The element is add on the top of the unknown header list.
* @param sip The element to work on. * @param sip The element to work on.
* @param hname The token name. * @param hname The token name.
* @param hvalue The token value. * @param hvalue The token value.
*/ */
int osip_message_set_topheader (osip_message_t * sip, const char *hname, int osip_message_set_topheader (osip_message_t * sip, const char *hname,
const char *hvalue); const char *hvalue);
#endif
/** /**
* Find an "unknown" header. (not defined in oSIP) * Find an "unknown" header. (not defined in oSIP)
* @param sip The element to work on. * @param sip The element to work on.
* @param hname The name of the header to find. * @param hname The name of the header to find.
* @param pos The index where to start searching for the header. * @param pos The index where to start searching for the header.
* @param dest A pointer to the header found. * @param dest A pointer to the header found.
*/ */
int osip_message_header_get_byname (const osip_message_t * sip, int osip_message_header_get_byname (const osip_message_t * sip,
const char *hname, int pos, const char *hname, int pos,
osip_header_t ** dest); osip_header_t ** dest);
/** /**
* Get one "unknown" header. * Get one "unknown" header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
#ifndef MINISZE
int osip_message_get_header (const osip_message_t * sip, int pos, int osip_message_get_header (const osip_message_t * sip, int pos,
osip_header_t ** dest); osip_header_t ** dest);
#else
#define osip_message_get_header(sip, pos, dest) osip_message_get_knownheade
rlist((&(sip)->headers), pos, (void **)(dest))
#endif
/** /**
* Set the Body of the SIP message. * Set the Body of the SIP message.
* @param sip The element to work on. * @param sip The element to work on.
* @param buf The buffer containing the body. * @param buf The buffer containing the body.
* @param length The length of the buffer. * @param length The length of the buffer.
*/ */
int osip_message_set_body (osip_message_t * sip, const char *buf, size_t length); int osip_message_set_body (osip_message_t * sip, const char *buf, size_t length);
/** /**
* Set the Body of the SIP message. (please report bugs) * Set the Body of the SIP message. (please report bugs)
* @param sip The element to work on. * @param sip The element to work on.
skipping to change at line 491 skipping to change at line 643
* @param length The length of the buffer. * @param length The length of the buffer.
*/ */
int osip_message_set_body_mime (osip_message_t * sip, const char *buf, int osip_message_set_body_mime (osip_message_t * sip, const char *buf,
size_t length); size_t length);
/** /**
* Get one body header. * Get one body header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the body found. * @param dest A pointer on the body found.
*/ */
#ifndef MINISIZE
int osip_message_get_body (const osip_message_t * sip, int pos, int osip_message_get_body (const osip_message_t * sip, int pos,
osip_body_t ** dest); osip_body_t ** dest);
#else
#define osip_message_get_body(sip, pos, dest) osip_message_get_knownheaderl
ist((&(sip)->bodies), pos, (void **)(dest))
#endif
/* trace facilities */ /* trace facilities */
#ifndef DOXYGEN /* avoid DOXYGEN warning */ #ifndef DOXYGEN /* avoid DOXYGEN warning */
#ifdef ENABLE_TRACE #ifdef ENABLE_TRACE
void msg_logrequest (osip_message_t * sip, char *fmt); void msg_logrequest (osip_message_t * sip, char *fmt);
void msg_logresponse (osip_message_t * sip, char *fmt); void msg_logresponse (osip_message_t * sip, char *fmt);
#else #else
#define msg_logrequest(P,Q) ; #define msg_logrequest(P,Q) ;
#define msg_logresponse(P,Q) ; #define msg_logresponse(P,Q) ;
#endif #endif
 End of changes. 78 change blocks. 
4 lines changed or deleted 202 lines changed or added


 osip_port.h   osip_port.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 27 skipping to change at line 27
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _OSIP_PORT_H_ #ifndef _OSIP_PORT_H_
#define _OSIP_PORT_H_ #define _OSIP_PORT_H_
/* Include necessary headers for osip */ /* Include necessary headers for osip */
#include <stdio.h> #include <stdio.h>
#if defined(__arc__)
#include "includes_api.h"
#include "os_cfg_pub.h"
#include <posix_time_pub.h>
#endif
#if defined(__PALMOS__) && (__PALMOS__ >= 0x06000000) #if defined(__PALMOS__) && (__PALMOS__ >= 0x06000000)
# define STDC_HEADERS 1 # define STDC_HEADERS 1
# define HAVE_CTYPE_H 1 # define HAVE_CTYPE_H 1
# define HAVE_STRING_H 1 # define HAVE_STRING_H 1
# define HAVE_SYS_TYPES_H 1 # define HAVE_SYS_TYPES_H 1
# define HAVE_TIME_H 1 # define HAVE_TIME_H 1
# define HAVE_STDARG_H 1 # define HAVE_STDARG_H 1
#elif defined _WIN32_WCE #elif defined _WIN32_WCE
skipping to change at line 65 skipping to change at line 71
#define snprintf _snprintf #define snprintf _snprintf
/* use win32 crypto routines for random number generation */ /* use win32 crypto routines for random number generation */
/* only use for vs .net (compiler v. 1300) or greater */ /* only use for vs .net (compiler v. 1300) or greater */
#if _MSC_VER >= 1300 #if _MSC_VER >= 1300
#define WIN32_USE_CRYPTO 1 #define WIN32_USE_CRYPTO 1
#endif #endif
#endif #endif
#ifdef __VXWORKS_OS__ #if defined(__VXWORKS_OS__) || defined(__rtems__)
#include <string.h> #include <string.h>
#include <time.h> #include <time.h>
#include <sys/times.h> #include <sys/times.h>
#include <stdarg.h> #include <stdarg.h>
#include <sys/types.h> #include <sys/types.h>
#include <stdlib.h> #include <stdlib.h>
#define VA_START(a, f) va_start(a, f) #define VA_START(a, f) va_start(a, f)
#if defined(__VXWORKS_OS__)
/* VxWorks lacks support for snprintf */ /* VxWorks lacks support for snprintf */
int osip_vsnprintf (char *buf, int max, const char *fmt, va_list ap); int osip_vsnprintf (char *buf, int max, const char *fmt, va_list ap);
int osip_snprintf (char *buf, int max, const char *fmt, ...); int osip_snprintf (char *buf, int max, const char *fmt, ...);
#define snprintf osip_snprintf #define snprintf osip_snprintf
#define vsnprintf osip_vsnprintf #define vsnprintf osip_vsnprintf
#endif
#else /* end of __VXWORKS_OS__ */ #else /* end of __VXWORKS_OS__ */
#if defined (HAVE_CONFIG_H) #if defined (HAVE_CONFIG_H)
#include <config.h> #include <config.h>
# if defined (HAVE_STRING_H) # if defined (HAVE_STRING_H)
# include <string.h> # include <string.h>
# else # else
# include <strings.h> # include <strings.h>
# endif /* HAVE_STRING_H */ # endif /* HAVE_STRING_H */
#else #else
# include <string.h> # include <string.h>
#endif /* !HAVE_CONFIG_H */ #endif /* !HAVE_CONFIG_H */
#if defined (HAVE_SYS_TYPES_H) #if defined (HAVE_SYS_TYPES_H)
# include <sys/types.h> # include <sys/types.h>
#endif #endif
#if STDC_HEADERS #ifdef STDC_HEADERS
# include <stdlib.h> # include <stdlib.h>
#endif /* !STDC_HEADERS */ #endif /* !STDC_HEADERS */
#if defined(HAVE_STDARG_H) || defined(WIN32) #if defined(HAVE_STDARG_H) || defined(WIN32)
# include <stdarg.h> # include <stdarg.h>
# define VA_START(a, f) va_start(a, f) # define VA_START(a, f) va_start(a, f)
#else #else
# if defined(HAVE_VARARGS_H) # if defined(HAVE_VARARGS_H)
# include <varargs.h> # include <varargs.h>
# define VA_START(a, f) va_start(a) # define VA_START(a, f) va_start(a)
skipping to change at line 179 skipping to change at line 187
extern "C" extern "C"
{ {
#endif #endif
/**************************/ /**************************/
/* MALLOC redirections */ /* MALLOC redirections */
/**************************/ /**************************/
#if !defined(WIN32) && !defined(_WIN32_WCE) #if !defined(WIN32) && !defined(_WIN32_WCE)
#ifndef MINISIZE
typedef void *osip_malloc_func_t (size_t size); typedef void *osip_malloc_func_t (size_t size);
typedef void osip_free_func_t (void *ptr); typedef void osip_free_func_t (void *ptr);
typedef void *osip_realloc_func_t (void *ptr, size_t size); typedef void *osip_realloc_func_t (void *ptr, size_t size);
extern osip_malloc_func_t *osip_malloc_func; extern osip_malloc_func_t *osip_malloc_func;
extern osip_realloc_func_t *osip_realloc_func; extern osip_realloc_func_t *osip_realloc_func;
extern osip_free_func_t *osip_free_func; extern osip_free_func_t *osip_free_func;
void osip_set_allocators (osip_malloc_func_t * malloc_func, void osip_set_allocators (osip_malloc_func_t * malloc_func,
osip_realloc_func_t * realloc_func, osip_realloc_func_t * realloc_func,
osip_free_func_t * free_func); osip_free_func_t * free_func);
#endif
#ifdef DEBUG_MEM #ifdef DEBUG_MEM
void *_osip_malloc (size_t size, char *file, unsigned short line); void *_osip_malloc (size_t size, char *file, unsigned short line);
void _osip_free (void *ptr); void _osip_free (void *ptr);
void *_osip_realloc (void *ptr, size_t size, char *file, unsigned short l ine); void *_osip_realloc (void *ptr, size_t size, char *file, unsigned short l ine);
#ifndef osip_malloc #ifndef osip_malloc
#define osip_malloc(S) _osip_malloc(S,__FILE__,__LINE__) #define osip_malloc(S) _osip_malloc(S,__FILE__,__LINE__)
#endif #endif
#ifndef osip_realloc #ifndef osip_realloc
#define osip_realloc(P,S) _osip_realloc(P,S,__FILE__,__LINE__) #define osip_realloc(P,S) _osip_realloc(P,S,__FILE__,__LINE__)
#endif #endif
#ifndef osip_free #ifndef osip_free
#define osip_free(P) { if (P!=NULL) { _osip_free(P); } } #define osip_free(P) { if (P!=NULL) { _osip_free(P); } }
#endif #endif
#else #else
#ifndef MINISIZE
#ifndef osip_malloc #ifndef osip_malloc
#define osip_malloc(S) (osip_malloc_func?osip_malloc_func(S):malloc(S)) #define osip_malloc(S) (osip_malloc_func?osip_malloc_func(S):malloc(S))
#endif #endif
#ifndef osip_realloc #ifndef osip_realloc
#define osip_realloc(P,S) (osip_realloc_func?osip_realloc_func(P,S):realloc (P,S)) #define osip_realloc(P,S) (osip_realloc_func?osip_realloc_func(P,S):realloc (P,S))
#endif #endif
#ifndef osip_free #ifndef osip_free
#define osip_free(P) { if (P!=NULL) { if (osip_free_func) osip_free_func(P) ; else free(P);} } #define osip_free(P) { if (P!=NULL) { if (osip_free_func) osip_free_func(P) ; else free(P);} }
#endif #endif
#else
/* MINISIZE code */
#ifndef osip_malloc
#define osip_malloc(S) malloc(S)
#endif
#ifndef osip_realloc
#define osip_realloc(P,S) realloc(P,S)
#endif
#ifndef osip_free
#define osip_free(P) { if (P!=NULL) { free(P);} }
#endif
#endif
#endif #endif
#else #else
void *osip_malloc (size_t size); void *osip_malloc (size_t size);
void *osip_realloc (void *, size_t size); void *osip_realloc (void *, size_t size);
void osip_free (void *); void osip_free (void *);
#endif #endif
skipping to change at line 247 skipping to change at line 272
unsigned int osip_build_random_number (void); unsigned int osip_build_random_number (void);
/**************************/ /**************************/
/* TIMER support */ /* TIMER support */
/**************************/ /**************************/
#define SP " \0" #define SP " \0"
void osip_usleep (int useconds); void osip_usleep (int useconds);
#ifndef MINISIZE
int osip_atoi (const char *number);
int osip_strcasecmp (const char *s1, const char *s2);
int osip_strncasecmp (const char *s1, const char *s2, size_t len);
#else
#define osip_atoi atoi
#define osip_strcasecmp strcasecmp
#define osip_strncasecmp strncasecmp
#endif
/**************************/ /**************************/
/* STRING support */ /* STRING support */
/**************************/ /**************************/
int osip_atoi (const char *number);
char *osip_strncpy (char *dest, const char *src, size_t length); char *osip_strncpy (char *dest, const char *src, size_t length);
char *osip_strdup (const char *ch); char *osip_strdup (const char *ch);
char *osip_strdup_without_quote (const char *ch); char *osip_strdup_without_quote (const char *ch);
int osip_tolower (char *word); int osip_tolower (char *word);
int osip_clrspace (char *word); int osip_clrspace (char *word);
char *__osip_sdp_append_string (char *string, size_t size, char *__osip_sdp_append_string (char *string, size_t size,
char *cur, char *string_osip_to_append); char *cur, char *string_osip_to_append);
int __osip_set_next_token (char **dest, char *buf, int end_separator, int __osip_set_next_token (char **dest, char *buf, int end_separator,
char **next); char **next);
/* find the next unescaped quote and return its index. */ /* find the next unescaped quote and return its index. */
char *__osip_quote_find (const char *qstring); char *__osip_quote_find (const char *qstring);
char *osip_enquote (const char *s); char *osip_enquote (const char *s);
void osip_dequote (char *s); void osip_dequote (char *s);
int osip_strcasecmp (const char *s1, const char *s2);
int osip_strncasecmp (const char *s1, const char *s2, size_t len);
unsigned long osip_hash (const char *str); unsigned long osip_hash (const char *str);
char *osip_str_append (char *dst, const char *src); char *osip_str_append (char *dst, const char *src);
char *osip_strn_append (char *dst, const char *src, size_t len); char *osip_strn_append (char *dst, const char *src, size_t len);
char *osip_clrncpy (char *dst, const char *src, size_t len); char *osip_clrncpy (char *dst, const char *src, size_t len);
/**************************/ /**************************/
/* LOG&DEBUG support */ /* LOG&DEBUG support */
/**************************/ /**************************/
#define LOG_TRUE 1 #define LOG_TRUE 1
 End of changes. 13 change blocks. 
7 lines changed or deleted 38 lines changed or added


 osip_proxy_authenticate.h   osip_proxy_authenticate.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 68 skipping to change at line 68
/** /**
* Get a string representation of a Proxy-Authenticate element. * Get a string representation of a Proxy-Authenticate element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_proxy_authenticate_to_str(header, dest) osip_www_authenticate_ to_str(header, dest) #define osip_proxy_authenticate_to_str(header, dest) osip_www_authenticate_ to_str(header, dest)
/** /**
* Free a Proxy-Authenticate element. * Free a Proxy-Authenticate element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_proxy_authenticate_free(header) osip_www_authenticate_free (header) #define osip_proxy_authenticate_free osip_www_authenticate_free
/** /**
* Clone a Proxy-Authenticate element. * Clone a Proxy-Authenticate element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_proxy_authenticate_clone(header, dest) osip_www_authenticate_c lone(header, dest) #define osip_proxy_authenticate_clone osip_www_authenticate_clone
/** /**
* Get value of the auth_type parameter from a Proxy-Authenticate element. * Get value of the auth_type parameter from a Proxy-Authenticate element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_proxy_authenticate_get_auth_type(header) osip_www_authentica te_get_auth_type(header) #define osip_proxy_authenticate_get_auth_type(header) osip_www_authentica te_get_auth_type(header)
/** /**
* Add the auth_type parameter from a Proxy-Authenticate element. * Add the auth_type parameter from a Proxy-Authenticate element.
* @param header The element to work on. * @param header The element to work on.
* @param value The value of the new parameter. * @param value The value of the new parameter.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_proxy_authentication_info.h   osip_proxy_authentication_info.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or(at your option) any later version. version 2.1 of the License, or(at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 68 skipping to change at line 68
/** /**
* Get a string representation of a Authenication-Info element. * Get a string representation of a Authenication-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_proxy_authentication_info_to_str(header, dest) osip_authentica tion_info_to_str(header, dest) #define osip_proxy_authentication_info_to_str(header, dest) osip_authentica tion_info_to_str(header, dest)
/** /**
* Free a Authenication-Info element. * Free a Authenication-Info element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_proxy_authentication_info_free(header) osip_authentication_inf o_free(header) #define osip_proxy_authentication_info_free osip_authentication_info_free
/** /**
* Clone a Authenication-Info element. * Clone a Authenication-Info element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_proxy_authentication_info_clone(header, dest) osip_authenticat ion_info_clone(header, dest) #define osip_proxy_authentication_info_clone(header, dest) osip_authenticat ion_info_clone(header, dest)
/** /**
* Get value of the nextnonce parameter from a Authenication-Info element. * Get value of the nextnonce parameter from a Authenication-Info element.
* @param header The element to work on. * @param header The element to work on.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_proxy_authorization.h   osip_proxy_authorization.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 68 skipping to change at line 68
/** /**
* Get a string representation of a Proxy-Authorization element. * Get a string representation of a Proxy-Authorization element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
#define osip_proxy_authorization_to_str(header, dest) osip_authorization_to _str(header, dest) #define osip_proxy_authorization_to_str(header, dest) osip_authorization_to _str(header, dest)
/** /**
* Free a Proxy-Authorization element. * Free a Proxy-Authorization element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_proxy_authorization_free(header) osip_authorization_free(h eader) #define osip_proxy_authorization_free osip_authorization_free
/** /**
* Clone a Proxy-Authorization element. * Clone a Proxy-Authorization element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_proxy_authorization_clone(header, dest) osip_authorization_clo ne(header, dest) #define osip_proxy_authorization_clone osip_authorization_clone
/** /**
* Get value of the auth_type parameter from a Proxy-Authorization element. * Get value of the auth_type parameter from a Proxy-Authorization element.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_proxy_authorization_get_auth_type(header) osip_authorizatio n_get_auth_type(header) #define osip_proxy_authorization_get_auth_type(header) osip_authorizatio n_get_auth_type(header)
/** /**
* Add the auth_type parameter from a Proxy-Authorization element. * Add the auth_type parameter from a Proxy-Authorization element.
* @param header The element to work on. * @param header The element to work on.
* @param value The value of the new parameter. * @param value The value of the new parameter.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_record_route.h   osip_record_route.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 47 skipping to change at line 47
* Structure for Record-Route headers. * Structure for Record-Route headers.
* @var osip_record_route_t * @var osip_record_route_t
*/ */
typedef osip_from_t osip_record_route_t; typedef osip_from_t osip_record_route_t;
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
#ifndef MINISIZE
/** /**
* Allocate a Record-Route element. * Allocate a Record-Route element.
* @param header The element to work on. * @param header The element to work on.
*/ */
int osip_record_route_init (osip_record_route_t ** header); int osip_record_route_init (osip_record_route_t ** header);
/** /**
* Free a Record-Route element. * Free a Record-Route element.
* @param header The element to work on. * @param header The element to work on.
*/ */
void osip_record_route_free (osip_record_route_t * header); void osip_record_route_free (osip_record_route_t * header);
skipping to change at line 74 skipping to change at line 75
* Get a string representation of a Record-Route element. * Get a string representation of a Record-Route element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
int osip_record_route_to_str (const osip_record_route_t * header, char ** dest); int osip_record_route_to_str (const osip_record_route_t * header, char ** dest);
/** /**
* Clone a Record-Route element. * Clone a Record-Route element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_record_route_clone(header,dest) osip_from_clone(header,de #define osip_record_route_clone osip_from_clone
st) #else
#define osip_record_route_init osip_from_init
#define osip_record_route_free osip_from_free
#define osip_record_route_parse osip_from_parse
#define osip_record_route_to_str osip_from_to_str
#define osip_record_route_clone osip_from_clone
#endif
/** /**
* Set the url in the Record-Route element. * Set the url in the Record-Route element.
* @param header The element to work on. * @param header The element to work on.
* @param url The value of the element. * @param url The value of the element.
*/ */
#define osip_record_route_set_url(header,url) osip_from_set_url((osip_ from_t*)header,url) #define osip_record_route_set_url(header,url) osip_from_set_url((osip_ from_t*)header,url)
/** /**
* Get the url from a Record-Route header. * Get the url from a Record-Route header.
* @param header The element to work on. * @param header The element to work on.
*/ */
 End of changes. 3 change blocks. 
3 lines changed or deleted 10 lines changed or added


 osip_route.h   osip_route.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 47 skipping to change at line 47
* Structure for Route headers. * Structure for Route headers.
* @var osip_route_t * @var osip_route_t
*/ */
typedef osip_from_t osip_route_t; typedef osip_from_t osip_route_t;
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
#ifndef MINISIZE
/** /**
* Allocate a Route element. * Allocate a Route element.
* @param header The element to work on. * @param header The element to work on.
*/ */
int osip_route_init (osip_route_t ** header); int osip_route_init (osip_route_t ** header);
/** /**
* Free a Route element. * Free a Route element.
* @param header The element to work on. * @param header The element to work on.
*/ */
void osip_route_free (osip_route_t * header); void osip_route_free (osip_route_t * header);
skipping to change at line 74 skipping to change at line 75
* Get a string representation of a Route element. * Get a string representation of a Route element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
int osip_route_to_str (const osip_route_t * header, char **dest); int osip_route_to_str (const osip_route_t * header, char **dest);
/** /**
* Clone a Route element. * Clone a Route element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_route_clone(header,dest) osip_from_clone(header,dest) #define osip_route_clone osip_from_clone
#else
#define osip_route_init osip_from_init
#define osip_route_free osip_from_free
#define osip_route_parse osip_from_parse
#define osip_route_to_str osip_from_to_str
#define osip_route_clone osip_from_clone
#endif
/** /**
* Set the url in the Route element. * Set the url in the Route element.
* @param header The element to work on. * @param header The element to work on.
* @param url The value of the element. * @param url The value of the element.
*/ */
#define osip_route_set_url(header,url) osip_from_set_url((osip_from_t*)h eader,url) #define osip_route_set_url(header,url) osip_from_set_url((osip_from_t*)h eader,url)
/** /**
* Get the url from a Route header. * Get the url from a Route header.
* @param header The element to work on. * @param header The element to work on.
*/ */
 End of changes. 3 change blocks. 
2 lines changed or deleted 10 lines changed or added


 osip_time.h   osip_time.h 
/* To be placed in include/osip2 directory */ /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261
-)
Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato
sc.org
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef _OSIP_TIME_H_ #ifndef _OSIP_TIME_H_
#define _OSIP_TIME_H_ #define _OSIP_TIME_H_
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/* Common time-related functions and data types */ /* Common time-related functions and data types */
skipping to change at line 31 skipping to change at line 48
#endif #endif
/* struct timeval, as defined in <sys/time.h>, <winsock.h> or <winsock2.h> */ /* struct timeval, as defined in <sys/time.h>, <winsock.h> or <winsock2.h> */
struct timeval; struct timeval;
/* Time manipulation functions */ /* Time manipulation functions */
void add_gettimeofday (struct timeval *atv, int ms); void add_gettimeofday (struct timeval *atv, int ms);
void min_timercmp (struct timeval *tv1, struct timeval *tv2); void min_timercmp (struct timeval *tv1, struct timeval *tv2);
/* OS-dependent */ /* OS-dependent */
#if defined(WIN32) || defined(_WIN32_WCE) || defined (__VXWORKS_OS__) #if defined(WIN32) || defined(_WIN32_WCE) || defined (__VXWORKS_OS__) || de fined(__arc__)
/* Operations on struct timeval */ /* Operations on struct timeval */
#define osip_timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) #define osip_timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
# define osip_timercmp(a, b, CMP) \ # define osip_timercmp(a, b, CMP) \
(((a)->tv_sec == (b)->tv_sec) ? \ (((a)->tv_sec == (b)->tv_sec) ? \
((a)->tv_usec CMP (b)->tv_usec) : \ ((a)->tv_usec CMP (b)->tv_usec) : \
((a)->tv_sec CMP (b)->tv_sec)) ((a)->tv_sec CMP (b)->tv_sec))
#define osip_timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0 #define osip_timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
/* osip_gettimeofday() for Windows */ /* osip_gettimeofday() for Windows */
#if defined(__arc__)
#define osip_gettimeofday gettimeofday
#else
int osip_gettimeofday (struct timeval *tp, void *tz); int osip_gettimeofday (struct timeval *tp, void *tz);
#endif
#else #else
/* Operations on struct timeval */ /* Operations on struct timeval */
#define osip_timerisset(tvp) timerisset(tvp) #define osip_timerisset(tvp) timerisset(tvp)
#define osip_timercmp(tvp, uvp, cmp) timercmp(tvp,uvp,cmp) #define osip_timercmp(tvp, uvp, cmp) timercmp(tvp,uvp,cmp)
#define osip_timerclear(tvp) timerclear(tvp) #define osip_timerclear(tvp) timerclear(tvp)
/* osip_gettimeofday() == gettimeofday() */ /* osip_gettimeofday() == gettimeofday() */
#define osip_gettimeofday gettimeofday #define osip_gettimeofday gettimeofday
#endif /* #ifdef WIN32 */ #endif
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* #ifndef _OSIP_TIME_H_ */ #endif
 End of changes. 6 change blocks. 
3 lines changed or deleted 26 lines changed or added


 osip_to.h   osip_to.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
skipping to change at line 47 skipping to change at line 47
* Structure for To headers. * Structure for To headers.
* @var osip_to_t * @var osip_to_t
*/ */
typedef osip_from_t osip_to_t; typedef osip_from_t osip_to_t;
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
#ifndef MINISIZE
/** /**
* Allocate a To element. * Allocate a To element.
* @param header The element to work on. * @param header The element to work on.
*/ */
int osip_to_init (osip_to_t ** header); int osip_to_init (osip_to_t ** header);
/** /**
* Free a To element. * Free a To element.
* @param header The element to work on. * @param header The element to work on.
*/ */
void osip_to_free (osip_to_t * header); void osip_to_free (osip_to_t * header);
skipping to change at line 76 skipping to change at line 77
* @param dest A pointer on the new allocated string. * @param dest A pointer on the new allocated string.
*/ */
int osip_to_to_str (const osip_to_t * header, char **dest); int osip_to_to_str (const osip_to_t * header, char **dest);
/** /**
* Clone a To element. * Clone a To element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
int osip_to_clone (const osip_to_t * header, osip_to_t ** dest); int osip_to_clone (const osip_to_t * header, osip_to_t ** dest);
/** /**
* Check if the tags in the To headers match.
* NOTE: THIS IS AN INTERNAL METHOD ONLY
* @param to1 The first To header.
* @param to2 The second To header.
*/
int osip_to_tag_match (osip_to_t * to1, osip_to_t * to2);
#else
#define osip_to_init osip_from_init
#define osip_to_free osip_from_free
#define osip_to_parse osip_from_parse
#define osip_to_to_str osip_from_to_str
#define osip_to_clone osip_from_clone
#define osip_to_tag_match osip_from_tag_match
#endif
/**
* Set the displayname in the To element. * Set the displayname in the To element.
* @param header The element to work on. * @param header The element to work on.
* @param value The value of the element. * @param value The value of the element.
*/ */
#define osip_to_set_displayname(header,value) osip_from_set_displayname((os ip_from_t*)header,value) #define osip_to_set_displayname(header,value) osip_from_set_displayname((os ip_from_t*)header,value)
/** /**
* Get the displayname from a To header. * Get the displayname from a To header.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_to_get_displayname(header) osip_from_get_displayname((os ip_from_t*)header) #define osip_to_get_displayname(header) osip_from_get_displayname((os ip_from_t*)header)
skipping to change at line 137 skipping to change at line 153
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_to_get_tag(header,dest) osip_generic_param_get_byname((&(heade r)->gen_params), "tag",dest) #define osip_to_get_tag(header,dest) osip_generic_param_get_byname((&(heade r)->gen_params), "tag",dest)
#ifndef DOXYGEN /* avoid DOXYGEN warning */ #ifndef DOXYGEN /* avoid DOXYGEN warning */
/* Compare the username, host and tag part of the two froms */ /* Compare the username, host and tag part of the two froms */
#define osip_to_compare(header1, header2) osip_from_compare((osip_from_t *) header1, (osip_from_t *)header2) #define osip_to_compare(header1, header2) osip_from_compare((osip_from_t *) header1, (osip_from_t *)header2)
#endif #endif
/**
* Check if the tags in the To headers match.
* NOTE: THIS IS AN INTERNAL METHOD ONLY
* @param to1 The first To header.
* @param to2 The second To header.
*/
int osip_to_tag_match (osip_to_t * to1, osip_to_t * to2);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 4 change blocks. 
9 lines changed or deleted 17 lines changed or added


 osip_uri.h   osip_uri.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_via.h   osip_via.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_www_authenticate.h   osip_www_authenticate.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004,2005 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 sdp_message.h   sdp_message.h 
/* /*
The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -) The oSIP library implements the Session Initiation Protocol (SIP -rfc3261 -)
Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Aymeric MOIZARD jack@ato sc.org
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/