Specification of package Tgx.Ios.File_Ios.Socket_Ios







 ========================================================================= --
 ===                                                                   === --
 ===                 Top Graph'X CORBA Implementation                  === --
 ===                                                                   === --
 ===                 Copyright (c) 1996, Top Graph'X.                  === --
 ===                                                                   === --
 ===                     --- Copyright Notice ---                      === --
 ===                                                                   === --
 ===    This software is protected as an unpublished work under the    === --
 ===     Copyright Act of 1976.  All rights reserved.  Top Graph'X.    === --
 ===                                                                   === --
 ========================================================================= --
with Tgx.System_Ios ;
use  Tgx.System_Ios ;
package Tgx.Ios.File_Ios.Socket_Ios is
   type Socket_Protocol is (No_Proto, Tcp, Udp) ;

    Local declarations usually provided by Tgx.System_Ios
   subtype Port is Tgx.System_Ios.Port;
   subtype Socket_Type is Integer_32;
   Invalid_File : constant := Tgx.Ios.File_Ios.Invalid_File;

   Af_Unspec : Tgx.System_Ios.Socket_Address_Family renames Tgx.System_Ios.Af_Unspec;
   Af_Unix : Tgx.System_Ios.Socket_Address_Family renames Tgx.System_Ios.Af_Unix;
   Af_Inet : Tgx.System_Ios.Socket_Address_Family renames Tgx.System_Ios.Af_Inet;


   type Socket_Connection is new File_Connection with
   record
      Host     : String_Pointer ;
      Tcp_Port : Port ;
      Family   : Socket_Address_Family ;
      Protocol : Socket_Protocol ;
   end record ;
   type Socket_Access is access all Socket_Connection'class ;

   procedure Open (This : access Socket_Connection) ;

   procedure Close (This : access Socket_Connection) ;

    Returns the URL indicating the sending client
   function Url (Client   : access Socket_Connection)
      return Standard.String ;

   type Service_Connection is new File_Server with
   record
      Tcp_Port : Port ;
      Family   : Socket_Address_Family ;
      Protocol : Socket_Protocol ;
      File     : String_Pointer ;
      Info     : Internet_Record ;
   end record ;
   type Service_Access is access all Service_Connection'class ;

   procedure Open (This : access Service_Connection) ;

   procedure Close (This : access Service_Connection) ;

   procedure New_Connection ( Server   : access Service_Connection ;
                              No_Guard : in Boolean := True;
                              Result   : in out Io_Connection_Access);

    Returns the URL used by clients to connect to server
   function Url (Server   : access Service_Connection)
      return Standard.String ;
   procedure Use_Ip_In_Urls (Mode : in Boolean) ;

    Utilities common to subclasses
   function Ip_Name (Host_Name : in String) return String ;
   function Is_Internet_Address (Host_Name : in String) return Boolean;
   function Build_Internet_Address (Host_Name : in String) return Internet_Address;
   function Connection_Done (Fd : in Integer_32) return Boolean;

end Tgx.Ios.File_Ios.Socket_Ios ;



List of definition uses










This page was generated by PrismTech's ada2html on Friday Mai 12 2006 16:18