Mac OS 9
OpenTransportProtocol.h File Reference

Definitions likely to be used by low-level protocol stack implementation. More...

#include <ConditionalMacros.h>
#include <Files.h>
#include <CodeFragments.h>
#include <OpenTransport.h>

Go to the source code of this file.

Data Structures

struct  module_stat
 
struct  cred
 
struct  free_rtn
 
union  datab_db_f
 
struct  datab
 
struct  msgb
 
struct  copyreq
 
struct  copyresp
 
struct  iocblk
 
struct  linkblk
 
struct  strpfp
 
struct  stroptions
 
struct  bandinfo
 
struct  strfdinsert
 
struct  str_mlist
 
struct  str_list
 
struct  strpeek
 
struct  strpmsg
 
struct  strrecvfd
 
struct  strioctl
 
struct  log_ctl
 
struct  trace_ids
 
struct  T_addr_ack
 
struct  T_addr_req
 
struct  T_bind_ack
 
struct  T_bind_req
 
struct  T_conn_con
 
struct  T_conn_ind
 
struct  T_conn_req
 
struct  T_conn_res
 
struct  T_data_ind
 
struct  T_data_req
 
struct  T_discon_ind
 
struct  T_discon_req
 
struct  T_exdata_ind
 
struct  T_exdata_req
 
struct  T_error_ack
 
struct  T_info_ack
 
struct  T_info_req
 
struct  T_ok_ack
 
struct  T_optmgmt_ack
 
struct  T_optmgmt_req
 
struct  T_ordrel_ind
 
struct  T_ordrel_req
 
struct  T_unbind_req
 
struct  T_uderror_ind
 
struct  T_unitdata_ind
 
struct  T_unitdata_req
 
struct  T_resolveaddr_ack
 
struct  T_resolveaddr_req
 
struct  T_unitreply_ind
 
struct  T_unitrequest_ind
 
struct  T_unitrequest_req
 
struct  T_unitreply_req
 
struct  T_unitreply_ack
 
struct  T_cancelrequest_req
 
struct  T_cancelreply_req
 
struct  T_reply_ind
 
struct  T_request_ind
 
struct  T_request_req
 
struct  T_reply_req
 
struct  T_reply_ack
 
struct  T_regname_req
 
struct  T_regname_ack
 
struct  T_delname_req
 
struct  T_lkupname_req
 
struct  T_lkupname_con
 
struct  T_sequence_ack
 
struct  T_event_ind
 
union  T_primitives
 
struct  dl_through_t
 
struct  dl_transdelay_t
 
struct  dl_priority_t
 
struct  dl_protect_t
 
struct  dl_resilience_t
 
struct  dl_qos_co_range1_t
 
struct  dl_qos_co_sel1_t
 
struct  dl_qos_cl_range1_t
 
struct  dl_qos_cl_sel1_t
 
struct  dl_info_req_t
 
struct  dl_info_ack_t
 
struct  dl_attach_req_t
 
struct  dl_detach_req_t
 
struct  dl_bind_req_t
 
struct  dl_bind_ack_t
 
struct  dl_subs_bind_req_t
 
struct  dl_subs_bind_ack_t
 
struct  dl_unbind_req_t
 
struct  dl_subs_unbind_req_t
 
struct  dl_ok_ack_t
 
struct  dl_error_ack_t
 
struct  dl_enabmulti_req_t
 
struct  dl_disabmulti_req_t
 
struct  dl_promiscon_req_t
 
struct  dl_promiscoff_req_t
 
struct  dl_phys_addr_req_t
 
struct  dl_phys_addr_ack_t
 
struct  dl_set_phys_addr_req_t
 
struct  dl_get_statistics_req_t
 
struct  dl_get_statistics_ack_t
 
struct  dl_connect_req_t
 
struct  dl_connect_ind_t
 
struct  dl_connect_res_t
 
struct  dl_connect_con_t
 
struct  dl_token_req_t
 
struct  dl_token_ack_t
 
struct  dl_disconnect_req_t
 
struct  dl_disconnect_ind_t
 
struct  dl_reset_req_t
 
struct  dl_reset_ind_t
 
struct  dl_reset_res_t
 
struct  dl_reset_con_t
 
struct  dl_unitdata_req_t
 
struct  dl_unitdata_ind_t
 
struct  dl_uderror_ind_t
 
struct  dl_udqos_req_t
 
struct  dl_test_req_t
 
struct  dl_test_ind_t
 
struct  dl_test_res_t
 
struct  dl_test_con_t
 
struct  dl_xid_req_t
 
struct  dl_xid_ind_t
 
struct  dl_xid_res_t
 
struct  dl_xid_con_t
 
struct  dl_data_ack_req_t
 
struct  dl_data_ack_ind_t
 
struct  dl_data_ack_status_ind_t
 
struct  dl_reply_req_t
 
struct  dl_reply_ind_t
 
struct  dl_reply_status_ind_t
 
struct  dl_reply_update_req_t
 
struct  dl_reply_update_status_ind_t
 
union  DL_primitives
 
struct  PollRef
 
struct  OTReadInfo
 
struct  OTPortCloseStruct
 
struct  OTClientList
 
struct  OTStateMachine
 
struct  OTAutopushInfo
 
struct  OTResourceLocator
 
struct  OTHashList
 
struct  OTGate
 
struct  CFMLibraryInfo
 

Macros

#define db_freep   db_f.freep
 
#define db_frtnp   db_f.frtnp
 
#define cq_uid   cq_cr->cr_uid
 
#define cq_gid   cq_cr->cr_gid
 
#define cp_uid   cp_cr->cr_uid
 
#define cp_gid   cp_cr->cr_gid
 
#define ioc_uid   ioc_cr->cr_uid
 
#define ioc_gid   ioc_cr->cr_gid
 
#define datamsg(type)
 
#define DLIOCRAW   MIOC_CMD(MIOC_DLPI, 1)
 
#define MI_AFU_NAME   "afu"
 
#define MI_AHARP_NAME   "ahar"
 
#define MI_AHENET_NAME   "ahen"
 
#define MI_ARP_NAME   "arp"
 
#define MI_ARPM_NAME   "arpm"
 
#define MI_COURMUX_NAME   "courmux"
 
#define MI_CLONE_NAME   "clone"
 
#define MI_DLB_NAME   "dlb"
 
#define MI_DLM_NAME   "dlm"
 
#define MI_DMODD_NAME   "disdlpi"
 
#define MI_DMODT_NAME   "distpi"
 
#define MI_DN_NAME   "dn"
 
#define MI_DNF_NAME   "dnf"
 
#define MI_DRVE_NAME   "drve"
 
#define MI_ECHO_NAME   "echo"
 
#define MI_ENXR_NAME   "enxr"
 
#define MI_RAWIP_NAME   "rawip"
 
#define MI_RAWIPM_NAME   "rawipm"
 
#define MI_HAVOC_NAME   "havoc"
 
#define MI_HAVOCM_NAME   "havocm"
 
#define MI_IP_NAME   "ip"
 
#define MI_IPM_NAME   "ipm"
 
#define MI_IPX_NAME   "ipx"
 
#define MI_LOG_NAME   "log"
 
#define MI_MODE_NAME   "mode"
 
#define MI_MUX_NAME   "mux"
 
#define MI_NECHO_NAME   "necho"
 
#define MI_NPEP_NAME   "npep"
 
#define MI_NULS_NAME   "nuls"
 
#define MI_NULZ_NAME   "nulz"
 
#define MI_PASS_NAME   "pass"
 
#define MI_PIPEMOD_NAME   "pipemod"
 
#define MI_SAD_NAME   "sad"
 
#define MI_SC_NAME   "sc"
 
#define MI_SOCKMOD_NAME   "sockmod"
 
#define MI_SPASS_NAME   "spass"
 
#define MI_SPX_NAME   "spx"
 
#define MI_STH_NAME   "mi_sth"
 
#define MI_TCP_NAME   "tcp"
 
#define MI_TCPM_NAME   "tcpm"
 
#define MI_TIMOD_NAME   "timod"
 
#define MI_TIRDWR_NAME   "tirdwr"
 
#define MI_TMOD_NAME   "tmod"
 
#define MI_TMUX_NAME   "tmux"
 
#define MI_TPIT_NAME   "tpit"
 
#define MI_TRSR_NAME   "trsr"
 
#define MI_TRXR_NAME   "trxr"
 
#define MI_UDP_NAME   "udp"
 
#define MI_UDPM_NAME   "udpm"
 
#define MI_WELD_NAME   "mi_weld"
 
#define MI_XDG_NAME   "xdg"
 
#define MI_XECHO_NAME   "xecho"
 
#define MI_XF_NAME   "xf"
 
#define MI_XFIPX_NAME   "xfipx"
 
#define MI_XFXNS_NAME   "xfxns"
 
#define MI_XPE_NAME   "xpe"
 
#define MI_XS_NAME   "xs"
 
#define MI_XTINDG_NAME   "xtindg"
 
#define MI_XTINVC_NAME   "xtinvc"
 
#define MI_XTM_NAME   "xtm"
 
#define MI_XTMIP_NAME   "xtmip"
 
#define MI_AFU_DEVICE   "/dev/afu"
 
#define MI_ARP_DEVICE   "/dev/arp"
 
#define MI_COURMUX_DEVICE   "/dev/courmux"
 
#define MI_CLONE_DEVICE   "/dev/clone"
 
#define MI_DLB_DEVICE   "/dev/dlb"
 
#define MI_DN_DEVICE   "/dev/dn"
 
#define MI_DNF_DEVICE   "/dev/dnf"
 
#define MI_DRVE_DEVICE   "/dev/drve"
 
#define MI_ECHO_DEVICE   "/dev/echo"
 
#define MI_RAWIP_DEVICE   "/dev/rawip"
 
#define MI_HAVOC_DEVICE   "/dev/havoc"
 
#define MI_IP_DEVICE   "/dev/ip"
 
#define MI_IPX_DEVICE   "/dev/ipx"
 
#define MI_LOG_DEVICE   "/dev/log"
 
#define MI_MODE_DEVICE   "/dev/mode"
 
#define MI_MUX_DEVICE   "/dev/mux"
 
#define MI_NECHO_DEVICE   "/dev/necho"
 
#define MI_NPEP_DEVICE   "/dev/npep"
 
#define MI_NULS_DEVICE   "/dev/nuls"
 
#define MI_NULZ_DEVICE   "/dev/nulz"
 
#define MI_SAD_DEVICE   "/dev/sad"
 
#define MI_SPX_DEVICE   "/dev/spx"
 
#define MI_TCP_DEVICE   "/dev/tcp"
 
#define MI_TMUX_DEVICE   "/dev/tmux"
 
#define MI_TMUX0_DEVICE   "/dev/tmux#0"
 
#define MI_TMUX1_DEVICE   "/dev/tmux#1"
 
#define MI_TPIT_DEVICE   "/dev/tpit"
 
#define MI_UDP_DEVICE   "/dev/udp"
 
#define MI_XDG_DEVICE   "/dev/xdg"
 
#define MI_XECHO_DEVICE   "/dev/xecho"
 
#define MI_XF_DEVICE   "/dev/xf"
 
#define MI_XPE_DEVICE   "/dev/xpe"
 
#define MI_XS_DEVICE   "/dev/xs"
 
#define MI_XTINDG_DEVICE   "/dev/xtindg"
 
#define MI_XTINVC_DEVICE   "/dev/xtinvc"
 
#define MI_AFU_STREAMTAB   afuinfo
 
#define MI_AHARP_STREAMTAB   aharinfo
 
#define MI_AHENET_STREAMTAB   aheninfo
 
#define MI_ARP_STREAMTAB   arpinfo
 
#define MI_ARPM_STREAMTAB   arpminfo
 
#define MI_COURMUX_STREAMTAB   courmuxinfo
 
#define MI_CLONE_STREAMTAB   cloneinfo
 
#define MI_DLB_STREAMTAB   dlbinfo
 
#define MI_DLM_STREAMTAB   dlminfo
 
#define MI_DMODD_STREAMTAB   dmoddinfo
 
#define MI_DMODT_STREAMTAB   dmodtinfo
 
#define MI_DN_STREAMTAB   dninfo
 
#define MI_DNF_STREAMTAB   dnfinfo
 
#define MI_DRVE_STREAMTAB   drveinfo
 
#define MI_ECHO_STREAMTAB   echoinfo
 
#define MI_ENXR_STREAMTAB   enxrinfo
 
#define MI_HAVOC_STREAMTAB   hvcinfo
 
#define MI_HAVOCM_STREAMTAB   hvcminfo
 
#define MI_IP_STREAMTAB   ipinfo
 
#define MI_IPM_STREAMTAB   ipminfo
 
#define MI_IPX_STREAMTAB   ipxinfo
 
#define MI_LOG_STREAMTAB   loginfo
 
#define MI_MODE_STREAMTAB   modeinfo
 
#define MI_MUX_STREAMTAB   muxinfo
 
#define MI_NECHO_STREAMTAB   nechoinfo
 
#define MI_NPEP_STREAMTAB   npepinfo
 
#define MI_NULS_STREAMTAB   nulsinfo
 
#define MI_NULZ_STREAMTAB   nulzinfo
 
#define MI_PASS_STREAMTAB   passinfo
 
#define MI_PIPEMOD_STREAMTAB   pmodinfo
 
#define MI_RAWIP_STREAMTAB   rawipinfo
 
#define MI_RAWIPM_STREAMTAB   rawipminfo
 
#define MI_SAD_STREAMTAB   sadinfo
 
#define MI_SC_STREAMTAB   scinfo
 
#define MI_SOCKMOD_STREAMTAB   sockmodinfo
 
#define MI_SPASS_STREAMTAB   spassinfo
 
#define MI_SPX_STREAMTAB   spxinfo
 
#define MI_STH_STREAMTAB   mi_sthinfo
 
#define MI_TCP_STREAMTAB   tcpinfo
 
#define MI_TCPM_STREAMTAB   tcpminfo
 
#define MI_TIMOD_STREAMTAB   timodinfo
 
#define MI_TIRDWR_STREAMTAB   tirdwrinfo
 
#define MI_TMOD_STREAMTAB   tmodinfo
 
#define MI_TMUX_STREAMTAB   tmuxinfo
 
#define MI_TPIT_STREAMTAB   tpitinfo
 
#define MI_TRSR_STREAMTAB   trsrinfo
 
#define MI_TRXR_STREAMTAB   trxrinfo
 
#define MI_UDP_STREAMTAB   udpinfo
 
#define MI_UDPM_STREAMTAB   udpminfo
 
#define MI_WELD_STREAMTAB   mi_weldinfo
 
#define MI_XDG_STREAMTAB   xdginfo
 
#define MI_XECHO_STREAMTAB   xechoinfo
 
#define MI_XF_STREAMTAB   xfinfo
 
#define MI_XFIPX_STREAMTAB   xfipxinfo
 
#define MI_XFXNS_STREAMTAB   xfxnsinfo
 
#define MI_XPE_STREAMTAB   xpeinfo
 
#define MI_XS_STREAMTAB   xsinfo
 
#define MI_XTINDG_STREAMTAB   xtindginfo
 
#define MI_XTINVC_STREAMTAB   xtinvcinfo
 
#define MI_XTM_STREAMTAB   xtminfo
 
#define MI_XTMIP_STREAMTAB   xtmipinfo
 
#define MI_AFU_DEVFLAG   afudevflag
 
#define MI_AHARP_DEVFLAG   ahardevflag
 
#define MI_AHENET_DEVFLAG   ahendevflag
 
#define MI_ARP_DEVFLAG   arpdevflag
 
#define MI_ARPM_DEVFLAG   arpmdevflag
 
#define MI_COURMUX_DEVFLAG   courmuxdevflag
 
#define MI_CLONE_DEVFLAG   clonedevflag
 
#define MI_DLB_DEVFLAG   dlbdevflag
 
#define MI_DLM_DEVFLAG   dlmdevflag
 
#define MI_DMODD_DEVFLAG   dmodddevflag
 
#define MI_DMODT_DEVFLAG   dmodtdevflag
 
#define MI_DN_DEVFLAG   dndevflag
 
#define MI_DNF_DEVFLAG   dnfdevflag
 
#define MI_DRVE_DEVFLAG   drvedevflag
 
#define MI_ECHO_DEVFLAG   echodevflag
 
#define MI_ENXR_DEVFLAG   enxrdevflag
 
#define MI_HAVOC_DEVFLAG   hvcdevflag
 
