Protocols facilitates modular addition of network protocols on top of either TCP or UDP. 
Used by ltrx_network_allowed_protocols() and ltrx_network_lookup_network_protocol().
More than one of these values may be "or'ed" together.
If neither LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__TCP nor LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__UDP is set, both TCP and UDP are allowed. 
| Enumerator | 
|---|
| LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__REQUIRE_NONBLOCKING | Requires non-blocking send.  | 
| LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__CLIENT | Requires client.  | 
| LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__SERVER | Requires server.  | 
| LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__TCP | Allow TCP based.  | 
| LTRX_NETWORK_ALLOWED_PROTOCOLS_FLAGS__UDP | Allow UDP based.  | 
 
 
How in protocolShutdown call. 
| Enumerator | 
|---|
| LTRX_NETWORK_PROTOCOL_SHUTDOWN__SEND | Send direction only.  | 
| LTRX_NETWORK_PROTOCOL_SHUTDOWN__RECEIVE | Receive direction only.  | 
| LTRX_NETWORK_PROTOCOL_SHUTDOWN__BOTH | Both directions.  | 
 
 
Return code from optProtocolSendDataNonBlocking. 
| Enumerator | 
|---|
| LTRX_NETWORK_RETURN__WORKING | Working.  | 
| LTRX_NETWORK_RETURN__SUCCESS | Success.  | 
| LTRX_NETWORK_RETURN__FAILURE | Failure.  | 
 
 
Iterate through allowed protocols. 
By incrementing zeroBasedIterator in successive calls, caller may iterate through allowed protocols. 
- Returns
- Protocol name. 
- Return values
- 
  
    | NULL | No more protocols were found. |  
 
- Parameters
- 
  
    | [in] | zeroBasedIterator | 0in first call,1in second, and so on. |  | [in] | flags | Specifies restrictions, so only the allowed protocols will be returned. |  
 
 
 
Lookup a protocol. 
- Returns
- Protocol structure. 
- Return values
- 
  
    | NULL | No acceptable protocol was found. |  
 
- Parameters
- 
  
    | [in] | protocolName | Name of desired protocol. |  | [in] | flags | Specifies restrictions, so only an allowed protocol will be returned. |  
 
 
 
Register a network protocol. 
Registers procedures into the system for supporting another network protocol.
Registration must be done in early module initialization. 
- Parameters
- 
  
    | [in] | lnp | Designates the procedures to support this protocol. |  
 
 
 
Set up an output stream to an open socket. 
- Return values
- 
  
    | true | Success. |  | false | Failed. |  
 
- Parameters
- 
  
    | [out] | outStream | Your tcp output stream struct to initialize. |  | [in] | lis | The open TCP socket that will be fed by the stream. |  | [in] | lnp | The abstract network protocol. |  | [in] | lnph | The abstract network protocol instance. |