Lines Matching refs:session

202 ndmpd_add_file_handler(ndmpd_session_t *session, void *cookie, int fd,  in ndmpd_add_file_handler()  argument
216 new->fh_next = session->ns_file_handler_list; in ndmpd_add_file_handler()
217 session->ns_file_handler_list = new; in ndmpd_add_file_handler()
236 ndmpd_remove_file_handler(ndmpd_session_t *session, int fd) in ndmpd_remove_file_handler() argument
241 last = &session->ns_file_handler_list; in ndmpd_remove_file_handler()
305 ndmp_check_mover_state(ndmpd_session_t *session) in ndmp_check_mover_state() argument
315 moverfd = session->ns_mover.md_sock; in ndmp_check_mover_state()
318 session->ns_mover.md_mode == NDMP_MOVER_MODE_WRITE) { in ndmp_check_mover_state()
333 ndmpd_mover_error(session, reason); in ndmp_check_mover_state()
364 ndmpd_select(ndmpd_session_t *session, boolean_t block, ulong_t class_mask) in ndmpd_select() argument
373 nlp_event_rv_set(session, 0); in ndmpd_select()
375 if (session->ns_file_handler_list == 0) in ndmpd_select()
399 for (handler = session->ns_file_handler_list; handler != 0; in ndmpd_select()
411 ndmp_check_mover_state(session); in ndmpd_select()
416 int connection_fd = ndmp_get_fd(session->ns_connection); in ndmpd_select()
423 for (handler = session->ns_file_handler_list; handler != 0; in ndmpd_select()
431 session->ns_eof = TRUE; in ndmpd_select()
436 session->ns_eof = TRUE; in ndmpd_select()
441 session->ns_eof = TRUE; in ndmpd_select()
445 nlp_event_rv_set(session, -1); in ndmpd_select()
451 handler = session->ns_file_handler_list; in ndmpd_select()
487 handler = session->ns_file_handler_list; in ndmpd_select()
493 nlp_event_nw(session); in ndmpd_select()
499 nlp_event_rv_set(session, 1); in ndmpd_select()
519 ndmpd_save_env(ndmpd_session_t *session, ndmp_pval *env, ulong_t envlen) in ndmpd_save_env() argument
525 session->ns_data.dd_env_len = 0; in ndmpd_save_env()
530 session->ns_data.dd_env = ndmp_malloc(sizeof (ndmp_pval) * envlen); in ndmpd_save_env()
531 if (session->ns_data.dd_env == 0) in ndmpd_save_env()
548 (void) mutex_lock(&session->ns_lock); in ndmpd_save_env()
549 session->ns_data.dd_env[i].name = namebuf; in ndmpd_save_env()
550 session->ns_data.dd_env[i].value = valbuf; in ndmpd_save_env()
551 session->ns_data.dd_env_len++; in ndmpd_save_env()
552 (void) mutex_unlock(&session->ns_lock); in ndmpd_save_env()
571 ndmpd_free_env(ndmpd_session_t *session) in ndmpd_free_env() argument
574 int count = session->ns_data.dd_env_len; in ndmpd_free_env()
576 (void) mutex_lock(&session->ns_lock); in ndmpd_free_env()
577 session->ns_data.dd_env_len = 0; in ndmpd_free_env()
579 free(session->ns_data.dd_env[i].name); in ndmpd_free_env()
580 free(session->ns_data.dd_env[i].value); in ndmpd_free_env()
583 free((char *)session->ns_data.dd_env); in ndmpd_free_env()
584 session->ns_data.dd_env = 0; in ndmpd_free_env()
585 (void) mutex_unlock(&session->ns_lock); in ndmpd_free_env()
606 ndmpd_save_nlist_v2(ndmpd_session_t *session, ndmp_name *nlist, in ndmpd_save_nlist_v2() argument
616 session->ns_data.dd_nlist_len = 0; in ndmpd_save_nlist_v2()
617 session->ns_data.dd_nlist = ndmp_malloc(sizeof (ndmp_name)*nlistlen); in ndmpd_save_nlist_v2()
618 if (session->ns_data.dd_nlist == 0) in ndmpd_save_nlist_v2()
636 session->ns_data.dd_nlist[i].name = namebuf; in ndmpd_save_nlist_v2()
637 session->ns_data.dd_nlist[i].dest = destbuf; in ndmpd_save_nlist_v2()
638 session->ns_data.dd_nlist[i].ssid = nlist[i].ssid; in ndmpd_save_nlist_v2()
639 session->ns_data.dd_nlist[i].fh_info = nlist[i].fh_info; in ndmpd_save_nlist_v2()
640 session->ns_data.dd_nlist_len++; in ndmpd_save_nlist_v2()
659 ndmpd_free_nlist_v2(ndmpd_session_t *session) in ndmpd_free_nlist_v2() argument
663 for (i = 0; i < session->ns_data.dd_nlist_len; i++) { in ndmpd_free_nlist_v2()
664 free(session->ns_data.dd_nlist[i].name); in ndmpd_free_nlist_v2()
665 free(session->ns_data.dd_nlist[i].dest); in ndmpd_free_nlist_v2()
668 if (session->ns_data.dd_nlist != NULL) in ndmpd_free_nlist_v2()
669 free((char *)session->ns_data.dd_nlist); in ndmpd_free_nlist_v2()
670 session->ns_data.dd_nlist = 0; in ndmpd_free_nlist_v2()
671 session->ns_data.dd_nlist_len = 0; in ndmpd_free_nlist_v2()
687 ndmpd_free_nlist_v3(ndmpd_session_t *session) in ndmpd_free_nlist_v3() argument
692 tp = session->ns_data.dd_nlist_v3; in ndmpd_free_nlist_v3()
693 for (i = 0; i < session->ns_data.dd_nlist_len; tp++, i++) { in ndmpd_free_nlist_v3()
699 NDMP_FREE(session->ns_data.dd_nlist_v3); in ndmpd_free_nlist_v3()
700 session->ns_data.dd_nlist_len = 0; in ndmpd_free_nlist_v3()
721 ndmpd_save_nlist_v3(ndmpd_session_t *session, ndmp_name_v3 *nlist, in ndmpd_save_nlist_v3() argument
732 session->ns_data.dd_nlist_len = 0; in ndmpd_save_nlist_v3()
733 tp = session->ns_data.dd_nlist_v3 = in ndmpd_save_nlist_v3()
735 if (session->ns_data.dd_nlist_v3 == 0) in ndmpd_save_nlist_v3()
749 if (session->ns_protocol_version == NDMPV4) { in ndmpd_save_nlist_v3()
767 session->ns_data.dd_nlist_len++; in ndmpd_save_nlist_v3()
777 ndmpd_free_nlist_v3(session); in ndmpd_save_nlist_v3()
795 ndmpd_free_nlist(ndmpd_session_t *session) in ndmpd_free_nlist() argument
797 switch (session->ns_protocol_version) { in ndmpd_free_nlist()
800 ndmpd_free_nlist_v2(session); in ndmpd_free_nlist()
804 ndmpd_free_nlist_v3(session); in ndmpd_free_nlist()
809 session->ns_protocol_version); in ndmpd_free_nlist()
858 ndmp_sort_nlist_v3(ndmpd_session_t *session) in ndmp_sort_nlist_v3() argument
860 if (!session || session->ns_data.dd_nlist_len == 0 || in ndmp_sort_nlist_v3()
861 !session->ns_data.dd_nlist_v3) in ndmp_sort_nlist_v3()
864 (void) qsort(session->ns_data.dd_nlist_v3, in ndmp_sort_nlist_v3()
865 session->ns_data.dd_nlist_len, in ndmp_sort_nlist_v3()
1016 ndmp_buffer_get_size(ndmpd_session_t *session) in ndmp_buffer_get_size() argument
1020 if (session == NULL) in ndmp_buffer_get_size()
1023 if (session->ns_data.dd_mover.addr_type == NDMP_ADDR_TCP) { in ndmp_buffer_get_size()
1033 "Local operation: %lu", session->ns_mover.md_record_size); in ndmp_buffer_get_size()
1034 if ((xfer_size = session->ns_mover.md_record_size) == 0) in ndmp_buffer_get_size()
1056 ndmp_lbr_init(ndmpd_session_t *session) in ndmp_lbr_init() argument
1058 if (session->ns_ndmp_lbr_params != NULL) { in ndmp_lbr_init()
1063 session->ns_ndmp_lbr_params = ndmp_malloc(sizeof (ndmp_lbr_params_t)); in ndmp_lbr_init()
1064 if (session->ns_ndmp_lbr_params == NULL) in ndmp_lbr_init()
1067 session->ns_ndmp_lbr_params->nlp_bkmap = -1; in ndmp_lbr_init()
1068 session->ns_ndmp_lbr_params->nlp_session = session; in ndmp_lbr_init()
1069 (void) cond_init(&session->ns_ndmp_lbr_params->nlp_cv, 0, NULL); in ndmp_lbr_init()
1070 (void) mutex_init(&session->ns_lock, 0, NULL); in ndmp_lbr_init()
1071 session->ns_nref = 0; in ndmp_lbr_init()
1089 ndmp_lbr_cleanup(ndmpd_session_t *session) in ndmp_lbr_cleanup() argument
1096 nlp_event_rv_set(session, -2); in ndmp_lbr_cleanup()
1097 nlp_event_nw(session); in ndmp_lbr_cleanup()
1099 ndmpd_abort_marking_v2(session); in ndmp_lbr_cleanup()
1100 ndmp_stop_buffer_worker(session); in ndmp_lbr_cleanup()
1101 ndmp_waitfor_op(session); in ndmp_lbr_cleanup()
1102 ndmp_free_reader_writer_ipc(session); in ndmp_lbr_cleanup()
1103 if (session->ns_ndmp_lbr_params) { in ndmp_lbr_cleanup()
1104 if (session->ns_ndmp_lbr_params->nlp_bkmap != -1) in ndmp_lbr_cleanup()
1105 (void) dbm_free(session->ns_ndmp_lbr_params->nlp_bkmap); in ndmp_lbr_cleanup()
1106 tlm_release_list(session->ns_ndmp_lbr_params->nlp_exl); in ndmp_lbr_cleanup()
1107 tlm_release_list(session->ns_ndmp_lbr_params->nlp_inc); in ndmp_lbr_cleanup()
1108 (void) cond_destroy(&session->ns_ndmp_lbr_params->nlp_cv); in ndmp_lbr_cleanup()
1111 NDMP_FREE(session->ns_ndmp_lbr_params); in ndmp_lbr_cleanup()
1128 nlp_ref_nw(ndmpd_session_t *session) in nlp_ref_nw() argument
1133 if ((nlp = ndmp_get_nlp(session)) != NULL) { in nlp_ref_nw()
1155 nlp_unref_nw(ndmpd_session_t *session) in nlp_unref_nw() argument
1160 if ((nlp = ndmp_get_nlp(session)) != NULL) { in nlp_unref_nw()
1182 nlp_wait_nw(ndmpd_session_t *session) in nlp_wait_nw() argument
1187 if ((nlp = ndmp_get_nlp(session)) != NULL) { in nlp_wait_nw()
1213 nlp_event_nw(ndmpd_session_t *session) in nlp_event_nw() argument
1218 if ((nlp = ndmp_get_nlp(session)) != NULL) { in nlp_event_nw()
1242 nlp_event_rv_get(ndmpd_session_t *session) in nlp_event_rv_get() argument
1246 if ((nlp = ndmp_get_nlp(session)) == NULL) { in nlp_event_rv_get()
1268 nlp_event_rv_set(ndmpd_session_t *session, in nlp_event_rv_set() argument
1277 if ((nlp = ndmp_get_nlp(session)) != NULL) in nlp_event_rv_set()
1336 ndmp_execute_cdb(ndmpd_session_t *session, char *adapter_name, int sid, int lun, in ndmp_execute_cdb() argument
1354 if (ndmp_send_response(session->ns_connection, in ndmp_execute_cdb()
1388 ndmp_send_reply(session->ns_connection, (void *) &reply, in ndmp_execute_cdb()
1401 ndmp_send_reply(session->ns_connection, (void *) &reply, in ndmp_execute_cdb()
1429 if (ndmp_send_response(session->ns_connection, NDMP_NO_ERR, in ndmp_execute_cdb()
1451 ndmp_stop_local_reader(ndmpd_session_t *session, tlm_commands_t *cmds) in ndmp_stop_local_reader() argument
1453 if (session != NULL) { in ndmp_stop_local_reader()
1454 if (session->ns_data.dd_sock == -1) { in ndmp_stop_local_reader()
1460 nlp_event_rv_set(session, -2); in ndmp_stop_local_reader()
1461 nlp_event_nw(session); in ndmp_stop_local_reader()
1479 ndmp_stop_remote_reader(ndmpd_session_t *session) in ndmp_stop_remote_reader() argument
1481 if (session != NULL) { in ndmp_stop_remote_reader()
1482 if (session->ns_data.dd_sock >= 0) { in ndmp_stop_remote_reader()
1487 "data.sock: %d", session->ns_data.dd_sock); in ndmp_stop_remote_reader()
1488 (void) close(session->ns_data.dd_sock); in ndmp_stop_remote_reader()
1489 session->ns_data.dd_sock = -1; in ndmp_stop_remote_reader()
1713 ndmp_stop_buffer_worker(ndmpd_session_t *session) in ndmp_stop_buffer_worker() argument
1718 session->ns_tape.td_pos = 0; in ndmp_stop_buffer_worker()
1719 if ((nlp = ndmp_get_nlp(session)) == NULL) { in ndmp_stop_buffer_worker()
1752 ndmp_stop_reader_thread(ndmpd_session_t *session) in ndmp_stop_reader_thread() argument
1757 if ((nlp = ndmp_get_nlp(session)) == NULL) { in ndmp_stop_reader_thread()
1788 ndmp_stop_writer_thread(ndmpd_session_t *session) in ndmp_stop_writer_thread() argument
1793 if ((nlp = ndmp_get_nlp(session)) == NULL) { in ndmp_stop_writer_thread()
1825 ndmp_free_reader_writer_ipc(ndmpd_session_t *session) in ndmp_free_reader_writer_ipc() argument
1830 if ((nlp = ndmp_get_nlp(session)) != NULL) { in ndmp_free_reader_writer_ipc()
1853 ndmp_waitfor_op(ndmpd_session_t *session) in ndmp_waitfor_op() argument
1855 if (session != NULL) { in ndmp_waitfor_op()
1856 while (session->ns_nref > 0) { in ndmp_waitfor_op()
1859 "waiting for session nref: %d", session->ns_nref); in ndmp_waitfor_op()
1877 ndmp_session_ref(ndmpd_session_t *session) in ndmp_session_ref() argument
1879 (void) mutex_lock(&session->ns_lock); in ndmp_session_ref()
1880 session->ns_nref++; in ndmp_session_ref()
1881 (void) mutex_unlock(&session->ns_lock); in ndmp_session_ref()
1897 ndmp_session_unref(ndmpd_session_t *session) in ndmp_session_unref() argument
1899 (void) mutex_lock(&session->ns_lock); in ndmp_session_unref()
1900 session->ns_nref--; in ndmp_session_unref()
1901 (void) mutex_unlock(&session->ns_lock); in ndmp_session_unref()
2753 ndmpd_session_t *session = (ndmpd_session_t *)ctx->nc_ddata; in ndmp_get_backup_type() local
2755 return (session->ns_butype); in ndmp_get_backup_type()