40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * CDDL HEADER START
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * The contents of this file are subject to the terms of the
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Common Development and Distribution License (the "License").
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * You may not use this file except in compliance with the License.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * See the License for the specific language governing permissions
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * and limitations under the License.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * When distributing Covered Code, include this CDDL HEADER in each
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * If applicable, add the following below this CDDL HEADER, with the
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * fields enclosed by brackets "[]" replaced with your own identifying
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * information: Portions Copyright [yyyy] [name of copyright owner]
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * CDDL HEADER END
2c2c41837e330b002c4220a39638150db504fe0evi * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Use is subject to license terms.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi#pragma ident "%Z%%M% %I% %E% SMI"
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Local version of case insensitive strstr().
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vistatic char *
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return ((char *)s1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi if (c == 0)
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Get the value in the content-length field and add it to the header length
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * and return the total length. returns -1 if the length cannot be determined
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * or if the message does not contain the entire message.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi e = c + 1;
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi while (*e != '\r') {
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi return (-1);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * We have determined that msg does not contain a *single* complete message.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Add it to the reassembly list and check if we have a complete message.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * a NULL 'msg' means we are just checking if there are more complete
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * messages in the list that can be passed up.
40cb5e5daa7b80bb70fcf8dadfb20f9281566331visip_get_tcp_msg(sip_conn_object_t obj, char *msg, size_t *msglen)
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * connection object not initialized
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) pthread_mutex_lock(&pvt_data->sip_conn_obj_reass_lock);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) pthread_mutex_unlock(&pvt_data->sip_conn_obj_reass_lock);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi * Resize, not optimal
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi assert(strlen(reass->sip_reass_msg) == reass->sip_reass_msglen);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi value = sip_get_msglen(reass->sip_reass_msg, reass->sip_reass_msglen);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) pthread_mutex_unlock(&pvt_data->sip_conn_obj_reass_lock);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) pthread_mutex_unlock(&pvt_data->sip_conn_obj_reass_lock);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) pthread_mutex_unlock(&pvt_data->sip_conn_obj_reass_lock);
40cb5e5daa7b80bb70fcf8dadfb20f9281566331vi (void) strncpy(splitbuf, reass->sip_reass_msg + value, splitlen);