Lines Matching defs:session

294  * Adds origin field to the session.
298 sdp_add_origin(sdp_session_t *session, const char *name, uint64_t id,
305 if (session == NULL || name == NULL || nettype == NULL ||
309 if (session->s_origin != NULL)
330 session->s_origin = origin;
338 * Adds session name field to the session.
339 * s=<session name>
342 sdp_add_name(sdp_session_t *session, const char *name)
344 if (session == NULL || name == NULL)
346 if (session->s_name != NULL)
348 return (commp_add_str(&session->s_name, name, strlen(name)));
352 * Adds session information field to the session or media section of SDP.
353 * i=<session description>
366 * Adds uri field to the session.
370 sdp_add_uri(sdp_session_t *session, const char *uri)
372 if (session == NULL || uri == NULL)
374 if (session->s_uri != NULL)
376 return (commp_add_str(&session->s_uri, uri, strlen(uri)));
380 * Adds email address field to the session.
384 sdp_add_email(sdp_session_t *session, const char *email)
386 if (session == NULL || email == NULL || (strlen(email) == 0))
388 return (add_value_to_list(&session->s_email, email, strlen(email),
393 * Adds phone number field to the session.
397 sdp_add_phone(sdp_session_t *session, const char *phone)
399 if (session == NULL || phone == NULL || (strlen(phone) == 0))
401 return (add_value_to_list(&session->s_phone, phone, strlen(phone),
406 * Adds connection field to the session or media section of SDP
453 * Adds bandwidth field to the session or media section of SDP.
485 * Adds time field to the session
489 sdp_add_time(sdp_session_t *session, uint64_t starttime, uint64_t stoptime,
497 if (session == NULL) {
506 tmp = session->s_time;
508 session->s_time = new_time;
520 * Adds repeat field to the time structure of session
557 * Adds time zone field to the session
561 sdp_add_zone(sdp_session_t *session, uint64_t time, const char *offset)
567 if (session == NULL || offset == NULL)
578 tmp = session->s_zone;
580 session->s_zone = new_zone;
591 * Adds key field to session or media section of SDP.
625 * Adds attribute field to session or media section of SDP.
664 * Adds media field to the session.
668 sdp_add_media(sdp_session_t *session, const char *name, uint_t port,
677 if (session == NULL || name == NULL || protocol == NULL ||
685 new_media->m_session = session;
698 tmp = session->s_media;
700 session->s_media = new_media;
716 * length of buffer that is required to hold the session. Since the RFC does
721 sdp_get_length(const sdp_session_t *session)
735 len += snprintf(buf, 1, "%d", session->s_version);
736 if (session->s_origin != NULL) {
738 len += strlen(session->s_origin->o_username);
739 len += snprintf(buf, 1, "%llu", session->s_origin->o_id) + 1;
740 len += snprintf(buf, 1, "%llu", session->s_origin->o_version)
742 len += strlen(session->s_origin->o_nettype) + 1;
743 len += strlen(session->s_origin->o_addrtype) + 1;
744 len += strlen(session->s_origin->o_address) + 1;
746 if (session->s_name != NULL)
747 len += strlen(session->s_name) + FIELD_EQUALS_CRLF_LEN;
748 if (session->s_info != NULL)
749 len += strlen(session->s_info) + FIELD_EQUALS_CRLF_LEN;
750 if (session->s_uri != NULL)
751 len += strlen(session->s_uri) + FIELD_EQUALS_CRLF_LEN;
752 list = session->s_email;
757 list = session->s_phone;
762 conn = session->s_conn;
764 bw = session->s_bw;
766 time = session->s_time;
786 if (session->s_zone != NULL)
788 zone = session->s_zone;
794 SDP_LEN_KEY(session->s_key);
795 attr = session->s_attr;
797 media = session->s_media;
824 * Given a session structure it clones (deep copy) and returns the cloned copy
827 sdp_clone_session(const sdp_session_t *session)
844 if (session == NULL)
849 new_sess->sdp_session_version = session->sdp_session_version;
850 new_sess->s_version = session->s_version;
851 origin = session->s_origin;
857 if (session->s_name != NULL && sdp_add_name(new_sess, session->
861 if (session->s_info != NULL && sdp_add_information(&new_sess->
862 s_info, session->s_info) != 0) {
865 if (session->s_uri != NULL && sdp_add_uri(new_sess, session->
869 list = session->s_email;
875 list = session->s_phone;
881 conn = session->s_conn;
883 bw = session->s_bw;
885 time = session->s_time;
907 zone = session->s_zone;
913 SDP_ADD_KEY(new_sess->s_key, session->s_key);
914 attr = session->s_attr;
916 media = session->s_media;
954 * Given a session structure, this API converts it into character
958 sdp_session_to_str(const sdp_session_t *session, int *error)
977 if (session == NULL) {
982 s_len = sdp_get_length(session);
991 wrote = snprintf(buf, len, "v=%d%s", session->s_version, COMMP_CRLF);
994 origin = session->s_origin;
1003 if (session->s_name != NULL) {
1004 wrote = snprintf(buf, len, "s=%s%s", session->s_name,
1009 SDP_INFORMATION_TO_STR(session->s_info);
1010 if (session->s_uri != NULL) {
1011 wrote = snprintf(buf, len, "u=%s%s", session->s_uri,
1016 list = session->s_email;
1024 list = session->s_phone;
1032 conn = session->s_conn;
1034 bw = session->s_bw;
1036 time = session->s_time;
1063 zone = session->s_zone;
1081 SDP_KEY_TO_STR(session->s_key);
1082 attr = session->s_attr;
1084 media = session->s_media;
1122 * Given a session structure and the field ('v', 'o', 's', et al), this API
1127 sdp_delete_all_field(sdp_session_t *session, const char field)
1129 if (session == NULL)
1133 sdp_free_origin(session->s_origin);
1134 session->s_origin = NULL;
1137 free(session->s_name);
1138 session->s_name = NULL;
1141 free(session->s_info);
1142 session->s_info = NULL;
1145 free(session->s_uri);
1146 session->s_uri = NULL;
1149 sdp_free_list(session->s_email);
1150 session->s_email = NULL;
1153 sdp_free_list(session->s_phone);
1154 session->s_phone = NULL;
1157 sdp_free_connection(session->s_conn);
1158 session->s_conn = NULL;
1161 sdp_free_bandwidth(session->s_bw);
1162 session->s_bw = NULL;
1165 sdp_free_time(session->s_time);
1166 session->s_time = NULL;
1169 sdp_free_zone(session->s_zone);
1170 session->s_zone = NULL;
1173 sdp_free_key(session->s_key);
1174 session->s_key = NULL;
1177 sdp_free_attribute(session->s_attr);
1178 session->s_attr = NULL;
1181 sdp_free_media(session->s_media);
1182 session->s_media = NULL;
1286 * Allocates a new sdp session structure and assigns a version number to it.
1293 sdp_session_t *session = NULL;
1295 session = calloc(1, sizeof (sdp_session_t));
1296 if (session != NULL)
1297 session->sdp_session_version = SDP_SESSION_VERSION_1;
1298 return (session);