1 /* 2 * Copyright 2003-2004, Haiku Inc. 3 * Distributed under the terms of the MIT License. 4 */ 5 6 #ifndef _K_PPP_DEFS__H 7 #define _K_PPP_DEFS__H 8 9 #include <KernelExport.h> 10 #include <PPPDefs.h> 11 12 13 // debugging macros 14 #define ERROR(format, args...) dprintf(format, ## args) 15 #ifdef DEBUG 16 #define TRACE(format, args...) dprintf(format, ## args) 17 #else 18 #define TRACE(format, args...) 19 #endif 20 21 22 extern struct core_module_info *core; 23 // needed by core quick-access function defines 24 25 26 // various constants 27 #define PPP_PULSE_RATE 500000 28 //!< Rate at which Pulse() is called (in microseconds). 29 #define PPP_RESPONSE_TEST_CODE '_3PT' 30 // private code used to test if ppp_up did not crash 31 32 33 //! Module key types used when loading a module. 34 enum ppp_module_key_type { 35 PPP_UNDEFINED_KEY_TYPE = -1, 36 PPP_LOAD_MODULE_KEY_TYPE = 0, 37 PPP_DEVICE_KEY_TYPE, 38 PPP_PROTOCOL_KEY_TYPE, 39 PPP_AUTHENTICATOR_KEY_TYPE, 40 PPP_MULTILINK_KEY_TYPE 41 }; 42 43 //! PPP events as defined in RFC 1661 (with one exception: PPP_UP_FAILED_EVENT). 44 enum ppp_event { 45 PPP_UP_FAILED_EVENT, 46 PPP_UP_EVENT, 47 PPP_DOWN_EVENT, 48 PPP_OPEN_EVENT, 49 PPP_CLOSE_EVENT, 50 PPP_TO_GOOD_EVENT, 51 PPP_TO_BAD_EVENT, 52 PPP_RCR_GOOD_EVENT, 53 PPP_RCR_BAD_EVENT, 54 PPP_RCA_EVENT, 55 PPP_RCN_EVENT, 56 PPP_RTR_EVENT, 57 PPP_RTA_EVENT, 58 PPP_RUC_EVENT, 59 PPP_RXJ_GOOD_EVENT, 60 PPP_RXJ_BAD_EVENT, 61 PPP_RXR_EVENT 62 }; 63 64 //! LCP protocol codes as defined in RFC 1661. 65 enum ppp_lcp_code { 66 PPP_CONFIGURE_REQUEST = 1, 67 PPP_CONFIGURE_ACK = 2, 68 PPP_CONFIGURE_NAK = 3, 69 PPP_CONFIGURE_REJECT = 4, 70 PPP_TERMINATE_REQUEST = 5, 71 PPP_TERMINATE_ACK = 6, 72 PPP_CODE_REJECT = 7, 73 PPP_PROTOCOL_REJECT = 8, 74 PPP_ECHO_REQUEST = 9, 75 PPP_ECHO_REPLY = 10, 76 PPP_DISCARD_REQUEST = 11 77 78 // ToDo: add LCP extensions 79 }; 80 81 #define PPP_MIN_LCP_CODE PPP_CONFIGURE_REQUEST 82 #define PPP_MAX_LCP_CODE PPP_DISCARD_REQUEST 83 84 85 #endif 86