#define MI_HAVOCM_DEVFLAG   hvcmdevflag
 
#define MI_IP_DEVFLAG   ipdevflag
 
#define MI_IPM_DEVFLAG   ipmdevflag
 
#define MI_IPX_DEVFLAG   ipxdevflag
 
#define MI_LOG_DEVFLAG   logdevflag
 
#define MI_MODE_DEVFLAG   modedevflag
 
#define MI_MUX_DEVFLAG   muxdevflag
 
#define MI_NECHO_DEVFLAG   nechodevflag
 
#define MI_NPEP_DEVFLAG   npepdevflag
 
#define MI_NULS_DEVFLAG   nulsdevflag
 
#define MI_NULZ_DEVFLAG   nulzdevflag
 
#define MI_PASS_DEVFLAG   passdevflag
 
#define MI_PIPEMOD_DEVFLAG   pipemoddevflag
 
#define MI_RAWIP_DEVFLAG   rawipdevflag
 
#define MI_RAWIPM_DEVFLAG   rawipmdevflag
 
#define MI_SAD_DEVFLAG   saddevflag
 
#define MI_SC_DEVFLAG   scdevflag
 
#define MI_SOCKMOD_DEVFLAG   sockmoddevflag
 
#define MI_SPASS_DEVFLAG   spassdevflag
 
#define MI_SPX_DEVFLAG   spxdevflag
 
#define MI_TCP_DEVFLAG   tcpdevflag
 
#define MI_TCPM_DEVFLAG   tcpmdevflag
 
#define MI_TIMOD_DEVFLAG   timoddevflag
 
#define MI_TIRDWR_DEVFLAG   tirdwrdevflag
 
#define MI_TMOD_DEVFLAG   tmoddevflag
 
#define MI_TMUX_DEVFLAG   tmuxdevflag
 
#define MI_TPIT_DEVFLAG   tpitdevflag
 
#define MI_TRSR_DEVFLAG   trsrdevflag
 
#define MI_TRXR_DEVFLAG   trxrdevflag
 
#define MI_UDP_DEVFLAG   udpdevflag
 
#define MI_UDPM_DEVFLAG   udpmdevflag
 
#define MI_XDG_DEVFLAG   xdgdevflag
 
#define MI_XECHO_DEVFLAG   xechodevflag
 
#define MI_XF_DEVFLAG   xfdevflag
 
#define MI_XFIPX_DEVFLAG   xfipxdevflag
 
#define MI_XFXNS_DEVFLAG   xfxnsdevflag
 
#define MI_XPE_DEVFLAG   xpedevflag
 
#define MI_XS_DEVFLAG   xsdevflag
 
#define MI_XTINDG_DEVFLAG   xtindgdevflag
 
#define MI_XTINVC_DEVFLAG   xtinvcdevflag
 
#define MI_XTM_DEVFLAG   xtmdevflag
 
#define MI_XTMIP_DEVFLAG   xtmipdevflag
 
#define MI_AFU_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_AHARP_SQLVL   SQLVL_QUEUE
 
#define MI_AHENET_SQLVL   SQLVL_QUEUE
 
#define MI_ARP_SQLVL   SQLVL_MODULE
 
#define MI_ARPM_SQLVL   SQLVL_MODULE
 
#define MI_COURMUX_SQLVL   SQLVL_MODULE
 
#define MI_CLONE_SQLVL   SQLVL_MODULE
 
#define MI_DLB_SQLVL   SQLVL_QUEUE
 
#define MI_DLM_SQLVL   SQLVL_QUEUE
 
#define MI_DMODD_SQLVL   SQLVL_QUEUE
 
#define MI_DMODT_SQLVL   SQLVL_QUEUE
 
#define MI_DN_SQLVL   SQLVL_QUEUE
 
#define MI_DNF_SQLVL   SQLVL_QUEUE
 
#define MI_DRVE_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_ECHO_SQLVL   SQLVL_QUEUE
 
#define MI_ENXR_SQLVL   SQLVL_QUEUE
 
#define MI_RAWIP_SQLVL   SQLVL_QUEUE
 
#define MI_RAWIPM_SQLVL   SQLVL_QUEUE
 
#define MI_HAVOC_SQLVL   SQLVL_QUEUE
 
#define MI_HAVOCM_SQLVL   SQLVL_QUEUE
 
#define MI_IP_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_IPM_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_IPX_SQLVL   SQLVL_QUEUE
 
#define MI_LOG_SQLVL   SQLVL_MODULE
 
#define MI_MODE_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_MUX_SQLVL   SQLVL_MODULE
 
#define MI_NECHO_SQLVL   SQLVL_QUEUE
 
#define MI_NPEP_SQLVL   SQLVL_QUEUE
 
#define MI_NULS_SQLVL   SQLVL_QUEUE
 
#define MI_NULZ_SQLVL   SQLVL_QUEUE
 
#define MI_PASS_SQLVL   SQLVL_QUEUE
 
#define MI_PIPEMOD_SQLVL   SQLVL_QUEUE
 
#define MI_SAD_SQLVL   SQLVL_MODULE
 
#define MI_SC_SQLVL   SQLVL_QUEUE
 
#define MI_SOCKMOD_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_SPASS_SQLVL   SQLVL_QUEUE
 
#define MI_SPX_SQLVL   SQLVL_QUEUE
 
#define MI_TCP_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_TCPM_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_TIMOD_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_TIRDWR_SQLVL   SQLVL_QUEUE
 
#define MI_TMOD_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_TMUX_SQLVL   SQLVL_MODULE
 
#define MI_TPIT_SQLVL   SQLVL_MODULE
 
#define MI_TRSR_SQLVL   SQLVL_MODULE
 
#define MI_TRXR_SQLVL   SQLVL_QUEUE
 
#define MI_UDP_SQLVL   SQLVL_QUEUE
 
#define MI_UDPM_SQLVL   SQLVL_QUEUE
 
#define MI_XDG_SQLVL   SQLVL_QUEUE
 
#define MI_XECHO_SQLVL   SQLVL_QUEUE
 
#define MI_XF_SQLVL   SQLVL_MODULE
 
#define MI_XFIPX_SQLVL   SQLVL_MODULE
 
#define MI_XFXNS_SQLVL   SQLVL_MODULE
 
#define MI_XPE_SQLVL   SQLVL_QUEUE
 
#define MI_XS_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_XTINDG_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_XTINVC_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_XTM_SQLVL   SQLVL_QUEUEPAIR
 
#define MI_XTMIP_SQLVL   SQLVL_QUEUEPAIR
 
#define kOTInvalidStreamRef   ((StreamRef)0L)
 
#define POLLIN   0x001 /** A non-priority message is available */
 
#define POLLPRI   0x002 /** A high priority message is available */
 
#define POLLOUT   0x004 /** The stream is writable for non-priority messages */
 
#define POLLERR   0x008 /** A error message has arrived */
 
#define POLLHUP   0x010 /** A hangup has occurred */
 
#define POLLNVAL    0x020 /** This fd is bogus */
 
#define POLLRDNORM    0x040 /** A non-priority message is available */
 
#define POLLRDBAND    0x080 /** A priority message (band > 0) message is available */
 
#define POLLWRNORM    0x100 /** Same as POLLOUT */
 
#define POLLWRBAND    0x200 /** A priority band exists and is writable */
 
#define POLLMSG
 
#define kOTConfiguratorInterfaceID   kOTClientPrefix "cfigMkr"
 
#define kOTConfiguratorCFMTag   kOTClientPrefix "cfigMkr"
 
#define kOTSetupConfiguratorID   "OTSetupConfigurator"
 
#define kIsReliable   0x00000001
 
#define kIsNotReliable   0x00000002
 
#define kSupportsOrderlyRelease   0x00000004
 
#define kStream   0x0001
 
#define kUStream   0x0002
 
#define kTransaction   0x0004
 
#define kUTransaction   0x0008
 
#define kMapper   0x0010
 
#define kGenericProtocol   0x0020
 
#define kBooleanOption   0
 
#define kUnsignedValueOption   1
 
#define kSignedValueOption   2
 
#define kHexValueOption   3
 
#define kPrintableStringOption   4
 
#define kOctetStringOption   5
 
#define kTPIInterface   'TPI '
 
#define kDLPIInterface   'DLPI'
 
#define kMapperInterface   'MAPR'
 
#define kPrivateInterface   -1
 
#define kNoInterface   0
 
#define kOTSMBufferSize(callDepth)   (80 + (callDepth * 8))
 
#define kSADModuleName   "sad"
 
#define kPortConfigLibPrefix   "OTPortCfg$"
 
#define kOTGetUserPortNameID   "OTGetUserPortName"
 
#define kOTGetPortIconID   "OTGetPortIcon"
 

Typedefs

typedef UInt32 uid_t
 
typedef UInt32 gid_t
 
typedef UInt32 dev_t
 
typedef struct module_stat module_stat
 
typedef struct cred cred
 
typedef cred cred_t
 
typedef struct free_rtn free_rtn
 
typedef free_rtn frtn_t
 
typedef struct datab datab
 
typedef union datab_db_f datab_db_f
 
typedef datab dblk_t
 
typedef struct msgb msgb
 
typedef msgb mblk_t
 
typedef struct sth_s sth_s
 
typedef struct sqh_s sqh_s
 
typedef struct q_xtra q_xtra
 
typedef SInt32 queue_t
 
typedef char * caddr_t
 
typedef struct copyreq copyreq
 
typedef struct copyresp copyresp
 
typedef struct iocblk iocblk
 
typedef struct linkblk linkblk
 
typedef struct strpfp strpfp
 
typedef struct stroptions stroptions
 
typedef SInt32 qfields
 
typedef qfields qfields_t
 
typedef struct bandinfo bandinfo
 
typedef struct strfdinsert strfdinsert
 
typedef struct str_mlist str_mlist
 
typedef struct str_list str_list
 
typedef struct strpeek strpeek
 
typedef struct strpmsg strpmsg
 
typedef struct strrecvfd strrecvfd
 
typedef struct strioctl strioctl
 
typedef struct log_ctl log_ctl
 
typedef struct trace_ids trace_ids
 
typedef struct T_addr_ack T_addr_ack
 
typedef struct T_addr_req T_addr_req
 
typedef struct T_bind_ack T_bind_ack
 
typedef struct T_bind_req T_bind_req
 
typedef struct T_conn_con T_conn_con
 
typedef struct T_conn_ind T_conn_ind
 
typedef struct T_conn_req T_conn_req
 
typedef struct T_conn_res T_conn_res
 
typedef struct T_data_ind T_data_ind
 
typedef struct T_data_req T_data_req
 
typedef struct T_discon_ind T_discon_ind
 
typedef struct T_discon_req T_discon_req
 
typedef struct T_exdata_ind T_exdata_ind
 
typedef struct T_exdata_req T_exdata_req
 
typedef struct T_error_ack T_error_ack
 
typedef struct T_info_ack T_info_ack
 
typedef struct T_info_req T_info_req
 
typedef struct T_ok_ack T_ok_ack
 
typedef struct T_optmgmt_ack T_optmgmt_ack
 
typedef struct T_optmgmt_req T_optmgmt_req
 
typedef struct T_ordrel_ind T_ordrel_ind
 
typedef struct T_ordrel_req T_ordrel_req
 
typedef struct T_unbind_req T_unbind_req
 
typedef struct T_uderror_ind T_uderror_ind
 
typedef struct T_unitdata_ind T_unitdata_ind
 
typedef struct T_unitdata_req T_unitdata_req
 
typedef struct T_resolveaddr_ack T_resolveaddr_ack
 
typedef struct T_resolveaddr_req T_resolveaddr_req
 
typedef struct T_unitreply_ind T_unitreply_ind
 
typedef struct T_unitrequest_ind T_unitrequest_ind
 
typedef struct T_unitrequest_req T_unitrequest_req
 
typedef struct T_unitreply_req T_unitreply_req
 
typedef struct T_unitreply_ack T_unitreply_ack
 
typedef struct T_cancelrequest_req T_cancelrequest_req
 
typedef struct T_cancelreply_req T_cancelreply_req
 
typedef struct T_reply_ind T_reply_ind
 
typedef struct T_request_ind T_request_ind
 
typedef struct T_request_req T_request_req
 
typedef struct T_reply_req T_reply_req
 
typedef struct T_reply_ack T_reply_ack
 
typedef struct T_regname_req T_regname_req
 
typedef struct T_regname_ack T_regname_ack
 
typedef struct T_delname_req T_delname_req
 
typedef struct T_lkupname_req T_lkupname_req
 
typedef struct T_lkupname_con T_lkupname_con
 
typedef struct T_sequence_ack T_sequence_ack
 
typedef struct T_event_ind T_event_ind
 
typedef union T_primitives T_primitives
 
typedef struct dl_through_t dl_through_t
 
typedef struct dl_transdelay_t dl_transdelay_t
 
typedef struct dl_priority_t dl_priority_t
 
typedef struct dl_protect_t dl_protect_t
 
typedef struct dl_resilience_t dl_resilience_t
 
typedef struct dl_qos_co_range1_t dl_qos_co_range1_t
 
typedef struct dl_qos_co_sel1_t dl_qos_co_sel1_t
 
typedef struct dl_qos_cl_range1_t dl_qos_cl_range1_t
 
typedef struct dl_qos_cl_sel1_t dl_qos_cl_sel1_t
 
typedef struct dl_info_req_t dl_info_req_t
 
typedef struct dl_info_ack_t dl_info_ack_t
 
typedef struct dl_attach_req_t dl_attach_req_t
 
typedef struct dl_detach_req_t dl_detach_req_t
 
typedef struct dl_bind_req_t dl_bind_req_t
 
typedef struct dl_bind_ack_t dl_bind_ack_t
 
typedef struct dl_subs_bind_req_t dl_subs_bind_req_t
 
typedef struct dl_subs_bind_ack_t dl_subs_bind_ack_t
 
typedef struct dl_unbind_req_t dl_unbind_req_t
 
typedef struct dl_subs_unbind_req_t dl_subs_unbind_req_t
 
typedef struct dl_ok_ack_t dl_ok_ack_t
 
typedef struct dl_error_ack_t dl_error_ack_t
 
typedef struct dl_enabmulti_req_t dl_enabmulti_req_t
 
typedef struct dl_disabmulti_req_t dl_disabmulti_req_t
 
typedef struct dl_promiscon_req_t dl_promiscon_req_t
 
typedef struct dl_promiscoff_req_t dl_promiscoff_req_t
 
typedef struct dl_phys_addr_req_t dl_phys_addr_req_t
 
typedef struct dl_phys_addr_ack_t dl_phys_addr_ack_t
 
typedef struct dl_set_phys_addr_req_t dl_set_phys_addr_req_t
 
typedef struct dl_get_statistics_req_t dl_get_statistics_req_t
 
typedef struct dl_get_statistics_ack_t dl_get_statistics_ack_t
 
typedef struct dl_connect_req_t dl_connect_req_t
 
typedef struct dl_connect_ind_t dl_connect_ind_t
 
typedef struct dl_connect_res_t dl_connect_res_t
 
typedef struct dl_connect_con_t dl_connect_con_t
 
typedef struct dl_token_req_t dl_token_req_t
 
typedef struct dl_token_ack_t dl_token_ack_t
 
typedef struct dl_disconnect_req_t dl_disconnect_req_t
 
typedef struct dl_disconnect_ind_t dl_disconnect_ind_t
 
typedef struct dl_reset_req_t dl_reset_req_t
 
typedef struct dl_reset_ind_t dl_reset_ind_t
 
typedef struct dl_reset_res_t dl_reset_res_t
 
typedef struct dl_reset_con_t dl_reset_con_t
 
typedef struct dl_unitdata_req_t dl_unitdata_req_t
 
typedef struct dl_unitdata_ind_t dl_unitdata_ind_t
 
typedef struct dl_uderror_ind_t dl_uderror_ind_t
 
typedef struct dl_udqos_req_t dl_udqos_req_t
 
typedef struct dl_test_req_t dl_test_req_t
 
typedef struct dl_test_ind_t dl_test_ind_t
 
typedef struct dl_test_res_t dl_test_res_t
 
typedef struct dl_test_con_t dl_test_con_t
 
typedef struct dl_xid_req_t dl_xid_req_t
 
typedef struct dl_xid_ind_t dl_xid_ind_t
 
typedef struct dl_xid_res_t dl_xid_res_t
 
