'\" te .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved .TH sip_branchid 3SIP "25 Jan 2007" "SunOS 5.11" "Session Initiation Protocol Library Functions" .SH NAME sip_branchid \- generate a RFC 3261 complaint branch ID .SH SYNOPSIS .LP .nf \fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-lsip\fR [ \fIlibrary\fR ... ] #include \fBchar *\fR\fIsip_branchid\fR(\fBsip_msg_t\fR \fIsip_msg\fR); .fi .SH DESCRIPTION .sp .LP The \fBsip_branchid()\fR function can be used to generate a value for the branch parameter for a \fBVIA\fR header. The returned string is prefixed with \fBz9hG4bK\fR to conform to RFC 3261. If \fIsip_msg\fR is null or \fIsip_msg\fR does not have a \fBVIA\fR header, a random value is generated. Otherwise, the value is generated using the \fBMD5\fR hash of the \fBVIA\fR, \fBFROM\fR, \fBCALL-ID\fR, \fBCSEQ\fR headers and the \fBURI\fR from the request line. The caller is responsible for freeing the returned string. .SH RETURN VALUES .sp .LP The \fBsip_branchid()\fR function returns a string on success and \fBNULL\fR on failure. .sp .LP The value of \fBerrno\fR is not changed by these calls in the event of an error. .SH ATTRIBUTES .sp .LP See \fBattributes\fR(5) for descriptions of the following attributes: .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPEATTRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe .TE .SH SEE ALSO .sp .LP \fBlibsip\fR(3LIB)