Lines Matching refs:ss

76 static int32_t sdp_receive_error_pdu(sdp_session_p ss);
82 sdp_session_p ss = (sdp_session_p) xss; in sdp_register_service() local
87 if (ss == NULL) in sdp_register_service()
90 datalen == 0 || !(ss->flags & SDP_SESSION_LOCAL)) { in sdp_register_service()
91 ss->error = EINVAL; in sdp_register_service()
95 ss->error = EMSGSIZE; in sdp_register_service()
100 pdu.tid = htons(++ss->tid); in sdp_register_service()
118 len = writev(ss->s, iov, sizeof(iov)/sizeof(iov[0])); in sdp_register_service()
122 ss->error = errno; in sdp_register_service()
126 len = sdp_receive_error_pdu(ss); in sdp_register_service()
130 ss->error = EIO; in sdp_register_service()
135 *handle = (uint32_t) ss->rsp[--len]; in sdp_register_service()
136 *handle |= (uint32_t) ss->rsp[--len] << 8; in sdp_register_service()
137 *handle |= (uint32_t) ss->rsp[--len] << 16; in sdp_register_service()
138 *handle |= (uint32_t) ss->rsp[--len] << 24; in sdp_register_service()
147 sdp_session_p ss = (sdp_session_p) xss; in sdp_unregister_service() local
152 if (ss == NULL) in sdp_unregister_service()
154 if (!(ss->flags & SDP_SESSION_LOCAL)) { in sdp_unregister_service()
155 ss->error = EINVAL; in sdp_unregister_service()
160 ss->error = EMSGSIZE; in sdp_unregister_service()
166 pdu.tid = htons(++ss->tid); in sdp_unregister_service()
178 len = writev(ss->s, iov, sizeof(iov)/sizeof(iov[0])); in sdp_unregister_service()
182 ss->error = errno; in sdp_unregister_service()
186 return ((sdp_receive_error_pdu(ss) < 0)? -1 : 0); in sdp_unregister_service()
193 sdp_session_p ss = (sdp_session_p) xss; in sdp_change_service() local
198 if (ss == NULL) in sdp_change_service()
200 if (data == NULL || datalen == 0 || !(ss->flags & SDP_SESSION_LOCAL)) { in sdp_change_service()
201 ss->error = EINVAL; in sdp_change_service()
205 ss->error = EMSGSIZE; in sdp_change_service()
210 pdu.tid = htons(++ss->tid); in sdp_change_service()
225 len = writev(ss->s, iov, sizeof(iov)/sizeof(iov[0])); in sdp_change_service()
229 ss->error = errno; in sdp_change_service()
233 return ((sdp_receive_error_pdu(ss) < 0)? -1 : 0); in sdp_change_service()
237 sdp_receive_error_pdu(sdp_session_p ss) in sdp_receive_error_pdu() argument
244 len = read(ss->s, ss->rsp, (size_t)(ss->rsp_e - ss->rsp)); in sdp_receive_error_pdu()
248 ss->error = errno; in sdp_receive_error_pdu()
252 memcpy(&pdu, ss->rsp, sizeof(pdu)); in sdp_receive_error_pdu()
255 memcpy(ss->rsp, &pdu, sizeof(pdu)); in sdp_receive_error_pdu()
257 if (pdu.pid != SDP_PDU_ERROR_RESPONSE || pdu.tid != ss->tid || in sdp_receive_error_pdu()
259 ss->error = EIO; in sdp_receive_error_pdu()
263 error = (uint16_t) ss->rsp[sizeof(pdu)] << 8; in sdp_receive_error_pdu()
264 error |= (uint16_t) ss->rsp[sizeof(pdu) + 1]; in sdp_receive_error_pdu()
267 ss->error = EIO; in sdp_receive_error_pdu()