typedef struct dl_xid_con_t dl_xid_con_t
 
typedef struct dl_data_ack_req_t dl_data_ack_req_t
 
typedef struct dl_data_ack_ind_t dl_data_ack_ind_t
 
typedef struct dl_data_ack_status_ind_t dl_data_ack_status_ind_t
 
typedef struct dl_reply_req_t dl_reply_req_t
 
typedef struct dl_reply_ind_t dl_reply_ind_t
 
typedef struct dl_reply_status_ind_t dl_reply_status_ind_t
 
typedef struct dl_reply_update_req_t dl_reply_update_req_t
 
typedef struct dl_reply_update_status_ind_t dl_reply_update_status_ind_t
 
typedef union DL_primitives DL_primitives
 
typedef struct OpaqueStreamRef * StreamRef
 
typedef struct PollRef PollRef
 
typedef struct OTReadInfo OTReadInfo
 
typedef struct OTPortCloseStruct OTPortCloseStruct
 
typedef struct OTClientList OTClientList
 
typedef long OTTimerTask
 
typedef struct TOTConfigurator TOTConfigurator
 
typedef TOTConfigurator * TOTConfiguratorRef
 
typedef UInt32 pass
 
typedef OTCreateConfiguratorProcPtr * createConfigurator
 
typedef OTCreateConfiguratorProcPtr UInt8 * configuratorType
 
typedef OTConfigurationRef cfig
 
typedef OTConfigurationRef OTOpenFlags oFlags
 
typedef OTConfigurationRef OTOpenFlags OTNotifyUPP proc
 
typedef OTConfigurationRef OTOpenFlags OTNotifyUPP void * contextPtr
 
typedef OTEventCode code
 
typedef OTEventCode OTResult result
 
typedef OTEventCode OTResult void * cookie
 
typedef UInt8 OTStateMachineDataPad[8]
 
typedef struct OTStateMachine OTStateMachine
 
typedef struct OTAutopushInfo OTAutopushInfo
 
typedef OTBooleanParam includeSlot
 
typedef OTBooleanParam OTBooleanParam includePort
 
typedef OTBooleanParam OTBooleanParam Str255 userVisibleName
 
typedef struct OTResourceLocator OTResourceLocator
 
typedef OTResourceLocatoriconLocation
 
typedef OTLinklinkToCheck
 
typedef struct OTHashList OTHashList
 
typedef struct OTGate OTGate
 
typedef struct CFMLibraryInfo CFMLibraryInfo
 

Enumerations

enum  { MSGMARK = 0x01 , MSGNOLOOP = 0x02 , MSGDELIM = 0x04 , MSGNOGET = 0x08 }
 
enum  { STRCTLSZ = 256 , STRMSGSZ = 8192 }
 
enum  {
  QNORM = 0 , M_DATA = 0 , M_PROTO = 1 , M_BREAK = 0x08 ,
  M_PASSFP = 0x09 , M_SIG = 0x0B , M_DELAY = 0x0C , M_CTL = 0x0D ,
  M_IOCTL = 0x0E , M_SETOPTS = 0x10 , M_RSE = 0x11
}
 
enum  { M_MI = 0x40 , M_MI_READ_RESET = 1 , M_MI_READ_SEEK = 2 , M_MI_READ_END = 4 }
 
enum  {
  QPCTL = 0x80 , M_IOCACK = 0x81 , M_IOCNAK = 0x82 , M_PCPROTO = 0x83 ,
  M_PCSIG = 0x84 , M_FLUSH = 0x86 , M_STOP = 0x87 , M_START = 0x88 ,
  M_HANGUP = 0x89 , M_ERROR = 0x8A , M_READ = 0x8B , M_COPYIN = 0x8C ,
  M_COPYOUT = 0x8D , M_IOCDATA = 0x8E , M_PCRSE = 0x90 , M_STOPI = 0x91 ,
  M_STARTI = 0x92 , M_HPDATA = 0x93
}
 
enum  { FLUSHALL = 1 , FLUSHDATA = 0 }
 
enum  { NOERROR = -1 }
 
enum  { STRCANON = 0x01 , RECOPY = 0x02 }
 
enum  { TRANSPARENT = (unsigned long)0xFFFFFFFF }
 
enum  {
  SO_ALL = 0x7FFF , SO_READOPT = 0x0001 , SO_WROFF = 0x0002 , SO_MINPSZ = 0x0004 ,
  SO_MAXPSZ = 0x0008 , SO_HIWAT = 0x0010 , SO_LOWAT = 0x0020 , SO_MREADON = 0x0040 ,
  SO_MREADOFF = 0x0080 , SO_NDELON = 0x0100 , SO_NDELOFF = 0x0200 , SO_ISTTY = 0x0400 ,
  SO_ISNTTY = 0x0800 , SO_TOSTOP = 0x1000 , SO_TONSTOP = 0x2000 , SO_BAND = 0x4000 ,
  SO_POLL_SET = 0x8000 , SO_POLL_CLR = 0x00010000
}
 
enum  { BPRI_LO = 1 , BPRI_MED = 2 , BPRI_HI = 3 }
 
enum  { INFPSZ = -1 }
 
enum  { CLONEOPEN = 0x02 , MODOPEN = 0x01 , OPENFAIL = -1 }
 
enum  {
  QHIWAT = 0 , QLOWAT = 1 , QMAXPSZ = 2 , QMINPSZ = 3 ,
  QCOUNT = 4 , QFIRST = 5 , QLAST = 6 , QFLAG = 7 ,
  QBAD = 8
}
 
enum  {
  I_NREAD , I_PUSH = ((MIOC_STREAMIO << 8) | 2) , I_POP = ((MIOC_STREAMIO << 8) | 3) , I_LOOK ,
  I_FLUSH , I_SRDOPT = ((MIOC_STREAMIO << 8) | 6) , I_GRDOPT = ((MIOC_STREAMIO << 8) | 7) , I_STR = ((MIOC_STREAMIO << 8) | 8) ,
  I_SETSIG = ((MIOC_STREAMIO << 8) | 9) , I_GETSIG = ((MIOC_STREAMIO << 8) | 10) , I_FIND = ((MIOC_STREAMIO << 8) | 11) , I_LINK = ((MIOC_STREAMIO << 8) | 12) ,
  I_UNLINK = ((MIOC_STREAMIO << 8) | 13) , I_PEEK = ((MIOC_STREAMIO << 8) | 15) , I_FDINSERT , I_SENDFD ,
  I_RECVFD = ((MIOC_STREAMIO << 8) | 18) , I_FLUSHBAND , I_SWROPT = ((MIOC_STREAMIO << 8) | 20) , I_GWROPT = ((MIOC_STREAMIO << 8) | 21) ,
  I_LIST , I_ATMARK , I_CKBAND , I_GETBAND ,
  I_CANPUT , I_SETCLTIME = ((MIOC_STREAMIO << 8) | 27) , I_GETCLTIME , I_PLINK ,
  I_PUNLINK = ((MIOC_STREAMIO << 8) | 30) , I_GETMSG = ((MIOC_STREAMIO << 8) | 40) , I_PUTMSG = ((MIOC_STREAMIO << 8) | 41) , I_POLL = ((MIOC_STREAMIO << 8) | 42) ,
  I_SETDELAY = ((MIOC_STREAMIO << 8) | 43) , I_GETDELAY = ((MIOC_STREAMIO << 8) | 44) , I_RUN_QUEUES , I_GETPMSG = ((MIOC_STREAMIO << 8) | 46) ,
  I_PUTPMSG = ((MIOC_STREAMIO << 8) | 47) , I_AUTOPUSH , I_PIPE = ((MIOC_STREAMIO << 8) | 49) , I_HEAP_REPORT = ((MIOC_STREAMIO << 8) | 50) ,
  I_FIFO = ((MIOC_STREAMIO << 8) | 51)
}
 
enum  { RS_HIPRI = 0x01 }
 
enum  { MSG_HIPRI = 0x01 , MSG_BAND = 0x02 , MSG_ANY = 0x04 }
 
enum  { MORECTL = 0x01 , MOREDATA = 0x02 }
 
enum  { FMNAMESZ = 31 }
 
enum  { INFTIM = (unsigned long)0xFFFFFFFF }
 
enum  { FLUSHR = 0x01 , FLUSHW = 0x02 , FLUSHRW = (FLUSHW | FLUSHR) }
 
enum  { FLUSHBAND = 0x40 }
 
enum  { ANYMARK = 0x01 , LASTMARK = 0x02 }
 
enum  {
  S_INPUT = 0x01 , S_HIPRI = 0x02 , S_OUTPUT = 0x04 , S_MSG = 0x08 ,
  S_RDNORM = 0x10 , S_RDBAND = 0x20 , S_WRNORM = 0x40 , S_WRBAND = 0x80 ,
  S_ERROR = 0x0100 , S_HANGUP = 0x0200 , S_BANDURG = 0x0400
}
 
enum  { RNORM = 0x01 , RMSGD = 0x02 , RMSGN = 0x04 , RFILL = 0x08 }
 
enum  { RPROTNORM , RPROTDIS = 0x20 , RPROTDAT = 0x40 }
 
enum  { SNDZERO }
 
enum  { MUXID_ALL = -1 }
 
enum  {
  SL_FATAL = 0x01 , SL_NOTIFY = 0x02 , SL_ERROR = 0x04 , SL_TRACE = 0x08 ,
  SL_CONSOLE = 0x00 , SL_WARN = 0x20 , SL_NOTE = 0x40
}
 
enum  { I_TRCLOG = ((MIOC_STRLOG << 8) | 1) , I_ERRLOG = ((MIOC_STRLOG << 8) | 2) }
 
enum  { LOGMSGSZ = 128 }
 
enum  {
  T_BIND_REQ = 101 , T_CONN_REQ = 102 , T_CONN_RES = 103 , T_DATA_REQ = 104 ,
  T_DISCON_REQ = 105 , T_EXDATA_REQ = 106 , T_INFO_REQ = 107 , T_OPTMGMT_REQ = 108 ,
  T_ORDREL_REQ = 109 , T_UNBIND_REQ = 110 , T_UNITDATA_REQ = 111 , T_ADDR_REQ = 112 ,
  T_UREQUEST_REQ = 113 , T_REQUEST_REQ = 114 , T_UREPLY_REQ = 115 , T_REPLY_REQ = 116 ,
  T_CANCELREQUEST_REQ = 117 , T_CANCELREPLY_REQ = 118 , T_REGNAME_REQ = 119 , T_DELNAME_REQ = 120 ,
  T_LKUPNAME_REQ = 121 , T_BIND_ACK = 122 , T_CONN_CON = 123 , T_CONN_IND = 124 ,
  T_DATA_IND = 125 , T_DISCON_IND = 126 , T_ERROR_ACK = 127 , T_EXDATA_IND = 128 ,
  T_INFO_ACK = 129 , T_OK_ACK = 130 , T_OPTMGMT_ACK = 131 , T_ORDREL_IND = 132 ,
  T_UNITDATA_IND = 133 , T_UDERROR_IND = 134 , T_ADDR_ACK = 135 , T_UREQUEST_IND = 136 ,
  T_REQUEST_IND = 137 , T_UREPLY_IND = 138 , T_REPLY_IND = 139 , T_UREPLY_ACK = 140 ,
  T_REPLY_ACK = 141 , T_RESOLVEADDR_REQ = 142 , T_RESOLVEADDR_ACK = 143 , T_LKUPNAME_CON = 146 ,
  T_LKUPNAME_RES = 147 , T_REGNAME_ACK = 148 , T_SEQUENCED_ACK = 149 , T_EVENT_IND = 160
}
 
enum  {
  TS_UNBND = 1 , TS_WACK_BREQ = 2 , TS_WACK_UREQ = 3 , TS_IDLE = 4 ,
  TS_WACK_OPTREQ = 5 , TS_WACK_CREQ = 6 , TS_WCON_CREQ = 7 , TS_WRES_CIND = 8 ,
  TS_WACK_CRES = 9 , TS_DATA_XFER = 10 , TS_WIND_ORDREL = 11 , TS_WREQ_ORDREL = 12 ,
  TS_WACK_DREQ6 = 13 , TS_WACK_DREQ7 = 14 , TS_WACK_DREQ9 = 15 , TS_WACK_DREQ10 = 16 ,
  TS_WACK_DREQ11 = 17 , TS_WACK_ORDREL = 18 , TS_NOSTATES = 19 , TS_BAD_STATE = 19
}
 
enum  {
  TE_OPENED = 1 , TE_BIND = 2 , TE_OPTMGMT = 3 , TE_UNBIND = 4 ,
  TE_CLOSED = 5 , TE_CONNECT1 = 6 , TE_CONNECT2 = 7 , TE_ACCEPT1 = 8 ,
  TE_ACCEPT2 = 9 , TE_ACCEPT3 = 10 , TE_SND = 11 , TE_SNDDIS1 = 12 ,
  TE_SNDDIS2 = 13 , TE_SNDREL = 14 , TE_SNDUDATA = 15 , TE_LISTEN = 16 ,
  TE_RCVCONNECT = 17 , TE_RCV = 18 , TE_RCVDIS1 = 19 , TE_RCVDIS2 = 20 ,
  TE_RCVDIS3 = 21 , TE_RCVREL = 22 , TE_RCVUDATA = 23 , TE_RCVUDERR = 24 ,
  TE_PASS_CONN = 25 , TE_BAD_EVENT = 26
}
 
enum  { SENDZERO = 0x0001 , XPG4_1 = 0x0002 }
 
enum  { DL_CURRENT_VERSION = 0x02 , DL_VERSION_2 = 0x02 }
 
enum  {
  DL_INFO_REQ = 0x00 , DL_INFO_ACK = 0x03 , DL_ATTACH_REQ = 0x0B , DL_DETACH_REQ = 0x0C ,
  DL_BIND_REQ = 0x01 , DL_BIND_ACK = 0x04 , DL_UNBIND_REQ = 0x02 , DL_OK_ACK = 0x06 ,
  DL_ERROR_ACK = 0x05 , DL_SUBS_BIND_REQ = 0x1B , DL_SUBS_BIND_ACK = 0x1C , DL_SUBS_UNBIND_REQ = 0x15 ,
  DL_ENABMULTI_REQ = 0x1D , DL_DISABMULTI_REQ = 0x1E , DL_PROMISCON_REQ = 0x1F , DL_PROMISCOFF_REQ = 0x20 ,
  DL_UNITDATA_REQ = 0x07 , DL_UNITDATA_IND = 0x08 , DL_UDERROR_IND = 0x09 , DL_UDQOS_REQ = 0x0A ,
  DL_CONNECT_REQ = 0x0D , DL_CONNECT_IND = 0x0E , DL_CONNECT_RES = 0x0F , DL_CONNECT_CON = 0x10 ,
  DL_TOKEN_REQ = 0x11 , DL_TOKEN_ACK = 0x12 , DL_DISCONNECT_REQ = 0x13 , DL_DISCONNECT_IND = 0x14 ,
  DL_RESET_REQ = 0x17 , DL_RESET_IND = 0x18 , DL_RESET_RES = 0x19 , DL_RESET_CON = 0x1A ,
  DL_DATA_ACK_REQ = 0x21 , DL_DATA_ACK_IND = 0x22 , DL_DATA_ACK_STATUS_IND = 0x23 , DL_REPLY_REQ = 0x24 ,
  DL_REPLY_IND = 0x25 , DL_REPLY_STATUS_IND = 0x26 , DL_REPLY_UPDATE_REQ = 0x27 , DL_REPLY_UPDATE_STATUS_IND = 0x28 ,
  DL_XID_REQ = 0x29 , DL_XID_IND = 0x2A , DL_XID_RES = 0x2B , DL_XID_CON = 0x2C ,
  DL_TEST_REQ = 0x2D , DL_TEST_IND = 0x2E , DL_TEST_RES = 0x2F , DL_TEST_CON = 0x30 ,
  DL_PHYS_ADDR_REQ = 0x31 , DL_PHYS_ADDR_ACK = 0x32 , DL_SET_PHYS_ADDR_REQ = 0x33 , DL_GET_STATISTICS_REQ = 0x34 ,
  DL_GET_STATISTICS_ACK = 0x35
}
 
