?? LEFT := 1, RIGHT := 110 ??
?? NEWTITLE := 'NAM/VE: Socket Layer Static Data - oss$network_paged' ??
MODULE nlm$sk_static_data;

{ PURPOSE:
{   This module contains all the static data refereced by the Socket Layer
{ code for both UDP and TCP.

?? PUSH (LISTEXT := ON) ??
?? NEWTITLE := 'Global Declarations Referenced by This Module', EJECT ??
*copyc nlc$sk_min_assigned_port
*copyc nlt$sk_offered_sockets_list
*copyc nlt$tcp_listen_sockets
*copyc nlt$tcp_ports
*copyc nlt$tm_addr_access_req_queue
*copyc nlt$tm_device_configuration
*copyc nlt$tm_local_host_name
*copyc nlt$tm_route_cache
*copyc nlt$tm_static_routing_table
*copyc nlt$tm_subnet_list
*copyc nlt$udp_ports
*copyc nlt$udp_global_sockets
*copyc nlt$udp_reference_number
*copyc oss$network_paged
?? POP ??
?? OLDTITLE ??
?? NEWTITLE := '  NAM/VE Socket Layer Global Variables', EJECT ??

  VAR
    nav$sk_socket_layer_active: [XDCL, #GATE, oss$network_paged] boolean := FALSE,
    nlv$sk_offered_sockets_list: [XDCL, #GATE, oss$network_paged] nlt$sk_offered_sockets_list :=
      [[0], NIL, NIL],
    nlv$udp_active_global_sockets: [XDCL, #GATE, oss$network_paged] nlt$udp_reference_number := 0,
    nlv$tcp_listen_sockets: [XDCL, #GATE, oss$network_paged] nlt$tcp_listen_sockets := [[FALSE, 0, FALSE,
      0], NIL],
    nlv$tcp_ports: [XDCL, #GATE, oss$network_paged] nlt$tcp_ports :=
      [[0], nlc$sk_min_assigned_port, NIL],
    nlv$udp_ports: [XDCL, #GATE, oss$network_paged] nlt$udp_ports :=
      [[0], nlc$sk_min_assigned_port, NIL],
    nlv$udp_global_sockets: [XDCL, #GATE, oss$network_paged] nlt$udp_global_sockets :=
      [0, 0, nil],
    nlv$udp_global_sockets_control: [XDCL, #GATE, oss$network_paged] nlt$udp_global_sockets_control :=
      [nlc$udp_global_sockets_unlocked];

?? OLDTITLE ??
?? NEWTITLE := 'NAM/VE TCP/IP Management Global Variables', EJECT ??
{
{ PURPOSE:
{   This variable contains all of the outstanding address accessible requests.
{   A request is queued when all of the configured devices are queried for a
{   specific destination address.  As each device responds the request is updated.
{   After the last device responds the request is removed from the queue.  The
{   requestor will be readied and informed which device if any is the best route
{   to the destination address.
{

  VAR
    nlv$tm_address_accessible: [XDCL, #GATE, oss$network_paged] nlt$tm_addr_access_req_queue :=
          [[0] ,NIL];
{ NOTE:
{   The intent of this variable is to hold information about each configured device.

  VAR
    nlv$tm_device_configuration: [XDCL, #GATE, oss$network_paged] ^nlt$tm_device_configuration := NIL;

{ NOTE:
{   nlv$tm_host is initiallized by the DEFINE_TCPIP_HOST command.

  VAR
    nlv$tm_host: [XDCL, #GATE, oss$network_paged] nlt$tm_local_host_name := [0, *];

{ NOTE:
{   The route cache is enabled with the DEFINE_TCPIP_HOST command.

  VAR
    nlv$tm_route_cache: [XDCL, #GATE, oss$network_paged] nlt$tm_route_cache := [
       [REP nlc$tm_hash_elements of [[0], NIL]], 4, 60000, 60000];
{ NOTE:
{   The static routing table is built with the DEFINE_STATIC_ROUTE command.

  VAR
    nlv$tm_static_routing_table: [XDCL, #GATE, oss$network_paged] nlt$tm_static_routing_table :=
          [[FALSE, 0, FALSE, 0],NIL];

{ NOTE:
{   The subnet list is enabled with the DEFINE_TCPIP_HOST command.

  VAR
    nlv$tm_subnet_list: [XDCL, #GATE, oss$network_paged] nlt$tm_subnet_list := [[FALSE, 0, FALSE, 0], NIL];
?? OLDTITLE ??
MODEND nlm$sk_static_data;
