{------------------------------------------------------------------------------
{
{              D D D   0 0
{              D     D     0
{              D    0 D     0
{              D    0 D     0
{              D    0 D     0
{              D     0     0
{              D D D   0 0         ------- D0 Online Software
{
{
{    ITC Get Partner Info Module --  GET.EPAS
{
{    Purpose and Methods : Routines used to get partner info for ITC
{			   connections.
{
{    Arguments : None
{    Exports   : ITC_GetPID
{		 ITC_Get_Port
{
{    Created on December 2, 1989  by John Featherly
{
{------------------------------------------------------------------------------
}
Module Get;
Include  GLOBAL;

Function ITC_GetPID
	(	VAR Channel	: CHANNEL_RANGE;
		VAR PID		: INTEGER ) : INTEGER;
Begin
  ITC_GetPID := ITC__Success;		{ Default return status }
  PID := 0;				{ Default return value }
  If not ( (Channel > None) and (Channel <= Number_of_Channels) )
				Then ITC_GetPID := ITC__Bad_Arg
  Else If not (init and CCB[Channel].In_Use)
				Then ITC_GetPID := ITC__No_Channel
  Else
    PID := CCB[Channel].Partner
End  { ITC Get PID };

{-----------------------------
{   ITC_Get_Net_Number
{-----------------------------
}
Function ITC_Get_Net_Number
	    (   VAR Channel	: CHANNEL_RANGE;
		VAR Num	: $UWORD ) : INTEGER;
Begin
  ITC_Get_Net_Number := ITC__Success;		{ Default return status }
  Num := 0;				{ Default return value }
  If not ( (Channel > None) and (Channel <= Number_of_Channels) )
				Then ITC_Get_Net_Number := ITC__Bad_Arg
  Else If not (init and CCB[Channel].In_Use)
				Then ITC_Get_Net_Number := ITC__No_Channel
  Else
    Num := CCB[Channel].DN_Numb
End  { ITC Get Net Number };

{-----------------------------
{   ITC_Get_Node
{-----------------------------
}
Function ITC_Get_Node
	( VAR	Channel	    : CHANNEL_RANGE;
	  VAR	Node	    : STRING(<n>);
	  VAR	Length	    : [LIST] INTEGER ) : INTEGER;
Begin
  ITC_Get_Node := ITC__Success;		{ Default return status }
  If not ( (Channel > None) and (Channel <= Number_of_Channels) )
				Then ITC_Get_Node := ITC__Bad_Arg
  Else If not (init and CCB[Channel].In_Use)
				Then ITC_Get_Node := ITC__No_Channel
  Else Begin
    Node := CCB[Channel].To_Node;
    { Length := CCB[Channel].To_Node.Length }
  End {else}
End  { ITC Get Node };

Function ITC_Get_Port
	(	VAR Channel	: CHANNEL_RANGE;
		VAR RPort	: Port ) : INTEGER;
Begin
  ITC_Get_Port := ITC__Success;		{ Default return status }
  {RPort := 0;}				{ Default return value }
  If not ( (Channel > None) and (Channel <= Number_of_Channels) )
				Then ITC_Get_Port := ITC__Bad_Arg
  Else If not (init and CCB[Channel].In_Use)
				Then ITC_Get_Port := ITC__No_Channel
  Else
    RPort := CCB[Channel].IO_Port
End  { ITC Get Port };

End  { Module Get }.