enum  {
  DL_UNATTACHED = 0x04 , DL_ATTACH_PENDING = 0x05 , DL_DETACH_PENDING = 0x06 , DL_UNBOUND = 0x00 ,
  DL_BIND_PENDING = 0x01 , DL_UNBIND_PENDING , DL_IDLE = 0x03 , DL_UDQOS_PENDING = 0x07 ,
  DL_OUTCON_PENDING = 0x08 , DL_INCON_PENDING = 0x09 , DL_CONN_RES_PENDING = 0x0A , DL_DATAXFER = 0x0B ,
  DL_USER_RESET_PENDING , DL_PROV_RESET_PENDING , DL_RESET_RES_PENDING = 0x0E , DL_DISCON8_PENDING ,
  DL_DISCON9_PENDING , DL_DISCON11_PENDING , DL_DISCON12_PENDING , DL_DISCON13_PENDING ,
  DL_SUBS_BIND_PND = 0x14 , DL_SUBS_UNBIND_PND = 0x15
}
 
enum  {
  DL_ACCESS = 0x02 , DL_BADADDR = 0x01 , DL_BADCORR = 0x05 , DL_BADDATA = 0x06 ,
  DL_BADPPA = 0x08 , DL_BADPRIM = 0x09 , DL_BADQOSPARAM = 0x0A , DL_BADQOSTYPE = 0x0B ,
  DL_BADSAP = 0x00 , DL_BADTOKEN = 0x0C , DL_BOUND = 0x0D , DL_INITFAILED = 0x0E ,
  DL_NOADDR = 0x0F , DL_NOTINIT = 0x10 , DL_OUTSTATE , DL_SYSERR = 0x04 ,
  DL_UNSUPPORTED = 0x07 , DL_UNDELIVERABLE = 0x11 , DL_NOTSUPPORTED , DL_TOOMANY = 0x13 ,
  DL_NOTENAB = 0x14 , DL_BUSY , DL_NOAUTO , DL_NOXIDAUTO = 0x17 ,
  DL_NOTESTAUTO = 0x18 , DL_XIDAUTO = 0x19 , DL_TESTAUTO = 0x1A , DL_PENDING = 0x1B
}
 
enum  {
  DL_CSMACD = 0x00 , DL_TPB = 0x01 , DL_TPR = 0x02 , DL_METRO = 0x03 ,
  DL_ETHER = 0x04 , DL_HDLC = 0x05 , DL_CHAR = 0x06 , DL_CTCA = 0x07 ,
  DL_FDDI = 0x08 , DL_OTHER = 0x09
}
 
enum  { DL_CODLS = 0x01 , DL_CLDLS = 0x02 , DL_ACLDLS = 0x04 }
 
enum  { DL_STYLE1 = 0x0500 , DL_STYLE2 = 0x0501 }
 
enum  { DL_PROVIDER = 0x0700 , DL_USER = 0x0701 }
 
enum  {
  DL_CONREJ_DEST_UNKNOWN = 0x0800 , DL_CONREJ_DEST_UNREACH_PERMANENT = 0x0801 , DL_CONREJ_DEST_UNREACH_TRANSIENT = 0x0802 , DL_CONREJ_QOS_UNAVAIL_PERMANENT = 0x0803 ,
  DL_CONREJ_QOS_UNAVAIL_TRANSIENT = 0x0804 , DL_CONREJ_PERMANENT_COND = 0x0805 , DL_CONREJ_TRANSIENT_COND = 0x0806 , DL_DISC_ABNORMAL_CONDITION = 0x0807 ,
  DL_DISC_NORMAL_CONDITION = 0x0808 , DL_DISC_PERMANENT_CONDITION = 0x0809 , DL_DISC_TRANSIENT_CONDITION = 0x080A , DL_DISC_UNSPECIFIED = 0x080B
}
 
enum  { DL_RESET_FLOW_CONTROL = 0x0900 , DL_RESET_LINK_ERROR = 0x0901 , DL_RESET_RESYNCH = 0x0902 }
 
enum  {
  DL_CMD_MASK = 0x0F , DL_CMD_OK = 0x00 , DL_CMD_RS = 0x01 , DL_CMD_UE = 0x05 ,
  DL_CMD_PE = 0x06 , DL_CMD_IP = 0x07 , DL_CMD_UN = 0x09 , DL_CMD_IT = 0x0F ,
  DL_RSP_MASK = 0xF0 , DL_RSP_OK = 0x00 , DL_RSP_RS = 0x10 , DL_RSP_NE = 0x30 ,
  DL_RSP_NR = 0x40 , DL_RSP_UE = 0x50 , DL_RSP_IP = 0x70 , DL_RSP_UN = 0x90 ,
  DL_RSP_IT = 0xF0
}
 
enum  { DL_RQST_RSP = 0x01 , DL_RQST_NORSP = 0x02 }
 
enum  { DL_FACT_PHYS_ADDR = 0x01 , DL_CURR_PHYS_ADDR = 0x02 }
 
enum  { DL_POLL_FINAL = 0x01 }
 
enum  { DL_AUTO_XID = 0x01 , DL_AUTO_TEST = 0x02 }
 
enum  { DL_PEER_BIND = 0x01 , DL_HIERARCHICAL_BIND = 0x02 }
 
enum  { DL_PROMISC_PHYS = 0x01 , DL_PROMISC_SAP = 0x02 , DL_PROMISC_MULTI = 0x03 }
 
enum  { DL_NONE = 0x0B01 , DL_MONITOR = 0x0B02 , DL_MAXIMUM = 0x0B03 }
 
enum  { DL_UNKNOWN = -1 , DL_QOS_DONT_CARE = -2 }
 
enum  { DL_QOS_CO_RANGE1 = 0x0101 , DL_QOS_CO_SEL1 = 0x0102 , DL_QOS_CL_RANGE1 = 0x0103 , DL_QOS_CL_SEL1 = 0x0104 }
 
enum  {
  DL_INFO_REQ_SIZE = sizeof(dl_info_req_t) , DL_INFO_ACK_SIZE = sizeof(dl_info_ack_t) , DL_ATTACH_REQ_SIZE = sizeof(dl_attach_req_t) , DL_DETACH_REQ_SIZE = sizeof(dl_detach_req_t) ,
  DL_BIND_REQ_SIZE = sizeof(dl_bind_req_t) , DL_BIND_ACK_SIZE = sizeof(dl_bind_ack_t) , DL_UNBIND_REQ_SIZE = sizeof(dl_unbind_req_t) , DL_SUBS_BIND_REQ_SIZE = sizeof(dl_subs_bind_req_t) ,
  DL_SUBS_BIND_ACK_SIZE = sizeof(dl_subs_bind_ack_t) , DL_SUBS_UNBIND_REQ_SIZE = sizeof(dl_subs_unbind_req_t) , DL_OK_ACK_SIZE = sizeof(dl_ok_ack_t) , DL_ERROR_ACK_SIZE = sizeof(dl_error_ack_t) ,
  DL_CONNECT_REQ_SIZE = sizeof(dl_connect_req_t) , DL_CONNECT_IND_SIZE = sizeof(dl_connect_ind_t) , DL_CONNECT_RES_SIZE = sizeof(dl_connect_res_t) , DL_CONNECT_CON_SIZE = sizeof(dl_connect_con_t) ,
  DL_TOKEN_REQ_SIZE = sizeof(dl_token_req_t) , DL_TOKEN_ACK_SIZE = sizeof(dl_token_ack_t) , DL_DISCONNECT_REQ_SIZE = sizeof(dl_disconnect_req_t) , DL_DISCONNECT_IND_SIZE = sizeof(dl_disconnect_ind_t) ,
  DL_RESET_REQ_SIZE = sizeof(dl_reset_req_t) , DL_RESET_IND_SIZE = sizeof(dl_reset_ind_t) , DL_RESET_RES_SIZE = sizeof(dl_reset_res_t) , DL_RESET_CON_SIZE = sizeof(dl_reset_con_t) ,
  DL_UNITDATA_REQ_SIZE = sizeof(dl_unitdata_req_t) , DL_UNITDATA_IND_SIZE = sizeof(dl_unitdata_ind_t) , DL_UDERROR_IND_SIZE = sizeof(dl_uderror_ind_t) , DL_UDQOS_REQ_SIZE = sizeof(dl_udqos_req_t) ,
  DL_ENABMULTI_REQ_SIZE = sizeof(dl_enabmulti_req_t) , DL_DISABMULTI_REQ_SIZE = sizeof(dl_disabmulti_req_t) , DL_PROMISCON_REQ_SIZE = sizeof(dl_promiscon_req_t) , DL_PROMISCOFF_REQ_SIZE = sizeof(dl_promiscoff_req_t) ,
  DL_PHYS_ADDR_REQ_SIZE = sizeof(dl_phys_addr_req_t) , DL_PHYS_ADDR_ACK_SIZE = sizeof(dl_phys_addr_ack_t) , DL_SET_PHYS_ADDR_REQ_SIZE = sizeof(dl_set_phys_addr_req_t) , DL_GET_STATISTICS_REQ_SIZE = sizeof(dl_get_statistics_req_t) ,
  DL_GET_STATISTICS_ACK_SIZE = sizeof(dl_get_statistics_ack_t) , DL_XID_REQ_SIZE = sizeof(dl_xid_req_t) , DL_XID_IND_SIZE = sizeof(dl_xid_ind_t) , DL_XID_RES_SIZE = sizeof(dl_xid_res_t) ,
  DL_XID_CON_SIZE = sizeof(dl_xid_con_t) , DL_TEST_REQ_SIZE = sizeof(dl_test_req_t) , DL_TEST_IND_SIZE = sizeof(dl_test_ind_t) , DL_TEST_RES_SIZE = sizeof(dl_test_res_t) ,
  DL_TEST_CON_SIZE = sizeof(dl_test_con_t) , DL_DATA_ACK_REQ_SIZE = sizeof(dl_data_ack_req_t) , DL_DATA_ACK_IND_SIZE = sizeof(dl_data_ack_ind_t) , DL_DATA_ACK_STATUS_IND_SIZE = sizeof(dl_data_ack_status_ind_t) ,
  DL_REPLY_REQ_SIZE = sizeof(dl_reply_req_t) , DL_REPLY_IND_SIZE = sizeof(dl_reply_ind_t) , DL_REPLY_STATUS_IND_SIZE = sizeof(dl_reply_status_ind_t) , DL_REPLY_UPDATE_REQ_SIZE = sizeof(dl_reply_update_req_t) ,
  DL_REPLY_UPDATE_STATUS_IND_SIZE = sizeof(dl_reply_update_status_ind_t)
}
 
enum  { DL_IOC_HDR_INFO = ((MIOC_DLPI << 8) | 10) }
 
enum  {
  kOTNoMessagesAvailable = (unsigned long)0xFFFFFFFF , kOTAnyMsgType = (unsigned long)0xFFFFFFFE , kOTDataMsgTypes = (unsigned long)0xFFFFFFFC , kOTMProtoMsgTypes = (unsigned long)0xFFFFFFFB ,
  kOTOnlyMProtoMsgTypes = (unsigned long)0xFFFFFFFA
}
 
enum  { kOTSpecificConfigPass = 0 , kOTGenericConfigPass = 1 }
 
enum  { kOTDefaultConfigurator = 0 , kOTProtocolFamilyConfigurator = 1 , kOTLinkDriverConfigurator = 2 }
 
enum  { I_SAD_SAP = ((MIOC_SAD << 8) | 1) , I_SAD_GAP = ((MIOC_SAD << 8) | 2) , I_SAD_VML }
 
enum  { kOTAutopushMax = 8 }
 
enum  { kSAP_ONE = 1 , kSAP_RANGE = 2 , kSAP_ALL = 3 , kSAP_CLEAR = 4 }
 
enum  {
  kOTGetDataSymbol = 0 , kOTGetCodeSymbol = 1 , kOTLoadNewCopy = 2 , kOTLoadACopy = 4 ,
  kOTFindACopy = 8 , kOTLibMask = kOTLoadNewCopy | kOTLoadACopy | kOTFindACopy , kOTLoadLibResident = 0x20
}
 

Functions

void * OTAllocSharedClientMem (OTByteCount size)
 
void OTFreeSharedClientMem (void *mem)
 
typedef CALLBACK_API_C (void, FreeFuncType)(char *arg)
 
StreamRef OTStreamOpen (const char *name, OTOpenFlags oFlags, OSStatus *errPtr)
 
OSStatus OTAsyncStreamOpen (const char *name, OTOpenFlags oFlags, OTNotifyUPP proc, void *contextPtr)
 
StreamRef OTCreateStream (OTConfigurationRef cfig, OTOpenFlags oFlags, OSStatus *errPtr)
 
OSStatus OTAsyncCreateStream (OTConfigurationRef cfig, OTOpenFlags oFlags, OTNotifyUPP proc, void *contextPtr)
 
OSStatus OTStreamClose (StreamRef strm)
 
OTResult OTStreamPoll (PollRef *fds, UInt32 nfds, OTTimeout timeout)
 
OTResult OTAsyncStreamPoll (PollRef *fds, UInt32 nfds, OTTimeout timeout, OTNotifyUPP proc, void *contextPtr)
 
OTResult OTStreamRead (StreamRef strm, void *buf, OTByteCount len)
 
OTResult OTStreamWrite (StreamRef strm, void *buf, OTByteCount len)
 
OTResult OTStreamIoctl (StreamRef strm, UInt32 cmd, void *data)
 
OTResult OTStreamPipe (StreamRef streamsToPipe[])
 
OSStatus OTStreamInstallNotifier (StreamRef strm, OTNotifyUPP proc, void *contextPtr)
 
void OTStreamRemoveNotifier (StreamRef strm)
 
OSStatus OTStreamUseSyncIdleEvents (StreamRef strm, Boolean useEvents)
 
void OTStreamSetBlocking (StreamRef strm)
 
void OTStreamSetNonBlocking (StreamRef strm)
 
Boolean OTStreamIsBlocking (StreamRef strm)
 
void OTStreamSetSynchronous (StreamRef strm)
 
void OTStreamSetAsynchronous (StreamRef strm)
 
Boolean OTStreamIsSynchronous (StreamRef strm)
 
OTResult OTStreamGetMessage (StreamRef strm, strbuf *ctlbuf, strbuf *databuf, OTFlags *flags)
 
OTResult OTStreamGetPriorityMessage (StreamRef strm, strbuf *ctlbuf, strbuf *databuf, OTBand *band, OTFlags *flags)
 
OSStatus OTStreamPutMessage (StreamRef strm, const strbuf *ctlbuf, const strbuf *databuf, OTFlags flags)
 
OSStatus OTStreamPutPriorityMessage (StreamRef strm, const strbuf *ctlbuf, const strbuf *databuf, OTBand band, OTFlags flags)
 
void OTStreamSetControlMask (StreamRef strm, UInt32 mask, Boolean setClear)
 
ProviderRef OTOpenProviderOnStream (StreamRef strm, OSStatus *errPtr)
 
EndpointRef OTOpenEndpointOnStream (StreamRef strm, OSStatus *errPtr)
 
StreamRef OTRemoveStreamFromProvider (ProviderRef ref)
 
OSStatus OTPeekMessage (StreamRef strm, OTReadInfo *readInfo)
 
OTBufferOTReadMessage (StreamRef strm, OTReadInfo *readInfo)
 
void OTPutBackBuffer (StreamRef strm, OTBuffer *buffer)
 
void OTPutBackPartialBuffer (StreamRef strm, OTBufferInfo *readInfo, OTBuffer *buffer)
 
OSStatus OTYieldPortRequest (ProviderRef ref, OTPortRef portRef, OTClientList *buffer, OTByteCount size)
 
void OTNotifyAllClients (OTEventCode code, OTResult result, void *cookie)
 
Boolean OTIsDependentPort (OTPortRef parent, OTPortRef child)
 
long OTCreateTimerTaskInContext (OTProcessUPP upp, void *arg, OTClientContextPtr clientContext)
 
OTTimerTask OTCreateTimerTask (OTProcessUPP proc, void *arg)
 
Boolean OTCancelTimerTask (OTTimerTask timerTask)
 
void OTDestroyTimerTask (OTTimerTask timerTask)
 
Boolean OTScheduleTimerTask (OTTimerTask timerTask, OTTimeout milliSeconds)
 
OTByteCount OTBufferDataSize (OTBuffer *buffer)
 
Boolean OTReadBuffer (OTBufferInfo *buffer, void *dest, OTByteCount *len)
 
void OTReleaseBuffer (OTBuffer *buffer)
 
Boolean StoreIntoNetbuf (TNetbuf *netBuf, void *source, SInt32 len)
 
