Lines Matching defs:description
30 * Parses the SDP description as per the SDP grammar defined in Section 9 of
972 * once but occurs several times in SDP description. error cannot be NULL.
990 sdp_handle_fields(sdp_description_t *description, sdp_session_t *_session,
995 char prev = description->d_prev;
996 char m_prev = description->d_mprev;
1001 description->d_version = B_TRUE;
1003 &description->d_perror);
1007 description->d_origin = B_TRUE;
1009 &description->d_perror);
1013 description->d_name = B_TRUE;
1015 &description->d_perror);
1018 if (description->d_mparsed) {
1021 if (description->d_lmedia == NULL)
1023 sdp_parse_info(&(description->d_lmedia->
1024 m_info), begin + 1, end, &description->
1029 end, &description->d_perror);
1035 &description->d_perror);
1040 &description->d_perror);
1045 &description->d_perror);
1048 if (description->d_mparsed) {
1051 --description->d_mccount;
1052 if (description->d_lmedia == NULL)
1054 sdp_parse_connection(&(description->d_lmedia->
1056 &description->d_perror);
1064 description->d_conn = B_TRUE;
1068 begin + 1, end, &description->d_perror);
1072 if (description->d_mparsed) {
1074 if (description->d_lmedia == NULL)
1076 sdp_parse_bandwidth(&(description->d_lmedia->
1078 &description->d_perror);
1082 begin + 1, end, &description->d_perror);
1086 if (!description->d_tparsed || description->d_prev !=
1090 description->d_tparsed = B_TRUE;
1091 description->d_ltime = sdp_parse_time(&_session->
1092 s_time, begin + 1, end, &description->d_perror);
1096 if (description->d_ltime == NULL)
1099 sdp_parse_repeat(description->d_ltime, begin + 1, end,
1100 &description->d_perror);
1105 &description->d_perror);
1108 if (description->d_mparsed) {
1111 if (description->d_lmedia == NULL)
1113 sdp_parse_key(&(description->d_lmedia->m_key),
1114 begin + 1, end, &description->d_perror);
1118 &description->d_perror);
1122 if (description->d_mparsed) {
1125 if (description->d_lmedia == NULL)
1127 sdp_parse_attribute(&(description->d_lmedia->
1129 &description->d_perror);
1133 begin + 1, end, &description->d_perror);
1137 if (!description->d_mparsed) {
1139 description->d_mccount = 1;
1141 if (description->d_mccount == 1)
1142 description->d_mconn = B_FALSE;
1143 description->d_mccount = 1;
1145 description->d_mparsed = B_TRUE;
1146 description->d_lmedia = sdp_parse_media(_session,
1147 begin + 1, end, &description->d_perror);
1155 description->d_perror |= SDP_FIELDS_ORDER_ERROR;
1157 if (!description->d_mparsed)
1158 description->d_prev = *begin;
1160 description->d_mprev = *begin;
1174 sdp_description_t *description;
1187 description = calloc(1, sizeof (sdp_description_t));
1188 if (description == NULL) {
1192 description->d_prev = COMMP_SP;
1193 description->d_mconn = B_TRUE;
1196 free(description);
1202 free(description);
1209 while ((current < end) && !(description->d_perror &
1217 sdp_handle_fields(description, *session, f_begin,
1224 sdp_handle_fields(description, *session, f_begin,
1233 if (description->d_perror & SDP_MEMORY_ERROR) {
1234 free(description);
1242 * description or at the session-level
1244 if (description->d_mccount == 1)
1245 description->d_mconn = B_FALSE;
1246 if (!(description->d_version && description->d_origin &&
1247 description->d_name && description->d_tparsed &&
1248 (description->d_conn || (description->d_mparsed &&
1249 description->d_mconn)))) {
1250 description->d_perror |= SDP_MISSING_FIELDS;
1252 *p_error = description->d_perror;
1253 free(description);