1*41585Ssklower /* Copyright (c) University of British Columbia, 1984 */ 2*41585Ssklower 3*41585Ssklower #include "../h/param.h" 4*41585Ssklower #include "../h/socket.h" 5*41585Ssklower #include "../h/protosw.h" 6*41585Ssklower #include "../h/domain.h" 7*41585Ssklower #include "../netccitt/x25.h" 8*41585Ssklower 9*41585Ssklower /* 10*41585Ssklower * Definitions of protocols supported in the CCITT domain. 11*41585Ssklower */ 12*41585Ssklower 13*41585Ssklower #ifdef BSD4_3 14*41585Ssklower extern struct domain ccittdomain; 15*41585Ssklower #endif 16*41585Ssklower 17*41585Ssklower #ifdef XE 18*41585Ssklower int xe_output (), xe_ctlinput (), xe_init(), xe_timer(); 19*41585Ssklower #endif 20*41585Ssklower #ifdef HDLC 21*41585Ssklower int hd_output (), hd_ctlinput (), hd_init (), hd_timer (); 22*41585Ssklower #endif 23*41585Ssklower int pk_usrreq (), pk_timer (); 24*41585Ssklower 25*41585Ssklower struct protosw ccittsw[] = { 26*41585Ssklower #ifdef XE 27*41585Ssklower #ifdef BSD4_3 28*41585Ssklower { 0, &ccittdomain, IEEEPROTO_802LLC,0, 29*41585Ssklower #else 30*41585Ssklower { 0, PF_CCITT, IEEEPROTO_802LLC,0, 31*41585Ssklower #endif 32*41585Ssklower 0, xe_output, xe_ctlinput, 0, 33*41585Ssklower 0, 34*41585Ssklower xe_init, 0, xe_timer, 0, 35*41585Ssklower }, 36*41585Ssklower #endif 37*41585Ssklower #ifdef HDLC 38*41585Ssklower #ifdef BSD4_3 39*41585Ssklower { 0, &ccittdomain, CCITTPROTO_HDLC,0, 40*41585Ssklower #else 41*41585Ssklower { 0, PF_CCITT, CCITTPROTO_HDLC,0, 42*41585Ssklower #endif 43*41585Ssklower 0, hd_output, hd_ctlinput, 0, 44*41585Ssklower 0, 45*41585Ssklower hd_init, 0, hd_timer, 0, 46*41585Ssklower }, 47*41585Ssklower #endif 48*41585Ssklower #ifdef BSD4_3 49*41585Ssklower { SOCK_STREAM, &ccittdomain, CCITTPROTO_X25, PR_CONNREQUIRED|PR_ATOMIC|PR_WANTRCVD, 50*41585Ssklower #else 51*41585Ssklower { SOCK_STREAM, PF_CCITT, CCITTPROTO_X25, PR_CONNREQUIRED|PR_ATOMIC|PR_WANTRCVD, 52*41585Ssklower #endif 53*41585Ssklower 0, 0, 0, 0, 54*41585Ssklower pk_usrreq, 55*41585Ssklower 0, 0, pk_timer, 0, 56*41585Ssklower } 57*41585Ssklower }; 58*41585Ssklower 59*41585Ssklower struct domain ccittdomain = 60*41585Ssklower #ifdef BSD4_3 61*41585Ssklower { AF_CCITT, "ccitt", 0, 0, 0, ccittsw, 62*41585Ssklower &ccittsw[sizeof(ccittsw)/sizeof(ccittsw[0])] }; 63*41585Ssklower #else 64*41585Ssklower { AF_CCITT, "ccitt", ccittsw, &ccittsw[sizeof(ccittsw)/sizeof(ccittsw[0])] }; 65*41585Ssklower #endif 66*41585Ssklower 67