Boolean StoreMsgIntoNetbuf (TNetbuf *netBuf, OTBuffer *buffer)
 
OTConfigurationRef OTCfigNewConfiguration (const char *path)
 
void OTCfigDeleteConfiguration (OTConfigurationRef cfig)
 
OTConfigurationRef OTCfigCloneConfiguration (OTConfigurationRef cfig)
 
OTConfigurationRef OTCfigPushNewSingleChild (OTConfigurationRef cfig, const char *path, OSStatus *errPtr)
 
OTConfigurationRef OTCfigPushParent (OTConfigurationRef cfig, const char *path, OSStatus *errPtr)
 
OTConfigurationRef OTCfigPushChild (OTConfigurationRef cfig, OTItemCount index, const char *path, OSStatus *errPtr)
 
OSStatus OTCfigPopChild (OTConfigurationRef cfig, OTItemCount index)
 
OTConfigurationRef OTCfigGetChild (OTConfigurationRef cfig, OTItemCount index)
 
OSStatus OTCfigSetPath (OTConfigurationRef cfig, const char *path)
 
OTConfigurationRef OTCfigNewChild (OTConfigurationRef cfig, const char *path, OSStatus *errPtr)
 
OSStatus OTCfigAddChild (OTConfigurationRef cfig, OTConfigurationRef child)
 
OTConfigurationRef OTCfigRemoveChild (OTConfigurationRef cfig, OTItemCount index)
 
void OTCfigSetPortRef (OTConfigurationRef cfig, OTPortRef portRef)
 
void OTCfigChangeProviderName (OTConfigurationRef cfig, const char *name)
 
UInt16 OTCfigNumberOfChildren (OTConfigurationRef cfig)
 
OTConfigurationRef OTCfigGetParent (OTConfigurationRef cfig)
 
TNetbufOTCfigGetOptionNetbuf (OTConfigurationRef cfig)
 
OTPortRef OTCfigGetPortRef (OTConfigurationRef cfig)
 
UInt32 OTCfigGetInstallFlags (OTConfigurationRef cfig)
 
const char * OTCfigGetProviderName (OTConfigurationRef cfig)
 
Boolean OTCfigIsPort (OTConfigurationRef cfig)
 
