ndmpadm_print.c revision 2654012f83cec5dc15b61dfe3e4a4915f186e7a6
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Use is subject to license terms.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * BSD 3 Clause License
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Copyright (c) 2007, The Storage Networking Industry Association.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Redistribution and use in source and binary forms, with or without
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * modification, are permitted provided that the following conditions
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * - Redistributions of source code must retain the above copyright
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * notice, this list of conditions and the following disclaimer.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * - Redistributions in binary form must reproduce the above copyright
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * notice, this list of conditions and the following disclaimer in
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * the documentation and/or other materials provided with the
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * distribution.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * - Neither the name of The Storage Networking Industry Association (SNIA)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * nor the names of its contributors may be used to endorse or promote
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * products derived from this software without specific prior written
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * permission.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * POSSIBILITY OF SUCH DAMAGE.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar/* static functions prototype */
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_tprint_addr(char *, ndmp_ad_type_t, char *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_print_env(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_conn(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_scsi_v2(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_tape_v2(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_mover_v2(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_data_v2(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_v2(int, ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_mover_v3(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_data_v3(ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connect_print_v3(int, ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarstatic void ndmp_connection_print(int, ndmp_session_info_t *);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar/* Boolean to string. */
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the address type and IP address if the address type is tcp
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_tprint_addr(char *label, ndmp_ad_type_t addr_type, char *tcp_addr)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t%s type:\tLocal\n"), label);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t%s type:\tTCP\n"), label);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t%s address:\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t%s type:\tFC\n"), label);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t%s type:\tIPC\n"), label);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print all the data environment variables for the active session
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.env[%d]:\t%s: "),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar if ((ep->np_value != NULL) && (*ep->np_value != NULL))
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, "\"%s\"\n", ep->np_value);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print common fields of the active connection.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tSession Id:\t%d\n"), si->nsi_sid);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tProtocol version:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tAuthenticated:\t\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tEOF:\t\t\t%s\n"), B2S(si->nsi_eof));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tClient address:\t\t%s\n"), si->nsi_cl_addr);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection SCSI info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_scsi_v2(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tscsi.open:\t\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tscsi.adapter:\t\t\"%s\"\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tscsi.valid target:\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tscsi.SID:\t\t%d\n"), si->nsi_scsi.ns_scsi_id);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tscsi.LUN:\t\t%d\n"), si->nsi_scsi.ns_lun);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection tape info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_tape_v2(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\ttape.fd:\t\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\ttape.record count:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\ttape.SID:\t\t%d\n"), si->nsi_tape.nt_sid);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\ttape.LUN:\t\t%d\n"), si->nsi_tape.nt_lun);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\ttape.device:\t\tNot open\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection mover info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_mover_v2(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tIdle\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tListen\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tActive\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tPaused\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tHalted\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.mode:\t\tRead\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.mode:\t\tWrite\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tN/A\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tEOM\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tEOF\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.pause reason:\tMedia Error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.pause reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.halt reason:\tN/A\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tConnection closed\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tInternal error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tConnection error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.record size:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.record number:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pos:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.win off:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.win len:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.data socket:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection data info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_data_v2(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.operation:\t\tNone\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.operation:\t\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tIdle\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tActive\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tHalted\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.halt reason:\tN/A\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tInternal error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tConnection error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.mover type:\tLocal\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.mover type:\tTCP\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.sock:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.mover type:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.aborted:\t\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.read offset:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.read length:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.total size:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar for (i = 0; np && i < (int)si->nsi_data.nld_nlist_len; i++, np++) {
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar "\"%s\"\n\t\tdest:\"%s\"\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print V2 connection info for the given category.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_v2(int cat, ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the V3 connection mover info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_mover_v3(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tIdle\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tListen\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tActive\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tPaused\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.state:\t\tHalted\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.mode:\t\tRead\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.mode:\t\tWrite\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tN/A\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tEOM\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tEOF\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.pause reason:\tMedia Error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pause reason:\tEOW\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.pause reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.halt reason:\tN/A\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tConnection closed\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tInternal error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tConnection error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tmover.halt reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.record size:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.record number:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.pos:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_mover.nm_mov_pos, si->nsi_mover.nm_mov_pos);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.win len:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_mover.nm_window_length, si->nsi_mover.nm_window_length);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.win off:\t\t%lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.sock:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.listen socket:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_mover.nm_addr_type, si->nsi_mover.nm_tcp_addr);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tmover.data socket:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar ndmp_tprint_addr(gettext("mover.data connection"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_mover.nm_addr_type, si->nsi_mover.nm_tcp_addr);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection data info.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_data_v3(ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.operation:\t\tNone\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.operation:\t\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tIdle\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tActive\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tHalted\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tListen\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.state:\t\tConnected\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tInternal error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tConnection error\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tdata.halt reason:\tUnknown (0x%x)\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar if (si->nsi_data.nd_nlist.nld_dt_v3.dv3_listen_sock != -1)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_data.nd_nlist.nld_dt_v3.dv3_listen_sock);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.listen socket:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_data.nd_nlist.nld_dt_v3.dv3_listen_sock);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_data.nd_addr_type, si->nsi_data.nd_tcp_addr);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.data socket:\t%d\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_data.nd_addr_type, si->nsi_data.nd_tcp_addr);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.aborted:\t\t%s\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.read offset:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.read length:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.total size:\t%llu\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar si->nsi_data.nd_nlist.nld_dt_v3.dv3_bytes_processed);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar for (i = 0; np && i < si->nsi_data.nld_nlist_len; i++, np++) {
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\tdata.nlist[%d]:\tname:\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("\t\tfh_info: %lld\n"),
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print V3 connection info for given category.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connect_print_v3(int cat, ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the list of all active sessions to the clients. For each version,
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * call the appropriate print function.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_connection_print(int cat, ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the list of all active sessions to the clients.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_session_all_print(int cat, ndmp_session_info_t *si, size_t num)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("No active session.\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("%d active sessions.\n"), num);
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar * Print the connection information for the given category.
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_session_print(int cat, ndmp_session_info_t *si)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdarndmp_devinfo_print(ndmp_devinfo_t *dip, size_t size)
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("No device attached.\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("Robot (Changer):\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar (void) fprintf(stdout, gettext("Tape drive(s):\n"));
2654012f83cec5dc15b61dfe3e4a4915f186e7a6Reza Sabdar gettext("\tRevision : %s\n"), dip->nd_revision);