1*2882Svi117747 /* 2*2882Svi117747 * CDDL HEADER START 3*2882Svi117747 * 4*2882Svi117747 * The contents of this file are subject to the terms of the 5*2882Svi117747 * Common Development and Distribution License (the "License"). 6*2882Svi117747 * You may not use this file except in compliance with the License. 7*2882Svi117747 * 8*2882Svi117747 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*2882Svi117747 * or http://www.opensolaris.org/os/licensing. 10*2882Svi117747 * See the License for the specific language governing permissions 11*2882Svi117747 * and limitations under the License. 12*2882Svi117747 * 13*2882Svi117747 * When distributing Covered Code, include this CDDL HEADER in each 14*2882Svi117747 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*2882Svi117747 * If applicable, add the following below this CDDL HEADER, with the 16*2882Svi117747 * fields enclosed by brackets "[]" replaced with your own identifying 17*2882Svi117747 * information: Portions Copyright [yyyy] [name of copyright owner] 18*2882Svi117747 * 19*2882Svi117747 * CDDL HEADER END 20*2882Svi117747 */ 21*2882Svi117747 22*2882Svi117747 /* 23*2882Svi117747 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 24*2882Svi117747 * Use is subject to license terms. 25*2882Svi117747 */ 26*2882Svi117747 27*2882Svi117747 #ifndef _SIP_PARSE_GENERIC_H 28*2882Svi117747 #define _SIP_PARSE_GENERIC_H 29*2882Svi117747 30*2882Svi117747 #pragma ident "%Z%%M% %I% %E% SMI" 31*2882Svi117747 32*2882Svi117747 #ifdef __cplusplus 33*2882Svi117747 extern "C" { 34*2882Svi117747 #endif 35*2882Svi117747 36*2882Svi117747 extern int sip_atoi(_sip_header_t *, int *); 37*2882Svi117747 extern int sip_find_token(_sip_header_t *, char); 38*2882Svi117747 extern int sip_find_cr(_sip_header_t *); 39*2882Svi117747 extern int sip_find_separator(_sip_header_t *, char, char, char); 40*2882Svi117747 extern int sip_find_white_space(_sip_header_t *); 41*2882Svi117747 extern int sip_skip_white_space(_sip_header_t *); 42*2882Svi117747 extern int sip_reverse_skip_white_space(_sip_header_t *); 43*2882Svi117747 extern int sip_parse_goto_values(_sip_header_t *); 44*2882Svi117747 extern int sip_goto_next_value(_sip_header_t *); 45*2882Svi117747 extern int sip_parse_params(_sip_header_t *, sip_param_t **); 46*2882Svi117747 extern int sip_prim_parsers(_sip_header_t *, 47*2882Svi117747 sip_parsed_header_t **); 48*2882Svi117747 extern boolean_t sip_is_empty_hdr(_sip_header_t *); 49*2882Svi117747 extern int sip_parse_hdr_empty(_sip_header_t *, 50*2882Svi117747 sip_parsed_header_t **); 51*2882Svi117747 int sip_get_protocol_version(_sip_header_t *, 52*2882Svi117747 sip_proto_version_t *sip_proto_version); 53*2882Svi117747 extern int sip_parse_first_line(_sip_header_t *, 54*2882Svi117747 sip_message_type_t **); 55*2882Svi117747 extern int sip_parse_hdr_parser1(_sip_header_t *, 56*2882Svi117747 sip_parsed_header_t **, char); 57*2882Svi117747 extern int sip_parse_hdr_parser2(_sip_header_t *, 58*2882Svi117747 sip_parsed_header_t **, int); 59*2882Svi117747 extern int sip_parse_hdr_parser3(_sip_header_t *, 60*2882Svi117747 sip_parsed_header_t **, int, boolean_t); 61*2882Svi117747 extern int sip_parse_hdr_parser4(_sip_header_t *, 62*2882Svi117747 sip_parsed_header_t **); 63*2882Svi117747 extern int sip_parse_hdr_parser5(_sip_header_t *, 64*2882Svi117747 sip_parsed_header_t **, boolean_t); 65*2882Svi117747 #ifdef __cplusplus 66*2882Svi117747 } 67*2882Svi117747 #endif 68*2882Svi117747 69*2882Svi117747 #endif /* _SIP_PARSE_GENERIC_H */ 70