typedef CALLBACK_API_C (Boolean, OTCanConfigureProcPtr)(OTConfigurationRef cfig
 
typedef CALLBACK_API_C (OSStatus, OTCreateConfiguratorProcPtr)(TOTConfiguratorRef *cfigor)
 
typedef CALLBACK_API_C (OSStatus, OTSetupConfiguratorProcPtr)(OTCanConfigureProcPtr *canConfigure
 
typedef CALLBACK_API_C (OSStatus, OTCFConfigureProcPtr)(TOTConfiguratorRef cfigor
 
typedef CALLBACK_API_C (OSStatus, OTCFCreateStreamProcPtr)(TOTConfiguratorRef cfigor
 
typedef CALLBACK_API_C (void, OTCFHandleSystemEventProcPtr)(TOTConfiguratorRef cfigor
 
Boolean OTIsMasterConfigurator (TOTConfiguratorRef cfigor)
 
void * OTGetConfiguratorUserData (TOTConfiguratorRef cfigor)
 
TOTConfiguratorRef OTNewConfigurator (void *userData, OTCFConfigureProcPtr configure, OTCFCreateStreamProcPtr createStream, OTCFHandleSystemEventProcPtr handleEvent)
 
void OTDeleteConfigurator (TOTConfiguratorRef cfigor)
 
OSStatus OTNotifyUser (FSSpec *theFile, SInt32 rsrcID, OTItemCount index, char *parm1, char *parm2)
 
void OTConfiguratorUnloaded (TOTConfiguratorRef cfigor)
 
OSStatus OTCreateControlStream (OTConfigurationRef cfig, TOTConfiguratorRef cfigor, OTNotifyUPP proc, void *contextPtr)
 
OSStatus OTConfigureChildren (OTConfigurationRef cfig)
 
UInt32 OTNewControlMask (void)
 
void OTCloseProvidersByUseCount (SInt32 *useCount, OTResult reason, OTBooleanParam doneDeal)
 
void OTCloseProvidersByPortRef (OTPortRef ref, OTResult reason, OTBooleanParam doneDeal)
 
void OTCloseProviderByStream (StreamRef ref, OTResult reason, OTBooleanParam doneDeal)
 
void OTCloseMatchingProviders (UInt32 mask, OTPortRef port, OTResult reason, OTBooleanParam doneDeal)
 
typedef CALLBACK_API (void, OTStateProcPtr)(OTStateMachine *sm)
 
typedef CALLBACK_API_C (void, OTSMCompleteProcPtr)(void *contextPtr)
 
OTStateMachineOTCreateStateMachine (void *buf, OTByteCount bufSize, OTByteCount structSize, OTNotifyUPP proc, void *contextPtr)
 
void OTDestroyStateMachine (OTStateMachine *sm)
 
Boolean OTSMCallStateProc (OTStateMachine *sm, OTStateProcPtr proc, UInt32 state)
 
UInt16 OTSMGetState (OTStateMachine *sm)
 
void OTSMSetState (OTStateMachine *sm, UInt32 state)
 
void OTSMComplete (OTStateMachine *sm)
 
void OTSMPopCallback (OTStateMachine *sm)
 
Boolean OTSMWaitForComplete (OTStateMachine *sm)
 
Boolean OTSMCreateStream (OTStateMachine *sm, OTConfigurationRef cfig, OTOpenFlags flags)
 
Boolean OTSMOpenStream (OTStateMachine *sm, const char *name, OTOpenFlags flags)
 
Boolean OTSMIoctl (OTStateMachine *sm, StreamRef strm, UInt32 cmd, long data)
 
Boolean OTSMPutMessage (OTStateMachine *sm, StreamRef strm, strbuf *ctlbuf, strbuf *databuf, OTFlags flags)
 
Boolean OTSMGetMessage (OTStateMachine *sm, StreamRef strm, strbuf *ctlbuf, strbuf *databuf, OTFlags *flagsPtr)
 
OSStatus OTSMReturnToCaller (OTStateMachine *sm)
 
void * OTSMGetClientData (OTStateMachine *sm)
 
void OTSMInstallCompletionProc (OTStateMachine *sm, OTSMCompleteProcPtr completeProc, void *contextPtr)
 
Boolean OTSMCreateControlStream (OTStateMachine *sm, OTConfigurationRef cfig, TOTConfiguratorRef cfigor)
 
typedef CALLBACK_API_C (void, OTGetPortNameProcPtr)(OTPortRecord *port
 
typedef CALLBACK_API_C (Boolean, OTGetPortIconProcPtr)(OTPortRecord *port
 
void OTGetUserPortNameFromPortRef (OTPortRef ref, Str255 friendlyName)
 
Boolean OTGetPortIconFromPortRef (OTPortRef ref, OTResourceLocator *iconLocation)
 
Boolean OTIsPortCompatibleWith (const OTPortRecord *port, char *protocolName)
 
OTResult OTSetFirstClearBit (UInt8 *bitMap, OTByteCount startBit, OTByteCount numBits)
 
Boolean OTClearBit (UInt8 *bitMap, OTByteCount bitNo)
 
Boolean OTSetBit (UInt8 *bitMap, OTByteCount bitNo)
 
Boolean OTTestBit (UInt8 *bitMap, OTByteCount bitNo)
 
typedef CALLBACK_API_C (UInt32, OTHashProcPtr)(OTLink *linkToHash)
 
typedef CALLBACK_API_C (Boolean, OTHashSearchProcPtr)(const void *ref
 
OTByteCount OTCalculateHashListMemoryNeeds (OTItemCount numEntries)
 
OTResult OTInitHashList (void *memory, OTByteCount numBytes, OTHashProcPtr hashProc)
 
void OTAddToHashList (OTHashList *hashList, OTLink *linkToAdd)
 
Boolean OTRemoveLinkFromHashList (OTHashList *hashList, OTLink *linkToRemove)
 
Boolean OTIsInHashList (OTHashList *hashList, OTLink *link)
 
OTLinkOTFindInHashList (OTHashList *hashList, OTHashSearchProcPtr searchProc, const void *refPtr, UInt32 hashValue)
 
OTLinkOTRemoveFromHashList (OTHashList *hashList, OTHashSearchProcPtr searchProc, const void *refPtr, UInt32 hashValue)
 
UInt32 OTGetRandomSeed (void)
 
UInt32 OTGetRandomNumber (UInt32 *seed, UInt32 lo, UInt32 hi)
 
typedef CALLBACK_API_C (Boolean, OTGateProcPtr)(OTLink *thisLink)
 
void OTInitGate (OTGate *gate, OTGateProcPtr proc)
 
Boolean OTEnterGate (OTGate *gate, OTLink *withLink)
 
Boolean OTLeaveGate (OTGate *gate)
 
typedef CALLBACK_API_C (void *, OTAllocMemProcPtr)(OTByteCount size)
 
OSStatus OTFindCFMLibraries (OSType libKind, const char *libType, OTList *theList, OTAllocMemProcPtr allocator)
 
OSStatus OTLoadCFMLibrary (const char *libName, UInt32 *connID, UInt32 loadFlags)
 
void * OTGetCFMPointer (const char *libName, const char *entryName, UInt32 *connID, UInt32 loadFlags)
 
void * OTGetCFMSymbol (const char *entryName, UInt32 connID, UInt32 loadFlags)
 
void OTReleaseCFMConnection (UInt32 *connID)
 
OSStatus OTHoldThisCFMLibrary (const CFragInitBlock *initBlock)
 
void OTUnholdThisCFMLibrary (void)
 
OSStatus OTLoadASLMLibrary (const char *libName)
 
void OTUnloadASLMLibrary (const char *libName)
 
void UnloadUnusedLibraries (void)
 

Detailed Description

Definitions likely to be used by low-level protocol stack implementation.

Introduced In: 2.5
Avaliable From: Universal Interfaces 3.4.1
Copyright: © 1993-2001 by Apple Computer, Inc. and Mentat Inc., all rights
reserved.

For bug reports, consult the following page on the World Wide Web:

http://developer.apple.com/bugreporter/

To quote an earlier version of this header

 Some functions that should only be used if
 you really know what you're doing.

Macro Definition Documentation

◆ datamsg

#define datamsg (   type)
Value:
((type) == M_DATA || (type) == M_PROTO || (type) == M_PCPROTO || \
(type) == M_DELAY)
@ M_PCPROTO
Definition: OpenTransportProtocol.h:272
@ M_PROTO
Definition: OpenTransportProtocol.h:246
@ M_DELAY
Definition: OpenTransportProtocol.h:250

◆ DLIOCRAW

#define DLIOCRAW   MIOC_CMD(MIOC_DLPI, 1)

M_DATA "raw" mode

◆ kBooleanOption

#define kBooleanOption   0

Defines for optionType field:

◆ kIsReliable

#define kIsReliable   0x00000001

The following defines are for use in building an 'epcf' resource: Defines for fFlags field:

◆ kOTConfiguratorInterfaceID

#define kOTConfiguratorInterfaceID   kOTClientPrefix "cfigMkr"

CALL_NOT_IN_CARBON !OTKERNEL ***** Configurators The kOTConfiguratorInterfaceID define is what you need to add to your export file for the "interfaceID = " clause to export a configurator for ASLM. Similarly, kOTConfiguratorCFMTag is used for CFM-based configurators.

◆ kOTGetPortIconID

#define kOTGetPortIconID   "OTGetPortIcon"

Get icon entry point. This entry point returns the location of the icon for the port. Return false if no icon is provided.

◆ kOTGetUserPortNameID

#define kOTGetUserPortNameID   "OTGetUserPortName"

Get user visible port name entry point. This entry point returns the user visible name of the port. If includeSlot is true, a slot distinguishing suffix (eg "slot X") should be added. If includePort is true, a port distinguishing suffix (eg " port X") should be added for multiport cards.

◆ kOTSetupConfiguratorID

#define kOTSetupConfiguratorID   "OTSetupConfigurator"

Typedef for the "OTSetupConfigurator" function that your configurator library must export. The enum is for the type of configurator that it is.

◆ kPortConfigLibPrefix

#define kPortConfigLibPrefix   "OTPortCfg$"

***** Configuration Helpers These definitions are used by device driver and port scanner developers to provide a library giving client-side information about the registered ports, such as a user-visible name or an icon. Configuration helper library prefix This prefix is prepended to the string found in the "fResourceInfo" field of the OTPortRecord to build the actual library name of the configuration helper library.

◆ kSADModuleName

#define kSADModuleName   "sad"

CALL_NOT_IN_CARBON !OTKERNEL ***** Autopush Definitions The autopush functionality for Open Transport is based on the names of devices and modules, rather than on the major number information like SVR4. This is so that autopush information can be set up for modules that are not yet loaded. The name of the STREAMS driver you open and send the ioctls to.

◆ kStream

#define kStream   0x0001

Defines for fProtocolType field:

◆ kTPIInterface

#define kTPIInterface   'TPI '

Defines for fUpperInterface and fLowerInterface:

◆ MI_AFU_NAME

#define MI_AFU_NAME   "afu"

***** From the Mentat "modnames.h"

◆ MI_AFU_STREAMTAB

#define MI_AFU_STREAMTAB   afuinfo

Streamtab entries

◆ POLLIN

#define POLLIN   0x001 /** A non-priority message is available */

Poll masks for use with OTStreamPoll:

◆ POLLMSG

#define POLLMSG
Value:
0x400

Typedef Documentation

◆ caddr_t

typedef char* caddr_t

OTKERNEL structure contained in M_COPYIN/M_COPYOUT messages

◆ datab

typedef struct datab datab

data descriptor

◆ dev_t

typedef UInt32 dev_t

Similarly, dev_t is a UNIX type for denoting a device number.

◆ OTStateMachine

TARGET_CPU_PPC Forward define OTStateMachine so that OTStateProcPtr has access to it.

◆ OTStateMachineDataPad

typedef UInt8 OTStateMachineDataPad[8]

CALL_NOT_IN_CARBON !OTKERNEL CALL_NOT_IN_CARBON ***** OTStateMachine This utility set allows you to write an asynchronous chain of code that looks somewhat like it is synchronous. This is primarily used for plumbing streams asynchronously, especially in configurators Alas, the state machine is only available to client code. Sorry. There are 12 or 8 bytes of reserved space at the front of the OTStateMachine structure, depending on whether you're building PowerPC or 68K code.. The OTStateMachineDataPad type compensates for this.

◆ OTTimerTask

typedef long OTTimerTask

CALL_NOT_IN_CARBON !OTKERNEL ***** Timers ***** STREAMS plug-ins code should not use these timers, instead they should use timer messages, ie mi_timer etc.

◆ qfields

typedef SInt32 qfields

Enumeration values for strqget and strqset

◆ queue_t

typedef SInt32 queue_t

Client code views a queue_t as a simple cookie. The real definition lives above and is only available to kernel code.

◆ StreamRef

typedef struct OpaqueStreamRef* StreamRef

StreamRef is an opaque reference to a raw stream.

◆ uid_t

typedef UInt32 uid_t

CALL_NOT_IN_CARBON !OTKERNEL ***** UNIX Types On UNIX, uid_t and gid_t are defined to be big enough to hold a user ID and group ID respectively. As Mac OS has no such concepts, we just define them as UInt32 place holders.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

mblk flags

Enumerator
MSGNOLOOP 

last byte of message is tagged

MSGDELIM 

don't pass message to write-side of stream

MSGNOGET 

message is delimited

◆ anonymous enum

anonymous enum

STREAMS environments are expected to define these constants in a public header file.

Enumerator
STRMSGSZ 

Maximum Control buffer size for messages

◆ anonymous enum

anonymous enum

Message types

Enumerator
M_PROTO 

Ordinary data

M_BREAK 

Internal control info and data

M_PASSFP 

Request a driver to send a break

M_SIG 

Used to pass a file pointer

M_DELAY 

Requests a signal to be sent

M_CTL 

Request a real-time delay

M_IOCTL 

For inter-module communication

M_SETOPTS 

Used internally for I_STR requests

M_RSE 

Alters characteristics of Stream head

◆ anonymous enum

anonymous enum

MPS private type

◆ anonymous enum

anonymous enum

Priority messages types

Enumerator
M_IOCNAK 

Positive ack of previous M_IOCTL

M_PCPROTO 

Previous M_IOCTL failed

M_PCSIG 

Same as M_PROTO except for priority

M_FLUSH 

Priority signal

M_STOP 

Requests modules to flush queues

M_START 

Request drivers to stop output

M_HANGUP 

Request drivers to start output

M_ERROR 

Driver can no longer produce data

M_READ 

Reports downstream error condition

M_COPYIN 

Reports client read at Stream head

M_COPYOUT 

Requests the Stream to copy data in for a module

M_IOCDATA 

Requests the Stream to copy data out for a module

M_PCRSE 

Status from M_COPYIN/M_COPYOUT message

M_STOPI 

Reserved for internal use

M_STARTI 

Request drivers to stop input

M_HPDATA 

Request drivers to start input

◆ anonymous enum

anonymous enum

Defines for flush messages

◆ anonymous enum

anonymous enum

copyreq defines

Enumerator
RECOPY 

b_cont data block contains canonical format specifier

◆ anonymous enum

anonymous enum

definitions for so_flags field

Enumerator
SO_READOPT 

Update all options

SO_WROFF 

Set the read mode

SO_MINPSZ 

Insert an offset in write M_DATA mblks

SO_MAXPSZ 

Change the min packet size on sth rq

SO_HIWAT 

Change the max packet size on sth rq

SO_LOWAT 

Change the high water mark on sth rq

SO_MREADON 

Change the low water mark

SO_MREADOFF 

Request M_READ messages

SO_NDELON 

Don't gen M_READ messages

SO_NDELOFF 

old TTY semantics for O_NDELAY reads and writes

SO_ISTTY 

STREAMS semantics for O_NDELAY reads and writes

SO_ISNTTY 

Become a controlling tty

SO_TOSTOP 

No longer a controlling tty

SO_TONSTOP 

Stop on background writes

SO_BAND 

Don't stop on background writes

SO_POLL_SET 

Water marks are for a band

SO_POLL_CLR 

Set events to poll

◆ anonymous enum

anonymous enum

Buffer Allocation Priority

◆ anonymous enum

anonymous enum

CALL_NOT_IN_CARBON ***** From the Mentat "stropts.h"

Enumerator
I_PUSH 

return the number of bytes in 1st msg

I_POP 

push module just below stream head

I_LOOK 

pop module below stream head

I_FLUSH 

retrieve name of first stream module

I_SRDOPT 

flush all input and/or output queues

I_GRDOPT 

set the read mode

I_STR 

get the current read mode

I_SETSIG 

create an internal ioctl message

I_GETSIG 

request SIGPOLL signal on events

I_FIND 

query the registered events

I_LINK 

check for module in stream

I_UNLINK 

connect stream under mux fd

I_PEEK 

disconnect two streams

I_FDINSERT 

peek at data on read queue

I_SENDFD 

create a message and send downstream

I_RECVFD 

send an fd to a connected pipe stream

I_FLUSHBAND 

retrieve a file descriptor

I_SWROPT 

flush a particular input and/or output band

I_GWROPT 

set the write mode

I_LIST 

get the current write mode

I_ATMARK 

get a list of all modules on a stream

I_CKBAND 

check to see if the next message is "marked"

I_GETBAND 

check for a message of a particular band

I_CANPUT 

get the band of the next message to be read

I_SETCLTIME 

check to see if a message may be passed on a stream

I_GETCLTIME 

set the close timeout wait

I_PLINK 

get the current close timeout wait

I_PUNLINK 

permanently connect a stream under a mux

I_GETMSG 

disconnect a permanent link

I_PUTMSG 

getmsg() system call

I_POLL 

putmsg() system call

I_SETDELAY 

poll() system call

I_GETDELAY 

set blocking status

I_RUN_QUEUES 

get blocking status

I_GETPMSG 

sacrifice for the greater good

I_PUTPMSG 

getpmsg() system call

I_AUTOPUSH 

putpmsg() system call

I_PIPE 

for systems that cannot do the autopush in open

I_HEAP_REPORT 

for pipe library call

I_FIFO 

get heap statistics

◆ anonymous enum

anonymous enum

priority message request on putmsg() or strpeek

◆ anonymous enum

anonymous enum

flags for getpmsg and putpmsg

Enumerator
MSG_ANY 

Retrieve a message from a particular band

◆ anonymous enum

anonymous enum

return values from getmsg(), 0 indicates all ok

Enumerator
MOREDATA 

more control info available

◆ anonymous enum

anonymous enum

Infinite poll wait time

◆ anonymous enum

anonymous enum

flush requests

Enumerator
FLUSHW 

Flush the read queue

FLUSHRW 

Flush the write queue

◆ anonymous enum

anonymous enum

flags for I_ATMARK

Enumerator
LASTMARK 

Check if message is marked

◆ anonymous enum

anonymous enum

signal event masks

Enumerator
S_HIPRI 

A non-M_PCPROTO message has arrived

S_OUTPUT 

A priority (M_PCPROTO) message is available

S_MSG 

The write queue is no longer full

S_RDNORM 

A signal message has reached the front of read queue

S_RDBAND 

A non-priority message is available

S_WRNORM 

A banded messsage is available

S_WRBAND 

Same as S_OUTPUT

S_ERROR 

A priority band exists and is writable

S_HANGUP 

Error message has arrived

S_BANDURG 

Hangup message has arrived

◆ anonymous enum

anonymous enum

read mode bits for I_S|GRDOPT; choose one of the following

Enumerator
RMSGD 

byte-stream mode, default

RMSGN 

message-discard mode

RFILL 

message-nondiscard mode

◆ anonymous enum

anonymous enum

More read modes, these are bitwise or'ed with the modes above

Enumerator
RPROTDIS 

Normal handling of M_PROTO/M_PCPROTO messages, default

RPROTDAT 

Discard M_PROTO/M_PCPROTO message blocks

◆ anonymous enum

anonymous enum

write modes for I_S|GWROPT

◆ anonymous enum

anonymous enum
Enumerator
SL_NOTIFY 

Fatal error

SL_ERROR 

Notify the system administrator

SL_TRACE 

Pass message to error logger

SL_CONSOLE 

Pass message to tracer

SL_WARN 

Console messages are disabled

SL_NOTE 

Warning

◆ anonymous enum

anonymous enum

***** From the Mentat "tihdr.h" TPI Primitives

Enumerator
T_CONN_RES 

connection request

T_DATA_REQ 

respond to connection indication

T_UREQUEST_REQ 

Get address request

T_REQUEST_REQ 

UnitRequest (transaction) req

T_UREPLY_REQ 

Request (CO transaction) req

T_REPLY_REQ 

UnitRequest (transaction) req

T_CANCELREQUEST_REQ 

REPLY (CO transaction) req

T_CANCELREPLY_REQ 

Cancel outgoing request

T_REGNAME_REQ 

Cancel incoming request

T_DELNAME_REQ 

Request name registration

T_LKUPNAME_REQ 

Request delete name registration

T_BIND_ACK 

Request name lookup

T_CONN_IND 

connection confirmation

T_DATA_IND 

incoming connection indication

T_UREQUEST_IND 

Get address ack

T_REQUEST_IND 

UnitRequest (transaction) ind

T_UREPLY_IND 

Request (CO transaction) ind

T_REPLY_IND 

Incoming unit reply

T_UREPLY_ACK 

Incoming reply

T_REPLY_ACK 

outgoing Unit Reply is complete

T_RESOLVEADDR_REQ 

outgoing Reply is complete

T_LKUPNAME_RES 

Results of name lookup

T_REGNAME_ACK 

Partial results of name lookup

T_SEQUENCED_ACK 

Request name registration

T_EVENT_IND 

Sequenced version of OK or ERROR ACK

◆ anonymous enum

anonymous enum

State values

◆ anonymous enum

anonymous enum

Transport events

◆ anonymous enum

anonymous enum

Provider flags

Enumerator
XPG4_1 

supports 0-length TSDU's

◆ anonymous enum

anonymous enum

***** From the Mentat "dlpi.h" This header file has encoded the values so an existing driver or user which was written with the Logical Link Interface(LLI) can migrate to the DLPI interface in a binary compatible manner. Any fields which require a specific format or value are flagged with a comment containing the message LLI compatibility. DLPI revision definition history

Enumerator
DL_VERSION_2 

current version of dlpi

◆ anonymous enum

anonymous enum
Enumerator
DL_INFO_ACK 

Information Req, LLI compatibility

DL_ATTACH_REQ 

Information Ack, LLI compatibility

DL_DETACH_REQ 

Attach a PPA

DL_BIND_REQ 

Detach a PPA

DL_BIND_ACK 

Bind dlsap address, LLI compatibility

DL_UNBIND_REQ 

Dlsap address bound, LLI compatibility

DL_OK_ACK 

Unbind dlsap address, LLI compatibility

DL_ERROR_ACK 

Success acknowledgment, LLI compatibility

DL_SUBS_BIND_REQ 

Error acknowledgment, LLI compatibility

DL_SUBS_BIND_ACK 

Bind Subsequent DLSAP address

DL_SUBS_UNBIND_REQ 

Subsequent DLSAP address bound

DL_ENABMULTI_REQ 

Subsequent unbind

DL_DISABMULTI_REQ 

Enable multicast addresses

DL_PROMISCON_REQ 

Disable multicast addresses

DL_PROMISCOFF_REQ 

Turn on promiscuous mode

DL_UNITDATA_REQ 

Turn off promiscuous mode

DL_UNITDATA_IND 

datagram send request, LLI compatibility

DL_UDERROR_IND 

datagram receive indication, LLI compatibility

DL_UDQOS_REQ 

datagram error indication, LLI compatibility

DL_CONNECT_REQ 

set QOS for subsequent datagram transmissions

DL_CONNECT_IND 

Connect request

DL_CONNECT_RES 

Incoming connect indication

DL_CONNECT_CON 

Accept previous connect indication

DL_TOKEN_REQ 

Connection established

DL_TOKEN_ACK 

Passoff token request

DL_DISCONNECT_REQ 

Passoff token ack

DL_DISCONNECT_IND 

Disconnect request

DL_RESET_REQ 

Disconnect indication

DL_RESET_IND 

Reset service request

DL_RESET_RES 

Incoming reset indication

DL_RESET_CON 

Complete reset processing

DL_DATA_ACK_REQ 

Reset processing complete

DL_DATA_ACK_IND 

data unit transmission request

DL_DATA_ACK_STATUS_IND 

Arrival of a command PDU

DL_REPLY_REQ 

Status indication of DATA_ACK_REQ

DL_REPLY_IND 

Request a DLSDU from the remote

DL_REPLY_STATUS_IND 

Arrival of a command PDU

DL_REPLY_UPDATE_REQ 

Status indication of REPLY_REQ

DL_REPLY_UPDATE_STATUS_IND 

Hold a DLSDU for transmission

DL_XID_REQ 

Status of REPLY_UPDATE req

DL_XID_IND 

Request to send an XID PDU

DL_XID_RES 

Arrival of an XID PDU

DL_XID_CON 

request to send a response XID PDU

DL_TEST_REQ 

Arrival of a response XID PDU

DL_TEST_IND 

TEST command request

DL_TEST_RES 

TEST response indication

DL_TEST_CON 

TEST response

DL_PHYS_ADDR_REQ 

TEST Confirmation

DL_PHYS_ADDR_ACK 

Request to get physical addr

DL_SET_PHYS_ADDR_REQ 

Return physical addr

DL_GET_STATISTICS_REQ 

set physical addr

DL_GET_STATISTICS_ACK 

Request to get statistics

◆ anonymous enum

anonymous enum

DLPI interface states

Enumerator
DL_ATTACH_PENDING 

PPA not attached

DL_DETACH_PENDING 

Waiting ack of DL_ATTACH_REQ

DL_UNBOUND 

Waiting ack of DL_DETACH_REQ

DL_BIND_PENDING 

PPA attached, LLI compatibility

DL_UNBIND_PENDING 

Waiting ack of DL_BIND_REQ, LLI compatibility

DL_IDLE 

Waiting ack of DL_UNBIND_REQ, LLI compatibility

DL_UDQOS_PENDING 

dlsap bound, awaiting use, LLI compatibility

DL_OUTCON_PENDING 

Waiting ack of DL_UDQOS_REQ

DL_INCON_PENDING 

outgoing connection, awaiting DL_CONN_CON

DL_CONN_RES_PENDING 

incoming connection, awaiting DL_CONN_RES

DL_DATAXFER 

Waiting ack of DL_CONNECT_RES

DL_USER_RESET_PENDING 

connection-oriented data transfer

DL_PROV_RESET_PENDING 

user initiated reset, awaiting DL_RESET_CON

DL_RESET_RES_PENDING 

provider initiated reset, awaiting DL_RESET_RES

DL_DISCON8_PENDING 

Waiting ack of DL_RESET_RES

DL_DISCON9_PENDING 

Waiting ack of DL_DISC_REQ when in DL_OUTCON_PENDING

DL_DISCON11_PENDING 

Waiting ack of DL_DISC_REQ when in DL_INCON_PENDING

DL_DISCON12_PENDING 

Waiting ack of DL_DISC_REQ when in DL_DATAXFER

DL_DISCON13_PENDING 

Waiting ack of DL_DISC_REQ when in DL_USER_RESET_PENDING

DL_SUBS_BIND_PND 

Waiting ack of DL_DISC_REQ when in DL_DL_PROV_RESET_PENDING

DL_SUBS_UNBIND_PND 

Waiting ack of DL_SUBS_BIND_REQ

◆ anonymous enum

anonymous enum

DL_ERROR_ACK error return values

Enumerator
DL_BADADDR 

Improper permissions for request, LLI compatibility

DL_BADCORR 

DLSAP address in improper format or invalid

DL_BADDATA 

Sequence number not from outstanding DL_CONN_IND

DL_BADPPA 

User data exceeded provider limit

DL_BADPRIM 

Specified PPA was invalid

DL_BADQOSPARAM 

Primitive received is not known by DLS provider

DL_BADQOSTYPE 

QOS parameters contained invalid values

DL_BADSAP 

QOS structure type is unknown or unsupported

DL_BADTOKEN 

Bad LSAP selector, LLI compatibility

DL_BOUND 

Token used not associated with an active stream

DL_INITFAILED 

Attempted second bind with dl_max_conind or
dl_conn_mgmt > 0 on same DLSAP or PPA

DL_NOADDR 

Physical Link initialization failed

DL_NOTINIT 

Provider couldn't allocate alternate address

DL_OUTSTATE 

Physical Link not initialized

DL_SYSERR 

Primitive issued in improper state, LLI compatibility

DL_UNSUPPORTED 

UNIX system error occurred, LLI compatibility

DL_UNDELIVERABLE 

Requested service not supplied by provider

DL_NOTSUPPORTED 

Previous data unit could not be delivered

DL_TOOMANY 

Primitive is known but not supported by DLS provider

DL_NOTENAB 

limit exceeded

DL_BUSY 

Promiscuous mode not enabled

DL_NOAUTO 

Other streams for a particular PPA in the post-attached state

DL_NOXIDAUTO 

Automatic handling of XID & TEST responses not supported

DL_NOTESTAUTO 

Automatic handling of XID not supported

DL_XIDAUTO 

Automatic handling of TEST not supported

DL_TESTAUTO 

Automatic handling of XID response

DL_PENDING 

AUtomatic handling of TEST response

◆ anonymous enum

anonymous enum

DLPI media types supported

Enumerator
DL_TPB 

IEEE 802.3 CSMA/CD network, LLI Compatibility

DL_TPR 

IEEE 802.4 Token Passing Bus, LLI Compatibility

DL_METRO 

IEEE 802.5 Token Passing Ring, LLI Compatibility

DL_ETHER 

IEEE 802.6 Metro Net, LLI Compatibility

DL_HDLC 

Ethernet Bus, LLI Compatibility

DL_CHAR 

ISO HDLC protocol support, bit synchronous

DL_CTCA 

Character Synchronous protocol support, eg BISYNC

DL_FDDI 

IBM Channel-to-Channel Adapter

DL_OTHER 

Fiber Distributed data interface

◆ anonymous enum

anonymous enum

DLPI provider service supported. These must be allowed to be bitwise-OR for dl_service_mode in DL_INFO_ACK.

Enumerator
DL_CLDLS 

support connection-oriented service

DL_ACLDLS 

support connectionless data link service

◆ anonymous enum

anonymous enum

DLPI provider style. The DLPI provider style which determines whether a provider requires a DL_ATTACH_REQ to inform the provider which PPA user messages should be sent/received on.

Enumerator
DL_STYLE2 

PPA is implicitly bound by open(2)

◆ anonymous enum

anonymous enum

DLPI Originator for Disconnect and Resets

◆ anonymous enum

anonymous enum

DLPI Disconnect Reasons

◆ anonymous enum

anonymous enum

DLPI Reset Reasons

◆ anonymous enum

anonymous enum

DLPI status values for acknowledged connectionless data transfer

Enumerator
DL_CMD_OK 

mask for command portion of status

DL_CMD_RS 

Command Accepted

DL_CMD_UE 

Unimplemented or inactivated service

DL_CMD_PE 

Data Link User interface error

DL_CMD_IP 

Protocol error

DL_CMD_UN 

Permanent implementation dependent error

DL_CMD_IT 

Resources temporarily unavailable

DL_RSP_MASK 

Temporary implementation dependent error

DL_RSP_OK 

mask for response portion of status

DL_RSP_RS 

Response DLSDU present

DL_RSP_NE 

Unimplemented or inactivated service

DL_RSP_NR 

Response DLSDU never submitted

DL_RSP_UE 

Response DLSDU not requested

DL_RSP_IP 

Data Link User interface error

DL_RSP_UN 

Permanent implementation dependent error

DL_RSP_IT 

Resources temporarily unavailable

◆ anonymous enum

anonymous enum

Service Class values for acknowledged connectionless data transfer

Enumerator
DL_RQST_NORSP 

Use acknowledge capability in MAC sublayer

◆ anonymous enum

anonymous enum

DLPI address type definition

Enumerator
DL_CURR_PHYS_ADDR 

factory physical address

◆ anonymous enum

anonymous enum

DLPI flag definitions

◆ anonymous enum

anonymous enum

XID and TEST responses supported by the provider

Enumerator
DL_AUTO_TEST 

provider will respond to XID

◆ anonymous enum

anonymous enum

Subsequent bind type

Enumerator
DL_HIERARCHICAL_BIND 

subsequent bind on a peer addr

◆ anonymous enum

anonymous enum

DLPI promiscuous mode definitions

Enumerator
DL_PROMISC_SAP 

promiscuous mode at phys level

DL_PROMISC_MULTI 

promiscous mode at sap level

◆ anonymous enum

anonymous enum

protection specification

Enumerator
DL_MONITOR 

no protection supplied

DL_MAXIMUM 

protection against passive monitoring

◆ anonymous enum

anonymous enum

QOS type definition to be used for negotiation with the remote end of a connection, or a connectionless unitdata request. There are two type definitions to handle the negotiation process at connection establishment. The typedef dl_qos_range_t is used to present a range for parameters. This is used in the DL_CONNECT_REQ and DL_CONNECT_IND messages. The typedef dl_qos_sel_t is used to select a specific value for the QOS parameters. This is used in the DL_CONNECT_RES, DL_CONNECT_CON, and DL_INFO_ACK messages to define the selected QOS parameters for a connection.

NOTE A DataLink provider which has unknown values for any of the fields will use a value of DL_UNKNOWN for all values in the fields.

NOTE A QOS parameter value of DL_QOS_DONT_CARE informs the DLS provider the user requesting this value doesn't care what the QOS parameter is set to. This value becomes the least possible value in the range of QOS parameters. The order of the QOS parameter range is then:

DL_QOS_DONT_CARE < 0 < MAXIMUM QOS VALUE

◆ anonymous enum

anonymous enum

Every QOS structure has the first 4 bytes containing a type field, denoting the definition of the rest of the structure. This is used in the same manner has the dl_primitive variable is in messages.

The following list is the defined QOS structure type values and structures.

Enumerator
DL_QOS_CO_SEL1 

QOS range struct. for Connection modeservice

DL_QOS_CL_RANGE1 

QOS selection structure

DL_QOS_CL_SEL1 

QOS range struct. for connectionless

◆ anonymous enum

anonymous enum

***** Raw Streams Flags used in the fType field of OTReadInfo for functions. I've removed the terse and confusing comments in this header file. For a full description, read "Open Transport Advanced Client Programming".

◆ anonymous enum

anonymous enum

Typedef for the OTCanConfigure function, and the enum for which pass we're doing. The first (kOTSpecificConfigPass) is to give configurators a shot at the configuration before we start allowing the generic configurators to get into the act.

◆ anonymous enum

anonymous enum

Autopush ioctls.

Enumerator
I_SAD_GAP 

Set autopush information

I_SAD_VML 

Get autopush information

◆ anonymous enum

anonymous enum

Maximum number of modules autopushed on a driver.

◆ anonymous enum

anonymous enum

Command values for sap_cmd field of the above.

Enumerator
kSAP_RANGE 

Configure a single minor device

kSAP_ALL 

Configure a range of minor devices

kSAP_CLEAR 

Configure all minor devices

◆ anonymous enum

anonymous enum

***** Shared Library Bonus Extras CALL_NOT_IN_CARBON These routines provide addition shared library support beyond that provided by the base shared library mechanism. Some flags which can be passed to the "loadFlags" parameter of the various CFM routines. Not all flags can be used with all routines. See "Open Transport Advanced Client Programming" for details.

Function Documentation

◆ CALLBACK_API()

typedef CALLBACK_API ( void  ,
OTStateProcPtr   
)

This type is is the required prototype of a state machine entry point.

◆ CALLBACK_API_C() [1/7]

typedef CALLBACK_API_C ( Boolean  ,
OTGateProcPtr   
)

Concurrency Control OTGate implements a cool concurrency control primitive. You're not going to understand it without reading the documentation! See "Open Transport Advanced Client Programming" for details. WARNING: This structure must be on a 4-byte boundary. CALL_NOT_IN_CARBON

◆ CALLBACK_API_C() [2/7]

typedef CALLBACK_API_C ( OSStatus  ,
OTCFConfigureProcPtr   
)

Procedure pointer definitions for the three key callbacks associated with a configurator, as established by OTNewConfigurator.

◆ CALLBACK_API_C() [3/7]

typedef CALLBACK_API_C ( OSStatus  ,
OTCreateConfiguratorProcPtr   
)

Typedef for the function to create and return a configurator object

◆ CALLBACK_API_C() [4/7]

typedef CALLBACK_API_C ( UInt32  ,
OTHashProcPtr   
)

OTHashList This implements a simple, but efficient hash list. It is not thread-safe.

◆ CALLBACK_API_C() [5/7]

typedef CALLBACK_API_C ( void *  ,
OTAllocMemProcPtr   
)

You must pass a routine of type OTAllocMemProcPtr to OTFindCFMLibraries which it calls to allocate memory for the CFMLibraryInfo structures.

◆ CALLBACK_API_C() [6/7]

typedef CALLBACK_API_C ( void  ,
FreeFuncType   
)

Free return structure for esballoc

◆ CALLBACK_API_C() [7/7]

typedef CALLBACK_API_C ( void  ,
OTSMCompleteProcPtr   
)

This type defines a routine that the state machine will call when the top level completes.

◆ OTAddToHashList()

void OTAddToHashList ( OTHashList hashList,
OTLink linkToAdd 
)

OTAddToHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTAllocSharedClientMem()

void* OTAllocSharedClientMem ( OTByteCount  size)

CALL_NOT_IN_CARBON ***** Setup Default Compiler Variables OTKERNEL is used to indicate whether the code is being built for the kernel environment. It defaults to 0. If you include "OpenTransportKernel.h" before including this file, it will be 1 and you will only be able to see stuff available to kernel code. As we've included "OpenTransport.h" and it defaults this variable to 0 if it's not already been defined, it should always be defined by the time we get here. So we just assert that. Assertions in header files! Cool (-: !defined(OTKERNEL) ***** Shared Client Memory These allocators allocate memory in the shared client pool, which is shared between all clients and is not disposed when a particular client goes away. See DTS Technote ©©© "Understanding Open Transport Memory Management" for details. OTAllocSharedClientMem()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTAsyncCreateStream()

OSStatus OTAsyncCreateStream ( OTConfigurationRef  cfig,
OTOpenFlags  oFlags,
OTNotifyUPP  proc,
void *  contextPtr 
)

OTAsyncCreateStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTAsyncStreamOpen()

OSStatus OTAsyncStreamOpen ( const char *  name,
OTOpenFlags  oFlags,
OTNotifyUPP  proc,
void *  contextPtr 
)

OTAsyncStreamOpen()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTAsyncStreamPoll()

OTResult OTAsyncStreamPoll ( PollRef fds,
UInt32  nfds,
OTTimeout  timeout,
OTNotifyUPP  proc,
void *  contextPtr 
)

OTAsyncStreamPoll()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTBufferDataSize()

OTByteCount OTBufferDataSize ( OTBuffer buffer)

OTCARBONAPPLICATION !OTKERNEL ***** Miscellaneous Helpful Functions These routines allow you to manipulate OT's buffer structures. If you use no-copy receives (described in "OpenTransport.h") you will need some of these routines, and may choose to use others. See "Open Tranport Advanced Client Programming" for documentation. OTBufferDataSize()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTCalculateHashListMemoryNeeds()

OTByteCount OTCalculateHashListMemoryNeeds ( OTItemCount  numEntries)

Return the number of bytes of memory needed to create a hash list of at least "numEntries" entries. OTCalculateHashListMemoryNeeds()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTCancelTimerTask()

Boolean OTCancelTimerTask ( OTTimerTask  timerTask)

CALL_NOT_IN_CARBON OTCancelTimerTask()

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTCfigAddChild()

OSStatus OTCfigAddChild ( OTConfigurationRef  cfig,
OTConfigurationRef  child 
)

OTCfigAddChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigChangeProviderName()

void OTCfigChangeProviderName ( OTConfigurationRef  cfig,
const char *  name 
)

OTCfigChangeProviderName()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigCloneConfiguration()

OTConfigurationRef OTCfigCloneConfiguration ( OTConfigurationRef  cfig)

OTCfigCloneConfiguration()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigDeleteConfiguration()

void OTCfigDeleteConfiguration ( OTConfigurationRef  cfig)

OTCfigDeleteConfiguration()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetChild()

OTConfigurationRef OTCfigGetChild ( OTConfigurationRef  cfig,
OTItemCount  index 
)

OTCfigGetChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetInstallFlags()

UInt32 OTCfigGetInstallFlags ( OTConfigurationRef  cfig)

OTCfigGetInstallFlags()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetOptionNetbuf()

TNetbuf* OTCfigGetOptionNetbuf ( OTConfigurationRef  cfig)

OTCfigGetOptionNetbuf()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetParent()

OTConfigurationRef OTCfigGetParent ( OTConfigurationRef  cfig)

OTCfigGetParent()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetPortRef()

OTPortRef OTCfigGetPortRef ( OTConfigurationRef  cfig)

OTCfigGetPortRef()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigGetProviderName()

const char* OTCfigGetProviderName ( OTConfigurationRef  cfig)

OTCfigGetProviderName()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigIsPort()

Boolean OTCfigIsPort ( OTConfigurationRef  cfig)

OTCfigIsPort()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigNewChild()

OTConfigurationRef OTCfigNewChild ( OTConfigurationRef  cfig,
const char *  path,
OSStatus *  errPtr 
)

OTCfigNewChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigNewConfiguration()

OTConfigurationRef OTCfigNewConfiguration ( const char *  path)

CALL_NOT_IN_CARBON !OTKERNEL ***** OTConfiguration As promised in "OpenTransport.h", here are the routines for advanced operations on configurations. Manipulating a configuration OTCfigNewConfiguration()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigNumberOfChildren()

UInt16 OTCfigNumberOfChildren ( OTConfigurationRef  cfig)

Query a configuration OTCfigNumberOfChildren()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigPopChild()

OSStatus OTCfigPopChild ( OTConfigurationRef  cfig,
OTItemCount  index 
)

OTCfigPopChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigPushChild()

OTConfigurationRef OTCfigPushChild ( OTConfigurationRef  cfig,
OTItemCount  index,
const char *  path,
OSStatus *  errPtr 
)

OTCfigPushChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigPushNewSingleChild()

OTConfigurationRef OTCfigPushNewSingleChild ( OTConfigurationRef  cfig,
const char *  path,
OSStatus *  errPtr 
)

OTCfigPushNewSingleChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigPushParent()

OTConfigurationRef OTCfigPushParent ( OTConfigurationRef  cfig,
const char *  path,
OSStatus *  errPtr 
)

OTCfigPushParent()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigRemoveChild()

OTConfigurationRef OTCfigRemoveChild ( OTConfigurationRef  cfig,
OTItemCount  index 
)

OTCfigRemoveChild()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigSetPath()

OSStatus OTCfigSetPath ( OTConfigurationRef  cfig,
const char *  path 
)

OTCfigSetPath()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCfigSetPortRef()

void OTCfigSetPortRef ( OTConfigurationRef  cfig,
OTPortRef  portRef 
)

OTCfigSetPortRef()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTClearBit()

Boolean OTClearBit ( UInt8 *  bitMap,
OTByteCount  bitNo 
)

Standard clear, set and test bit functions OTClearBit()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTCloseMatchingProviders()

void OTCloseMatchingProviders ( UInt32  mask,
OTPortRef  port,
OTResult  reason,
OTBooleanParam  doneDeal 
)

OTCloseMatchingProviders()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCloseProviderByStream()

void OTCloseProviderByStream ( StreamRef  ref,
OTResult  reason,
OTBooleanParam  doneDeal 
)

These are the "real" APIs OTCloseProviderByStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCloseProvidersByPortRef()

void OTCloseProvidersByPortRef ( OTPortRef  ref,
OTResult  reason,
OTBooleanParam  doneDeal 
)

OTCloseProvidersByPortRef()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCloseProvidersByUseCount()

void OTCloseProvidersByUseCount ( SInt32 *  useCount,
OTResult  reason,
OTBooleanParam  doneDeal 
)

Warning: These 2 APIs is going away OTCloseProvidersByUseCount()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTConfiguratorUnloaded()

void OTConfiguratorUnloaded ( TOTConfiguratorRef  cfigor)

Call when the configurator unloads from memory OTConfiguratorUnloaded()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTConfigureChildren()

OSStatus OTConfigureChildren ( OTConfigurationRef  cfig)

A helpful function for the configurators to be able to recursively configure the children. OTConfigureChildren()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCreateControlStream()

OSStatus OTCreateControlStream ( OTConfigurationRef  cfig,
TOTConfiguratorRef  cfigor,
OTNotifyUPP  proc,
void *  contextPtr 
)

Call to create your control stream if you're not the master configurator. You can also use the state machine function OTSMCreateControlStream(OTStateMachine*, OTConfigurationRef, TOTConfiguratorRef cfigor). OTCreateControlStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCreateStateMachine()

OTStateMachine* OTCreateStateMachine ( void *  buf,
OTByteCount  bufSize,
OTByteCount  structSize,
OTNotifyUPP  proc,
void *  contextPtr 
)

For structSize, pass the size of your structure that you want associated with the state machine. It can later be obtained by calling OTSMGetClientData. For bufSize, use the kOTSMBufferSize macro, plus the size of your structure to create a buffer on the stack. For synchronous calls, the stack buffer will be used (unless you pass in NULL). The callDepth is the depth level of nested calls using OTSMCallStateProc. OTCreateStateMachine()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCreateStream()

StreamRef OTCreateStream ( OTConfigurationRef  cfig,
OTOpenFlags  oFlags,
OSStatus *  errPtr 
)

OTCreateStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCreateTimerTask()

OTTimerTask OTCreateTimerTask ( OTProcessUPP  proc,
void *  arg 
)

OTCreateTimerTask()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTCreateTimerTaskInContext()

long OTCreateTimerTaskInContext ( OTProcessUPP  upp,
void *  arg,
OTClientContextPtr  clientContext 
)

Under Carbon, OTCreateTimerTask takes a client context pointer. Applications may pass NULL after calling InitOpenTransport(kInitOTForApplicationMask, ...). Non-applications must always pass a valid client context. OTCreateTimerTaskInContext()

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTDeleteConfigurator()

void OTDeleteConfigurator ( TOTConfiguratorRef  cfigor)

Delete a configurator object created by OTNewConfigurator OTDeleteConfigurator()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTDestroyStateMachine()

void OTDestroyStateMachine ( OTStateMachine sm)

OTDestroyStateMachine()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTDestroyTimerTask()

void OTDestroyTimerTask ( OTTimerTask  timerTask)

OTDestroyTimerTask()

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTEnterGate()

Boolean OTEnterGate ( OTGate gate,
OTLink withLink 
)

OTEnterGate()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTFindCFMLibraries()

OSStatus OTFindCFMLibraries ( OSType  libKind,
const char *  libType,
OTList theList,
OTAllocMemProcPtr  allocator 
)

Find CFM libraries of the specified kind and type OTFindCFMLibraries()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTFindInHashList()

OTLink* OTFindInHashList ( OTHashList hashList,
OTHashSearchProcPtr  searchProc,
const void *  refPtr,
UInt32  hashValue 
)

OTFindInHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTFreeSharedClientMem()

void OTFreeSharedClientMem ( void *  mem)

OTFreeSharedClientMem()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTGetCFMPointer()

void* OTGetCFMPointer ( const char *  libName,
const char *  entryName,
UInt32 *  connID,
UInt32  loadFlags 
)

Load a CFM library and get a named pointer from it OTGetCFMPointer()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTGetCFMSymbol()

void* OTGetCFMSymbol ( const char *  entryName,
UInt32  connID,
UInt32  loadFlags 
)

Get a named pointer from a CFM library that's already loaded OTGetCFMSymbol()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTGetConfiguratorUserData()

void* OTGetConfiguratorUserData ( TOTConfiguratorRef  cfigor)

Get back the userData you passed in to OTNewConfigurator OTGetConfiguratorUserData()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTGetPortIconFromPortRef()

Boolean OTGetPortIconFromPortRef ( OTPortRef  ref,
OTResourceLocator iconLocation 
)

Returns the location for the icon familly representing the port. Returns false if the port has no icon. OTGetPortIconFromPortRef()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTGetRandomNumber()

UInt32 OTGetRandomNumber ( UInt32 *  seed,
UInt32  lo,
UInt32  hi 
)

OTGetRandomNumber()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTGetRandomSeed()

UInt32 OTGetRandomSeed ( void  )

CALL_NOT_IN_CARBON Random functions These implement a very simple random number generator, suitable for protocol implementations but not "cryptographically" random. OTGetRandomSeed()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTGetUserPortNameFromPortRef()

void OTGetUserPortNameFromPortRef ( OTPortRef  ref,
Str255  friendlyName 
)

***** Application Access to Configuration Helpers These routines are used by clients to get information about ports. The canonical user of these routines is the OT control panel(s), but applications may want to use them as well (to display the list of available Ethernet cards, for example). Returns a user friendly name for a port. OTGetUserPortNameFromPortRef()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTHoldThisCFMLibrary()

OSStatus OTHoldThisCFMLibrary ( const CFragInitBlock initBlock)

CALL_NOT_IN_CARBON You can call these routines in your CFM initialisation and termination routines to hold or unhold your libraries sections. Used in a CFM InitProc, will hold the executable code, if applicable. This can also be the InitProc of the library OTHoldThisCFMLibrary()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTInitGate()

void OTInitGate ( OTGate gate,
OTGateProcPtr  proc 
)

OTInitGate()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTInitHashList()

OTResult OTInitHashList ( void *  memory,
OTByteCount  numBytes,
OTHashProcPtr  hashProc 
)

Create an OTHashList from "memory". Return an error if it couldn't be done. OTInitHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTIsDependentPort()

Boolean OTIsDependentPort ( OTPortRef  parent,
OTPortRef  child 
)

Determine if "child" is a child port of "parent" OTIsDependentPort()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTIsInHashList()

Boolean OTIsInHashList ( OTHashList hashList,
OTLink link 
)

OTIsInHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTIsMasterConfigurator()

Boolean OTIsMasterConfigurator ( TOTConfiguratorRef  cfigor)

Determine if this instance of your configurator is the "master" (the one that can create and destroy control streams) OTIsMasterConfigurator()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTIsPortCompatibleWith()

Boolean OTIsPortCompatibleWith ( const OTPortRecord port,
char *  protocolName 
)

CALL_NOT_IN_CARBON Returns true if the port can be used with the specified protocol. OTIsPortCompatibleWith()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTLeaveGate()

Boolean OTLeaveGate ( OTGate gate)

OTLeaveGate()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTLoadASLMLibrary()

OSStatus OTLoadASLMLibrary ( const char *  libName)

CALL_NOT_IN_CARBON !TARGET_CPU_68K ASLM Utilities Load an ASLM library OTLoadASLMLibrary()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTLoadCFMLibrary()

OSStatus OTLoadCFMLibrary ( const char *  libName,
UInt32 *  connID,
UInt32  loadFlags 
)

Loading libraries and connecting to symbols. Load a CFM library by name OTLoadCFMLibrary()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTNewConfigurator()

TOTConfiguratorRef OTNewConfigurator ( void *  userData,
OTCFConfigureProcPtr  configure,
OTCFCreateStreamProcPtr  createStream,
OTCFHandleSystemEventProcPtr  handleEvent 
)

Create a configurator object for use by Open Transport OTNewConfigurator()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTNewControlMask()

UInt32 OTNewControlMask ( void  )

Allocate a bit in the system-wide control mask for streams. OTNewControlMask()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTNotifyAllClients()

void OTNotifyAllClients ( OTEventCode  code,
OTResult  result,
void *  cookie 
)

Send a notification to all Open Transport registered clients OTNotifyAllClients()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTNotifyUser()

OSStatus OTNotifyUser ( FSSpec *  theFile,
SInt32  rsrcID,
OTItemCount  index,
char *  parm1,
char *  parm2 
)

A utility function to send notifications to the user - it takes care of calls from deferred tasks OTNotifyUser()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTOpenEndpointOnStream()

EndpointRef OTOpenEndpointOnStream ( StreamRef  strm,
OSStatus *  errPtr 
)

OTOpenEndpointOnStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTOpenProviderOnStream()

ProviderRef OTOpenProviderOnStream ( StreamRef  strm,
OSStatus *  errPtr 
)

Opening endpoints and mappers on a Stream - these calls are synchronous, and may only be used at System Task time. Once the stream has been installed into a provider or endpoint, you should not continue to use STREAMS APIs on it OTOpenProviderOnStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTPeekMessage()

OSStatus OTPeekMessage ( StreamRef  strm,
OTReadInfo readInfo 
)

OTPeekMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTPutBackBuffer()

void OTPutBackBuffer ( StreamRef  strm,
OTBuffer buffer 
)

OTPutBackBuffer()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTPutBackPartialBuffer()

void OTPutBackPartialBuffer ( StreamRef  strm,
OTBufferInfo readInfo,
OTBuffer buffer 
)

OTPutBackPartialBuffer()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTReadBuffer()

Boolean OTReadBuffer ( OTBufferInfo buffer,
void *  dest,
OTByteCount *  len 
)

OTReadBuffer()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTReadMessage()

OTBuffer* OTReadMessage ( StreamRef  strm,
OTReadInfo readInfo 
)

OTReadMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTReleaseBuffer()

void OTReleaseBuffer ( OTBuffer buffer)

OTReleaseBuffer()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTReleaseCFMConnection()

void OTReleaseCFMConnection ( UInt32 *  connID)

Release a connection to a CFM library OTReleaseCFMConnection()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTRemoveFromHashList()

OTLink* OTRemoveFromHashList ( OTHashList hashList,
OTHashSearchProcPtr  searchProc,
const void *  refPtr,
UInt32  hashValue 
)

OTRemoveFromHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTRemoveLinkFromHashList()

Boolean OTRemoveLinkFromHashList ( OTHashList hashList,
OTLink linkToRemove 
)

OTRemoveLinkFromHashList()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: not available
Mac OS X: not available

◆ OTRemoveStreamFromProvider()

StreamRef OTRemoveStreamFromProvider ( ProviderRef  ref)

OTRemoveStreamFromProvider()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTScheduleTimerTask()

Boolean OTScheduleTimerTask ( OTTimerTask  timerTask,
OTTimeout  milliSeconds 
)

OTScheduleTimerTask()

Non-Carbon CFM: not available
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTSetBit()

Boolean OTSetBit ( UInt8 *  bitMap,
OTByteCount  bitNo 
)

OTSetBit()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTSetFirstClearBit()

OTResult OTSetFirstClearBit ( UInt8 *  bitMap,
OTByteCount  startBit,
OTByteCount  numBits 
)

CALL_NOT_IN_CARBON !OTKERNEL CALL_NOT_IN_CARBON ***** Common Utilities The utilities defined in this section are available to both client and kernel code. Cool huh? These utilities differ from those provided in "OpenTransport.h" in that they are only available to native architecture clients. Bitmap functions These functions atomically deal with a bitmap that is multiple-bytes long Set the first clear bit in "bitMap", starting with bit "startBit", giving up after "numBits". Returns the bit # that was set, or a kOTNotFoundErr if there was no clear bit available OTSetFirstClearBit()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTSMCallStateProc()

Boolean OTSMCallStateProc ( OTStateMachine sm,
OTStateProcPtr  proc,
UInt32  state 
)

OTSMCallStateProc used to take a parameter of type UInt16_p, which was defined to be the same as UInt32. In an attempt to reduce the number of wacky types defined by the OT interfaces, we've changed these routines to just take a straight UInt32. You should be warned that the current implementation does not support values outside of the range 0..32767. The same applies to OTSMSetState. OTSMCallStateProc()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMComplete()

void OTSMComplete ( OTStateMachine sm)

Fill out the fCookie, fCode, and fResult fields before calling! OTSMComplete()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMCreateControlStream()

Boolean OTSMCreateControlStream ( OTStateMachine sm,
OTConfigurationRef  cfig,
TOTConfiguratorRef  cfigor 
)

OTSMCreateControlStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMCreateStream()

Boolean OTSMCreateStream ( OTStateMachine sm,
OTConfigurationRef  cfig,
OTOpenFlags  flags 
)

OTSMCreateStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMGetClientData()

void* OTSMGetClientData ( OTStateMachine sm)

OTSMGetClientData()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMGetMessage()

Boolean OTSMGetMessage ( OTStateMachine sm,
StreamRef  strm,
strbuf ctlbuf,
strbuf databuf,
OTFlags flagsPtr 
)

OTSMGetMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMGetState()

UInt16 OTSMGetState ( OTStateMachine sm)

OTSMGetState()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMInstallCompletionProc()

void OTSMInstallCompletionProc ( OTStateMachine sm,
OTSMCompleteProcPtr  completeProc,
void *  contextPtr 
)

OTSMInstallCompletionProc()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMIoctl()

Boolean OTSMIoctl ( OTStateMachine sm,
StreamRef  strm,
UInt32  cmd,
long  data 
)

OTSMIoctl()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMOpenStream()

Boolean OTSMOpenStream ( OTStateMachine sm,
const char *  name,
OTOpenFlags  flags 
)

OTSMOpenStream()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMPopCallback()

void OTSMPopCallback ( OTStateMachine sm)

OTSMPopCallback()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMPutMessage()

Boolean OTSMPutMessage ( OTStateMachine sm,
StreamRef  strm,
strbuf ctlbuf,
strbuf databuf,
OTFlags  flags 
)

OTSMPutMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMReturnToCaller()

OSStatus OTSMReturnToCaller ( OTStateMachine sm)

OTSMReturnToCaller()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMSetState()

void OTSMSetState ( OTStateMachine sm,
UInt32  state 
)

OTSMSetState()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTSMWaitForComplete()

Boolean OTSMWaitForComplete ( OTStateMachine sm)

OTSMWaitForComplete()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamClose()

OSStatus OTStreamClose ( StreamRef  strm)

OTStreamClose()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamGetMessage()

OTResult OTStreamGetMessage ( StreamRef  strm,
strbuf ctlbuf,
strbuf databuf,
OTFlags flags 
)

STREAMS primitives OTStreamGetMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamGetPriorityMessage()

OTResult OTStreamGetPriorityMessage ( StreamRef  strm,
strbuf ctlbuf,
strbuf databuf,
OTBand band,
OTFlags flags 
)

OTStreamGetPriorityMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamInstallNotifier()

OSStatus OTStreamInstallNotifier ( StreamRef  strm,
OTNotifyUPP  proc,
void *  contextPtr 
)

there can be only 2! Notifiers and modes of operation OTStreamInstallNotifier()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamIoctl()

OTResult OTStreamIoctl ( StreamRef  strm,
UInt32  cmd,
void *  data 
)

OTStreamIoctl()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamIsBlocking()

Boolean OTStreamIsBlocking ( StreamRef  strm)

OTStreamIsBlocking()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamIsSynchronous()

Boolean OTStreamIsSynchronous ( StreamRef  strm)

OTStreamIsSynchronous()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamOpen()

StreamRef OTStreamOpen ( const char *  name,
OTOpenFlags  oFlags,
OSStatus *  errPtr 
)

Opening and closing raw streams OTStreamOpen()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamPipe()

OTResult OTStreamPipe ( StreamRef  streamsToPipe[])

OTStreamPipe()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamPoll()

OTResult OTStreamPoll ( PollRef fds,
UInt32  nfds,
OTTimeout  timeout 
)

Polling a stream for activity OTStreamPoll()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamPutMessage()

OSStatus OTStreamPutMessage ( StreamRef  strm,
const strbuf ctlbuf,
const strbuf databuf,
OTFlags  flags 
)

OTStreamPutMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamPutPriorityMessage()

OSStatus OTStreamPutPriorityMessage ( StreamRef  strm,
const strbuf ctlbuf,
const strbuf databuf,
OTBand  band,
OTFlags  flags 
)

OTStreamPutPriorityMessage()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamRead()

OTResult OTStreamRead ( StreamRef  strm,
void *  buf,
OTByteCount  len 
)

Classic UNIX file descriptor operations OTStreamRead()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamRemoveNotifier()

void OTStreamRemoveNotifier ( StreamRef  strm)

OTStreamRemoveNotifier()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamSetAsynchronous()

void OTStreamSetAsynchronous ( StreamRef  strm)

OTStreamSetAsynchronous()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamSetBlocking()

void OTStreamSetBlocking ( StreamRef  strm)

OTStreamSetBlocking()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamSetControlMask()

void OTStreamSetControlMask ( StreamRef  strm,
UInt32  mask,
Boolean  setClear 
)

Miscellaneous stuff OTStreamSetControlMask()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamSetNonBlocking()

void OTStreamSetNonBlocking ( StreamRef  strm)

OTStreamSetNonBlocking()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamSetSynchronous()

void OTStreamSetSynchronous ( StreamRef  strm)

OTStreamSetSynchronous()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamUseSyncIdleEvents()

OSStatus OTStreamUseSyncIdleEvents ( StreamRef  strm,
Boolean  useEvents 
)

OTStreamUseSyncIdleEvents()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTStreamWrite()

OTResult OTStreamWrite ( StreamRef  strm,
void *  buf,
OTByteCount  len 
)

OTStreamWrite()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTTestBit()

Boolean OTTestBit ( UInt8 *  bitMap,
OTByteCount  bitNo 
)

OTTestBit()

Non-Carbon CFM: in OTUtilityLib 1.0 and later
Carbon Lib: in CarbonLib 1.0 and later
Mac OS X: in version 10.0 and later

◆ OTUnholdThisCFMLibrary()

void OTUnholdThisCFMLibrary ( void  )

Used in a CFM terminate proc, will unhold the executable code, if applicable. This can also be the terminate proc of the library OTUnholdThisCFMLibrary()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTUnloadASLMLibrary()

void OTUnloadASLMLibrary ( const char *  libName)

Unload an ASLM library OTUnloadASLMLibrary()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ OTYieldPortRequest()

OSStatus OTYieldPortRequest ( ProviderRef  ref,
OTPortRef  portRef,
OTClientList buffer,
OTByteCount  size 
)

Returns a buffer containing all of the clients that refused to yield the port. "size" is the total number of bytes @ buffer, including the fNumClients field. OTYieldPortRequest()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ StoreIntoNetbuf()

Boolean StoreIntoNetbuf ( TNetbuf netBuf,
void *  source,
SInt32  len 
)

StoreIntoNetbuf()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ StoreMsgIntoNetbuf()

Boolean StoreMsgIntoNetbuf ( TNetbuf netBuf,
OTBuffer buffer 
)

StoreMsgIntoNetbuf()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ UnloadUnusedLibraries()

void UnloadUnusedLibraries ( void  )

This is an ASLM utility routine. You can get it by including "LibraryManagerUtilities.h", but since we only use a few ASLM utilities, we put the prototype here for convenience. UnloadUnusedLibraries()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available