
  PROCEDURE [INLINE] nlp$tm_select_by_local_tcp_addr
    (    local_address: nat$sk_ip_address;
     VAR device_id: nlt$device_identifier;
     VAR status: ost$status);

?? PUSH (LISTEXT := ON) ??
?? RIGHT := 110 ??

    VAR
      address: nlt$tcpip_address,
      error_length: integer,
      error_string: string (20),
      i: integer;

    status.normal := TRUE;

    FOR i := 1 TO nlv$tm_device_configuration^.count DO
      IF nlv$tm_device_configuration^.list [i].local_device_address.full = local_address THEN
        CASE nlv$tm_device_configuration^.list [i].protocol OF
        = nlc$tm_tcp_udp, nlc$tm_tcp =
          device_id := i;
        ELSE
          address.full := local_address;
          STRINGREP (error_string, error_length, address.sub_part [1], '.', address.sub_part [2], '.',
                address.sub_part [3], '.', address.sub_part [4]);
          osp$set_status_abnormal (nac$status_id, nae$tm_addr_not_for_tcp_device,
                error_string (1, error_length), status);
        CASEND;
        RETURN; {----->
      IFEND;
    FOREND;

    address.full := local_address;
    STRINGREP (error_string, error_length, address.sub_part [1], '.', address.sub_part [2], '.',
          address.sub_part [3], '.', address.sub_part [4]);
    osp$set_status_abnormal (nac$status_id, nae$tm_local_address_not_found, error_string (1, error_length),
          status);

  PROCEND nlp$tm_select_by_local_tcp_addr;

*copyc nlh$tm_select_by_local_tcp_addr

*copyc nae$tcpip_mgmt_condition_codes
*copyc nat$sk_ip_address
*copyc nlt$device_identifier
*copyc nlt$tcpip_address
*copyc nlv$tm_device_configuration
*copyc ost$status
*copyc osp$set_status_abnormal
?? POP ??

