Lines Matching defs:pdu_p
364 struct isns_pdu_s *pdu_p;
387 trans_p->get_tlv_info.pdu_p = NULL;
409 pdu_p = isns_new_pdu(trans_p->cfg_p, trans_p->id, func_id, pdu_flags);
410 if (pdu_p == NULL) {
416 isns_add_pdu_request((ISNS_TRANS)trans_p, pdu_p);
431 struct isns_pdu_s *pdu_p;
450 while ((pdu_p = trans_p->pdu_req_list) != NULL) {
451 trans_p->pdu_req_list = pdu_p->next;
452 isns_free_pdu(pdu_p);
456 while ((pdu_p = trans_p->pdu_rsp_list) != NULL) {
457 trans_p->pdu_rsp_list = pdu_p->next;
458 isns_free_pdu(pdu_p);
489 struct isns_pdu_s *pdu_p;
505 if ((pdu_p = isns_get_pdu_request(trans)) == NULL) {
511 pdu_p->hdr.flags |= ISNS_FLAG_FIRST_PDU;
514 while (pdu_p->next != NULL) {
515 pdu_p->next->hdr.seq_id = pdu_p->hdr.seq_id + 1;
516 pdu_p = pdu_p->next;
520 pdu_p->hdr.flags |= ISNS_FLAG_LAST_PDU;
638 struct isns_pdu_s *pdu_p;
653 pdu_p = isns_get_pdu_response(trans_p);
654 if (pdu_p == NULL) {
659 if (pdu_p->payload_p->cur_len == 0) {
666 if ((which_tlv == ISNS_TLV_NEXT) && (info_p->pdu_p == NULL))
678 info_p->pdu_p = pdu_p;
679 info_p->buf_p = isns_get_pdu_head_buffer(pdu_p);
733 isns_add_pdu_request(struct isns_trans_s *trans_p, struct isns_pdu_s *pdu_p)
735 DBG("isns_add_pdu_request: trans_p=%p, pdu_p=%p\n", trans_p, pdu_p);
737 isns_add_pdu_list(&trans_p->pdu_req_list, pdu_p);
745 isns_add_pdu_response(struct isns_trans_s *trans_p, struct isns_pdu_s *pdu_p)
747 DBG("isns_add_pdu_response: trans_p=%p, pdu_p=%p\n", trans_p, pdu_p);
749 isns_add_pdu_list(&trans_p->pdu_rsp_list, pdu_p);
759 struct isns_pdu_s *pdu_p;
761 if ((pdu_p = isns_get_pdu_request(trans_p)) != NULL) {
762 while (pdu_p->next != NULL)
763 pdu_p = pdu_p->next;
766 return pdu_p;
799 isns_free_pdu(struct isns_pdu_s *pdu_p)
803 DBG("isns_free_pdu: %p\n", pdu_p);
805 if (pdu_p != NULL) {
807 buf_p = pdu_p->payload_p;
817 buf_p = ((struct isns_buffer_s *)(void *)(pdu_p))-1 ;
827 isns_send_pdu(ISNS_TRANS trans, struct isns_pdu_s *pdu_p,
839 if (pdu_p == NULL) {
840 DBG("isns_send_pdu: error - pdu_p=%p\n", pdu_p);
847 task_p = isns_new_task(pdu_p->cfg_p, ISNS_TASK_SEND_PDU,
850 task_p->var.send_pdu.pdu_p = pdu_p;
852 isns_taskq_insert_tail(pdu_p->cfg_p, task_p);
854 isns_issue_cmd(pdu_p->cfg_p, ISNS_CMD_PROCESS_TASKQ);
882 struct isns_pdu_s *pdu_p;
889 pdu_p = isns_buffer_data(buf_p, 0);
893 pdu_p->cfg_p = cfg_p;
894 pdu_p->hdr.isnsp_version = ISNSP_VERSION;
895 pdu_p->hdr.func_id = func_id;
896 pdu_p->hdr.payload_len = 0;
897 pdu_p->hdr.flags = flags;
898 pdu_p->hdr.trans_id = trans_id;
899 pdu_p->hdr.seq_id = 0;
900 pdu_p->byteorder_host = 1;
901 pdu_p->next = NULL;
909 pdu_p->payload_p = (struct isns_buffer_s *)
911 ISNS_INIT_BUFFER(pdu_p->payload_p, (unsigned)(buf_p->alloc_len -
915 DBG("isns_init_pdu: %p\n", pdu_p);
917 return pdu_p;
928 struct isns_pdu_s *pdu_p, *new_pdu_p;
935 if ((pdu_p = isns_get_pdu_request_tail(trans_p)) == NULL) {
940 buf_p = isns_get_pdu_active_buffer(pdu_p);
953 if (pdu_p->hdr.payload_len == ISNS_MAX_PDU_PAYLOAD) {
955 trans_p->id, trans_p->func_id, pdu_p->hdr.flags);
959 pdu_p = new_pdu_p;
960 buf_p = pdu_p->payload_p;
976 pdu_p->hdr.payload_len++;
986 pdu_p->hdr.payload_len += pad_bytes;
1009 if ((info_p->buf_p == NULL) && (info_p->pdu_p->next != NULL)) {
1010 info_p->pdu_p = info_p->pdu_p->next;
1011 info_p->buf_p = isns_get_pdu_head_buffer(info_p->pdu_p);
1140 struct isns_pdu_s *pdu_p;
1145 pdu_p = isns_get_pdu_response(trans_p);
1146 if ((pdu_p == NULL)
1147 || (pdu_p->payload_p == NULL)
1148 || (pdu_p->payload_p->cur_len < 4))
1151 *status_p = htonl(*(uint32_t *)isns_buffer_data(pdu_p->payload_p, 0));
1161 isns_add_pdu_list(struct isns_pdu_s **list_pp, struct isns_pdu_s *pdu_p)
1167 *list_pp = pdu_p;
1168 pdu_p->next = NULL;
1174 if (pdu_p->hdr.seq_id < p->hdr.seq_id) {
1176 *list_pp = pdu_p;
1177 pdu_p->next = p;
1182 p_prev->next = pdu_p;
1183 pdu_p->next = p;
1191 /* pdu_p->hdr.seq_id > hdr.seq_id of all list elements */
1195 p->next = pdu_p;
1196 pdu_p->next = NULL;
1204 isns_get_pdu_head_buffer(struct isns_pdu_s *pdu_p)
1206 return pdu_p->payload_p;
1215 isns_get_pdu_tail_buffer(struct isns_pdu_s *pdu_p)
1219 buf_p = pdu_p->payload_p;
1233 isns_get_pdu_active_buffer(struct isns_pdu_s *pdu_p)
1237 buf_p = pdu_p->payload_p;
1263 isns_dump_pdu(struct isns_pdu_s *pdu_p)
1270 if (pdu_p == NULL) {
1271 DBG("isns_dump_pdu: pdu_p is NULL\n");
1276 if (pdu_p->byteorder_host) {
1279 pdu_p->hdr.isnsp_version,
1280 pdu_p->hdr.func_id & ~0x8000,
1281 (pdu_p->hdr.func_id & 0x8000 ? "rsp" : "req"),
1282 pdu_p->hdr.payload_len,
1283 pdu_p->hdr.flags,
1284 pdu_p->hdr.trans_id,
1285 pdu_p->hdr.seq_id);
1289 isns_ntohs(pdu_p->hdr.isnsp_version),
1290 isns_ntohs(pdu_p->hdr.func_id) & ~0x8000,
1291 (pdu_p->hdr.func_id & 0x0080 ? "rsp" : "req"),
1292 isns_ntohs(pdu_p->hdr.payload_len),
1293 isns_ntohs(pdu_p->hdr.flags),
1294 isns_ntohs(pdu_p->hdr.trans_id),
1295 isns_ntohs(pdu_p
1299 buf_p = pdu_p->payload_p;
1307 buf_p = pdu_p->payload_p;