ntv_connect


	status.i4.v = ntv_connect([task_name.i4.v] [,virt_node_name.i4.v])

	Connect the user process to the ACNET network and set the
	network task name as specified.

	[task_name]	longword with the network task name or handle
			(Radix-50).  If this is defaulted (or no arguments
			to routine), AND this is the first call, then the
			default network task name is used (see below).

	[virt_node_name] longword with the network vietual node name
			(Radix-50).  If this is defaulted (or no arguments
			to routine), the efault network node name is used.

	status	 VMS completion condition code.

	If the user process is already connected to the ACNET network,
	this routine provides a method to add additional "handles"
	which may be used to support multiple receive-unsolicited-message
	(RUM) channels.  Each call to this routine with a non-defaulted
	tsknam argument will create a new "handle".

	IMPORTANT:  'ntv_connect' will NOT change a task's default handle
	to point to the newly-created handle if a prior hard connection
	to the network already exists.  It is highly advisable that
	NTV_HANDLE be called prior to any call to ntv_receive_request
	to ensure that the correct handle is being referenced.  Please
	refer to "Software Documentation Memo 64" for more information
	on this topic.  One should not assume that a task uses only
	a single handle (ACNET callback services create a hidden handle).

	If the user is already connected and the tsknam argument is
	defaulted, then this routine is a null operation.  This will
	allow layered software to insure that the process is connected
	to the network.

	The default network task name is constructed by taking the first
	six characters of the VMS process name and converting them to
	Radix-50.  If the first character of the process name is "_",
	it is skipped and the second through seventh characters are used
	to form the network task name (so that "JOB532" is used from
	"_JOB4325").

	This function returns status values as follows:

	SS__NORMAL	success, process connected to the network
	SS__BADPARAM	bad $GETJPI parameter (internal network bug)
	SS__EXQUOTA	process exceeded paging file quota in
			mapping to NETCOMMON global section
	SS__INSFWSL	insufficient working set limit to allow expansion
			of P0 region to map NETCOMMON global section
	SS__LCKPAGFUL	system limit on number of locked pages reached
	SS__NONEXPR	non-existant network process
	SS__NOPRIV	cannot allow access (or requested type of access)
			to the NETCOMMON global section.
	SS__NOSUCHSEC	the NETCOMMON global section does not exist
	SS__OPINCOMPL	NETCOMMON not completely locked into memory
	SS__SSFAIL	no XSC block in dynamic memory
	SS__VASFULL	virtual address space of the process is full,
			no room exists to map NETCOMMON global section
	SS__VECINUSE	block/buffer pointer save vector in already use
	NET__ASTACTIVE	cannot perform function at AST level
	NET__HANLSTFUL	connection failed because handle list full
	NET__NOTALLMAP	not all of NETCOMMON was mapped successfully.
	NET__NOCTLBLK	no free control blocks available
	NET__RUMNAMEXI	RUM task of same name already exists
	NET__TSKLSTFUL	network task connect list full (no room)

	The following completion codes are indicative of a possible
	internal network error:

	NET__BUGCHECK	internal network error
	SS__ACCVIO	access violation in VMS system service call
	SS__ENDOFFILE	NETCOMMON section file is empty!
	SS__INSFARG	insufficient number of arguments to VMS
			system service
	SS__INTERLOCK	global section allocation bit map in shared
			memory is locked by another process.
	SS__IVLOGNAM	invalid global section name
	SS__IVSECFLG	a reserved section flag was set.
	SS__IVSECIDCTL	the match control field of the global section
			id is invalid
	SS__PAGOWNVIO	page in the specified input address range is
			owned by a more privileged access mode.
	SS__SHMNOTCNCT	shared memory not connected
	SS__TOOMANYLNAM	logical name translation exceeded allowed depth

	This function requires the following include files:

	acnet_h, ssdef_h

	Related functions:

	ntv_disconnect, ntv_handle