diff options
author | rwatson <rwatson@FreeBSD.org> | 2008-05-25 22:11:40 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2008-05-25 22:11:40 +0000 |
commit | a3623cb733d4a3ddcf8ba280724b8ce3f19a7a58 (patch) | |
tree | afe56b8f23cfc7884850445d064a110b6ac85c9e /sys/netatm/uni/unisig_print.c | |
parent | 2f956b205ca6c855f85983809448ddc387407d46 (diff) | |
download | FreeBSD-src-a3623cb733d4a3ddcf8ba280724b8ce3f19a7a58.zip FreeBSD-src-a3623cb733d4a3ddcf8ba280724b8ce3f19a7a58.tar.gz |
Remove netatm from HEAD as it is not MPSAFE and relies on the now removed
NET_NEEDS_GIANT. netatm has been disconnected from the build for ten
months in HEAD/RELENG_7. Specifics:
- netatm include files
- netatm command line management tools
- libatm
- ATM parts in rescue and sysinstall
- sample configuration files and documents
- kernel support as a module or in NOTES
- netgraph wrapper nodes for netatm
- ctags data for netatm.
- netatm-specific device drivers.
MFC after: 3 weeks
Reviewed by: bz
Discussed with: bms, bz, harti
Diffstat (limited to 'sys/netatm/uni/unisig_print.c')
-rw-r--r-- | sys/netatm/uni/unisig_print.c | 881 |
1 files changed, 0 insertions, 881 deletions
diff --git a/sys/netatm/uni/unisig_print.c b/sys/netatm/uni/unisig_print.c deleted file mode 100644 index 72d1733..0000000 --- a/sys/netatm/uni/unisig_print.c +++ /dev/null @@ -1,881 +0,0 @@ -/*- - * =================================== - * HARP | Host ATM Research Platform - * =================================== - * - * - * This Host ATM Research Platform ("HARP") file (the "Software") is - * made available by Network Computing Services, Inc. ("NetworkCS") - * "AS IS". NetworkCS does not provide maintenance, improvements or - * support of any kind. - * - * NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED, - * INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE - * SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE. - * In no event shall NetworkCS be responsible for any damages, including - * but not limited to consequential damages, arising from or relating to - * any use of the Software or related support. - * - * Copyright 1994-1998 Network Computing Services, Inc. - * - * Copies of this Software may be made, however, the above copyright - * notice must be reproduced on all copies. - */ - -/* - * ATM Forum UNI 3.0/3.1 Signalling Manager - * ---------------------------------------- - * - * Print Q.2931 messages - */ - -#include <sys/cdefs.h> -__FBSDID("$FreeBSD$"); - -#include <sys/param.h> -#include <sys/types.h> -#include <sys/systm.h> -#include <sys/time.h> -#include <sys/socket.h> -#include <net/if.h> -#include <netatm/port.h> -#include <netatm/queue.h> -#include <netatm/atm.h> -#include <netatm/atm_sys.h> -#include <netatm/atm_cm.h> -#include <netatm/atm_vc.h> -#include <netatm/atm_sigmgr.h> - -#include <netatm/uni/unisig_var.h> -#include <netatm/uni/unisig_msg.h> -#include <netatm/uni/unisig_print.h> - -/* - * Local declarations - */ -struct type_name { - char *name; - u_char type; -}; - - -/* - * Local functions - */ -static char * find_type(struct type_name *, u_char); -static void usp_print_atm_addr(Atm_addr *); -static void usp_print_ie(struct ie_generic *); -static void usp_print_ie_aalp(struct ie_generic *); -static void usp_print_ie_clrt(struct ie_generic *); -static void usp_print_ie_bbcp(struct ie_generic *); -static void usp_print_ie_bhli(struct ie_generic *); -static void usp_print_ie_blli(struct ie_generic *); -static void usp_print_ie_clst(struct ie_generic *); -static void usp_print_ie_cdad(struct ie_generic *); -static void usp_print_ie_cdsa(struct ie_generic *); -static void usp_print_ie_cgad(struct ie_generic *); -static void usp_print_ie_cgsa(struct ie_generic *); -static void usp_print_ie_caus(struct ie_generic *); -static void usp_print_ie_cnid(struct ie_generic *); -static void usp_print_ie_qosp(struct ie_generic *); -static void usp_print_ie_brpi(struct ie_generic *); -static void usp_print_ie_rsti(struct ie_generic *); -static void usp_print_ie_blsh(struct ie_generic *); -static void usp_print_ie_bnsh(struct ie_generic *); -static void usp_print_ie_bsdc(struct ie_generic *); -static void usp_print_ie_trnt(struct ie_generic *); -static void usp_print_ie_eprf(struct ie_generic *); -static void usp_print_ie_epst(struct ie_generic *); - - -/* - * Values for Q.2931 message type. - */ -static struct type_name msg_types[] = { - { "Call proceeding", 0x02 }, - { "Connect", 0x07 }, - { "Connect ACK", 0x0F }, - { "Setup", 0x05 }, - { "Release", 0x4D }, - { "Release complete", 0x5A }, - { "Restart", 0x46 }, - { "Restart ACK", 0x4E }, - { "Status", 0x7D }, - { "Status enquiry", 0x75 }, - { "Add party", 0x80 }, - { "Add party ACK", 0x81 }, - { "Add party reject", 0x82 }, - { "Drop party", 0x83 }, - { "Drop party ACK", 0x84 }, - {0, 0} -}; - - -/* - * Values for information element identifier. - */ -static struct type_name ie_types[] = { - { "Cause", 0x08 }, - { "Call state", 0x14 }, - { "Endpoint reference", 0x54 }, - { "Endpoint state", 0x55 }, - { "ATM AAL parameters", 0x58 }, - { "ATM user cell rate", 0x59 }, - { "Connection ID", 0x5A }, - { "QoS parameter", 0x5C }, - { "Broadband high layer info", 0x5D }, - { "Broadband bearer capability", 0x5E }, - { "Broadband low layer info", 0x5F }, - { "Broadband locking shift", 0x60 }, - { "Broadband non-locking shift", 0x61 }, - { "Broadband sending complete", 0x62 }, - { "Broadband repeat indicator", 0x63 }, - { "Calling party number", 0x6C }, - { "Calling party subaddress", 0x6D }, - { "Called party number", 0x70 }, - { "Called party subaddress", 0x71 }, - { "Transit net selection", 0x78 }, - { "Restart indicator", 0x79 }, - { 0, 0 } -}; - - -/* - * Search a name - type translation table - * - * Arguments: - * tbl a pointer to the table to search - * type the type to look for - * - * Returns: - * name a pointer to a character string with the name - * - */ -static char * -find_type(tbl, type) - struct type_name *tbl; - u_char type; -{ - while (type != tbl->type && tbl->name) - tbl++; - - if (tbl->name) - return(tbl->name); - else - return("-"); -} - - -/* - * Print an ATM address - * - * Arguments: - * p pointer to an Atm_address - * - * Returns: - * none - * - */ -static void -usp_print_atm_addr(p) - Atm_addr *p; -{ - char *cp; - - cp = unisig_addr_print(p); - printf("%s", cp); -} - - -/* - * Print a Q.2931 message structure - * - * Arguments: - * msg pointer to the message to print - * - * Returns: - * None - * - */ -void -usp_print_msg(msg, dir) - struct unisig_msg *msg; - int dir; -{ - char *name; - int i; - struct ie_generic *ie, *inxt; - - name = find_type(msg_types, msg->msg_type); - switch (dir) { - case UNISIG_MSG_IN: - printf("Received "); - break; - case UNISIG_MSG_OUT: - printf("Sent "); - break; - } - printf("message: %s (%x)\n", name, msg->msg_type); - printf(" Call reference: 0x%x\n", msg->msg_call_ref); -#ifdef LONG_PRINT - printf(" Message type flag: 0x%x\n", msg->msg_type_flag); - printf(" Message type action: 0x%x\n", msg->msg_type_action); - printf(" Message length: %d\n", msg->msg_length); - for (i=0; i<UNI_MSG_IE_CNT; i++) { - ie = msg->msg_ie_vec[i]; - while (ie) { - inxt = ie->ie_next; - usp_print_ie(ie); - ie = inxt; - } - } -#else - for (i=0; i<UNI_MSG_IE_CNT; i++) - { - ie = msg->msg_ie_vec[i]; - while (ie) { - inxt = ie->ie_next; - name = find_type(ie_types, ie->ie_ident); - if (ie->ie_ident == UNI_IE_CAUS || - ie->ie_ident == UNI_IE_RSTI || - ie->ie_ident == UNI_IE_CLST) { - usp_print_ie(ie); - } else { - printf(" Information element: %s (0x%x)\n", - name, ie->ie_ident); - } - ie = inxt; - } - } -#endif -} - - -/* - * Print a Q.2931 information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie(ie) - struct ie_generic *ie; -{ - char *name; - - while (ie) { - name = find_type(ie_types, ie->ie_ident); - printf(" Information element: %s (0x%x)\n", - name, ie->ie_ident); -#ifdef LONG_PRINT - printf(" Coding: 0x%x\n", - ie->ie_coding); - printf(" Flag: 0x%x\n", ie->ie_flag); - printf(" Action: 0x%x\n", - ie->ie_action); - printf(" Length: %d\n", ie->ie_length); -#endif - - switch (ie->ie_ident) { - case UNI_IE_AALP: - usp_print_ie_aalp(ie); - break; - case UNI_IE_CLRT: - usp_print_ie_clrt(ie); - break; - case UNI_IE_BBCP: - usp_print_ie_bbcp(ie); - break; - case UNI_IE_BHLI: - usp_print_ie_bhli(ie); - break; - case UNI_IE_BLLI: - usp_print_ie_blli(ie); - break; - case UNI_IE_CLST: - usp_print_ie_clst(ie); - break; - case UNI_IE_CDAD: - usp_print_ie_cdad(ie); - break; - case UNI_IE_CDSA: - usp_print_ie_cdsa(ie); - break; - case UNI_IE_CGAD: - usp_print_ie_cgad(ie); - break; - case UNI_IE_CGSA: - usp_print_ie_cgsa(ie); - break; - case UNI_IE_CAUS: - usp_print_ie_caus(ie); - break; - case UNI_IE_CNID: - usp_print_ie_cnid(ie); - break; - case UNI_IE_QOSP: - usp_print_ie_qosp(ie); - break; - case UNI_IE_BRPI: - usp_print_ie_brpi(ie); - break; - case UNI_IE_RSTI: - usp_print_ie_rsti(ie); - break; - case UNI_IE_BLSH: - usp_print_ie_blsh(ie); - break; - case UNI_IE_BNSH: - usp_print_ie_bnsh(ie); - break; - case UNI_IE_BSDC: - usp_print_ie_bsdc(ie); - break; - case UNI_IE_TRNT: - usp_print_ie_trnt(ie); - break; - case UNI_IE_EPRF: - usp_print_ie_eprf(ie); - break; - case UNI_IE_EPST: - usp_print_ie_epst(ie); - break; - } - ie = ie->ie_next; - } -} - - -/* - * Print an AAL parameters information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_aalp(ie) - struct ie_generic *ie; -{ - printf(" AAL type: %d\n", ie->ie_aalp_aal_type); - switch(ie->ie_aalp_aal_type) { - case UNI_IE_AALP_AT_AAL1: - printf(" Subtype: 0x%x\n", - ie->ie_aalp_1_subtype); - printf(" CBR rate: 0x%x\n", - ie->ie_aalp_1_cbr_rate); - printf(" Multiplier: 0x%x\n", - ie->ie_aalp_1_multiplier); - printf(" Clock rcvry: 0x%x\n", - ie->ie_aalp_1_clock_recovery); - printf(" Err corr: 0x%x\n", - ie->ie_aalp_1_error_correction); - printf(" Struct data: 0x%x\n", - ie->ie_aalp_1_struct_data_tran); - printf(" Partial cells: 0x%x\n", - ie->ie_aalp_1_partial_cells); - break; - case UNI_IE_AALP_AT_AAL3: - printf(" Fwd max SDU: %d\n", - ie->ie_aalp_4_fwd_max_sdu); - printf(" Bkwd max SDU: %d\n", - ie->ie_aalp_4_bkwd_max_sdu); - printf(" MID range: %d\n", - ie->ie_aalp_4_mid_range); - printf(" Mode: 0x%x\n", - ie->ie_aalp_4_mode); - printf(" SSCS type: 0x%x\n", - ie->ie_aalp_4_sscs_type); - break; - case UNI_IE_AALP_AT_AAL5: - printf(" Fwd max SDU: %d\n", - ie->ie_aalp_5_fwd_max_sdu); - printf(" Bkwd max SDU: %d\n", - ie->ie_aalp_5_bkwd_max_sdu); - printf(" Mode: 0x%x\n", - ie->ie_aalp_5_mode); - printf(" SSCS type: 0x%x\n", - ie->ie_aalp_5_sscs_type); - break; - case UNI_IE_AALP_AT_AALU: - printf(" User info: 0x%x %x %x %x\n", - ie->ie_aalp_user_info[0], - ie->ie_aalp_user_info[1], - ie->ie_aalp_user_info[2], - ie->ie_aalp_user_info[3]); - break; - } -} - - -/* - * Print a user cell rate information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_clrt(ie) - struct ie_generic *ie; -{ - printf(" Forward peak: %d\n", ie->ie_clrt_fwd_peak); - printf(" Backward peak: %d\n", ie->ie_clrt_bkwd_peak); - printf(" Fwd peak 01: %d\n", ie->ie_clrt_fwd_peak_01); - printf(" Bkwd peak 01: %d\n", ie->ie_clrt_bkwd_peak_01); - printf(" Fwd sust: %d\n", ie->ie_clrt_fwd_sust); - printf(" Bkwd sust: %d\n", ie->ie_clrt_bkwd_sust); - printf(" Fwd sust 01: %d\n", ie->ie_clrt_fwd_sust_01); - printf(" Bkwd sust 01: %d\n", ie->ie_clrt_bkwd_sust_01); - printf(" Fwd burst: %d\n", ie->ie_clrt_fwd_burst); - printf(" Bkwd burst: %d\n", ie->ie_clrt_bkwd_burst); - printf(" Fwd burst 01: %d\n", ie->ie_clrt_fwd_burst_01); - printf(" Bkwd burst 01: %d\n", - ie->ie_clrt_bkwd_burst_01); - printf(" Best effort: %d\n", ie->ie_clrt_best_effort); - printf(" TM optons: 0x%x\n", - ie->ie_clrt_tm_options); -} - - -/* - * Print a broadband bearer capability information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_bbcp(ie) - struct ie_generic *ie; -{ - printf(" Bearer class: 0x%x\n", - ie->ie_bbcp_bearer_class); - printf(" Traffic type: 0x%x\n", - ie->ie_bbcp_traffic_type); - printf(" Timing req: 0x%x\n", - ie->ie_bbcp_timing_req); - printf(" Clipping: 0x%x\n", ie->ie_bbcp_clipping); - printf(" Conn config: 0x%x\n", - ie->ie_bbcp_conn_config); -} - - -/* - * Print a broadband high layer information information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_bhli(ie) - struct ie_generic *ie; -{ - int i; - - printf(" Type: 0x%x\n", ie->ie_bhli_type); - printf(" HL info: 0x"); - for (i=0; i<ie->ie_length-1; i++) { - printf("%x ", ie->ie_bhli_info[i]); - } - printf("\n"); -} - - -/* - * Print a broadband low-layer information information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_blli(ie) - struct ie_generic *ie; -{ - printf(" Layer 1 ID: 0x%x\n", ie->ie_blli_l1_id); - printf(" Layer 2 ID: 0x%x\n", ie->ie_blli_l2_id); - printf(" Layer 2 mode: 0x%x\n", ie->ie_blli_l2_mode); - printf(" Layer 2 Q.933: 0x%x\n", - ie->ie_blli_l2_q933_use); - printf(" Layer 2 win: 0x%x\n", - ie->ie_blli_l2_window); - printf(" Layer 2 user: 0x%x\n", - ie->ie_blli_l2_user_proto); - printf(" Layer 3 ID: 0x%x\n", ie->ie_blli_l3_id); - printf(" Layer 3 mode: 0x%x\n", ie->ie_blli_l3_mode); - printf(" Layer 3 pkt: 0x%x\n", - ie->ie_blli_l3_packet_size); - printf(" Layer 3 win: 0x%x\n", - ie->ie_blli_l3_window); - printf(" Layer 3 user: 0x%x\n", - ie->ie_blli_l3_user_proto); - printf(" Layer 3 IPI: 0x%x\n", ie->ie_blli_l3_ipi); - printf(" Layer 3 SNAP: 0x%x\n", - ie->ie_blli_l3_snap_id); - printf(" Layer 3 OUI: 0x%x %x %x\n", - ie->ie_blli_l3_oui[0], - ie->ie_blli_l3_oui[1], - ie->ie_blli_l3_oui[2]); - printf(" Layer 3 PID: 0x%x %x\n", - ie->ie_blli_l3_pid[0], - ie->ie_blli_l3_pid[1]); -} - - -/* - * Print a call state information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_clst(ie) - struct ie_generic *ie; -{ - printf(" Call state: %d\n", - ie->ie_clst_state); -} - - -/* - * Print a called party number information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_cdad(ie) - struct ie_generic *ie; -{ - printf(" ATM addr: "); - usp_print_atm_addr(&ie->ie_cdad_addr); - printf("\n"); -} - - -/* - * Print a called party subaddress information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_cdsa(ie) - struct ie_generic *ie; -{ - printf(" ATM subaddr: "); - usp_print_atm_addr(&ie->ie_cdsa_addr); - printf("\n"); -} - - -/* - * Print a calling party number information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_cgad(ie) - struct ie_generic *ie; -{ - printf(" ATM addr: "); - usp_print_atm_addr(&ie->ie_cgad_addr); - printf("\n"); -} - - -/* - * Print a calling party subaddress information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_cgsa(ie) - struct ie_generic *ie; -{ - printf(" ATM subaddr: "); - usp_print_atm_addr(&ie->ie_cgsa_addr); - printf("\n"); -} - - -/* - * Print a cause information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_caus(ie) - struct ie_generic *ie; -{ - int i; - - printf(" Location: %d\n", ie->ie_caus_loc); - printf(" Cause: %d\n", ie->ie_caus_cause); - switch(ie->ie_caus_cause) { - case UNI_IE_CAUS_IECONTENT: - printf(" Flagged IEs: "); - for (i=0; ie->ie_caus_diagnostic[i]; i++) { - printf("0x%x ", ie->ie_caus_diagnostic[i]); - } - printf("\n"); - break; - case UNI_IE_CAUS_TIMER: - printf(" Timer ID: %c%c%c\n", - ie->ie_caus_diagnostic[0], - ie->ie_caus_diagnostic[1], - ie->ie_caus_diagnostic[2]); - break; - default: - printf(" Diag length: %d\n", - ie->ie_caus_diag_len); - printf(" Diagnostic: "); - for (i=0; i<ie->ie_caus_diag_len; i++) { - printf("0x%x ", ie->ie_caus_diagnostic[i]); - } - printf("\n"); - } -} - - -/* - * Print a connection identifier information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_cnid(ie) - struct ie_generic *ie; -{ - printf(" VP assoc sig: 0x%x\n", ie->ie_cnid_vp_sig); - printf(" Pref/excl: 0x%x\n", - ie->ie_cnid_pref_excl); - printf(" VPCI: %d\n", ie->ie_cnid_vpci); - printf(" VCI: %d\n", ie->ie_cnid_vci); -} - - -/* - * Print a quality of service parameter information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_qosp(ie) - struct ie_generic *ie; -{ - printf(" QoS fwd: 0x%x\n", - ie->ie_qosp_fwd_class); - printf(" QoS bkwd: 0x%x\n", - ie->ie_qosp_bkwd_class); -} - - -/* - * Print a broadband repeat indicator information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_brpi(ie) - struct ie_generic *ie; -{ - printf(" Indicator: 0x%x\n", ie->ie_brpi_ind); -} - - -/* - * Print a restart indicator information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_rsti(ie) - struct ie_generic *ie; -{ - printf(" Class: 0x%x\n", ie->ie_rsti_class); -} - - -/* - * Print a broadband locking shift information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_blsh(ie) - struct ie_generic *ie; -{ -} - - -/* - * Print a broadband non-locking shift information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_bnsh(ie) - struct ie_generic *ie; -{ -} - - -/* - * Print a broadband sending complete information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_bsdc(ie) - struct ie_generic *ie; -{ - printf(" Indication: 0x%x\n", ie->ie_bsdc_ind); -} - - -/* - * Print a transit net selection information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_trnt(ie) - struct ie_generic *ie; -{ -#ifdef NOTDEF - struct ie_generic ie_trnt_hdr; - u_char ie_trnt_id_type; - u_char ie_trnt_id_plan; - Atm_addr ie_trnt_id; -#endif -} - - -/* - * Print an endpoint reference information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_eprf(ie) - struct ie_generic *ie; -{ - printf(" Ref type: 0x%x\n", - ie->ie_eprf_type); - printf(" Endpt ref: 0x%x\n", - ie->ie_eprf_id); -} - - -/* - * Print an endpoint state information element - * - * Arguments: - * ie pointer to the IE to print - * - * Returns: - * None - * - */ -static void -usp_print_ie_epst(ie) - struct ie_generic *ie; -{ - printf(" Endpt state: %d\n", - ie->ie_epst_state); -} |