Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
NG_SSCFU(4)	       FreeBSD Kernel Interfaces Manual		   NG_SSCFU(4)

NAME
     ng_sscfu -- netgraph SSCF at the UNI node type

SYNOPSIS
     #include <netnatm/saal/sscopdef.h>
     #include <netnatm/saal/sscfudef.h>
     #include <netgraph/atm/ng_sscfu.h>

DESCRIPTION
     The sscfu netgraph	node type implements ITU-T recommendation Q.2130.
     This recommendation specifies the Service Specific	Coordination Function
     at	the UNI.  This is a thin sub-layer between the SSCOP (see ng_sscop(4))
     and the UNI signalling.  This node	does not really	implement a protocol
     but provides a mapping between the	signals	at the upper layer of the
     SSCOP and the signals the UNI expects at its lower	layer.	It also	pro-
     vides default values for the parameters of	the SSCOP.

     After creation of the node, the SSCF instance must	be created by sending
     an	``enable'' message to the node.	 If the	node is	enabled, default SSCOP
     parameters	can be retrieved and set in the	corresponding SSCOP instance.

     The node is shut down either by a NGM_SHUTDOWN message, or	when all hooks
     are disconnected.

HOOKS
     Each sscfu	node has two hooks with	fixed names:

     lower  This hook is the interface to the SSCOP.  The interface expected
	    here is exactly that which is exported by the ng_sscop(4) node
	    type.

     upper  This is the	interface to the UNI.  It uses the following message
	    format:

	    struct sscfu_arg {
		    uint32_t sig;
		    u_char   data[];
	    };

	    The	sig field is one of the	following signals:

	    enum saal_sig {
		SAAL_ESTABLISH_request,	    /* U -> SAAL: (UU) */
		SAAL_ESTABLISH_indication,  /* SAAL -> U: (UU) */
		SAAL_ESTABLISH_confirm,	    /* SAAL -> U: (UU) */
		SAAL_RELEASE_request,	    /* U -> SAAL: (UU) */
		SAAL_RELEASE_confirm,	    /* SAAL -> U: */
		SAAL_RELEASE_indication,    /* SAAL -> U: (UU) */
		SAAL_DATA_request,	    /* U -> SAAL: (DATA) */
		SAAL_DATA_indication,	    /* SAAL -> U: (DATA) */
		SAAL_UDATA_request,	    /* U -> SAAL: (UDATA) */
		SAAL_UDATA_indication,	    /* SAAL -> U: (UDATA) */
	    };

	    The	arrows in the comment show the direction of the	signal,
	    whether it is a signal that	comes out of the node (`->'), or is
	    sent by the	node user to the node (`<-').  The type	of the data
	    expected for the signal is specified in parentheses.  This data
	    starts at the data field of	the message structure.

     If	the lower hook is disconnected and the node is enabled,	the protocol
     state is reset.

CONTROL	MESSAGES
     The sscfu node understands	the generic messages plus the following:

     NGM_SSCFU_GETDEFPARAM (getdefparam)
	  This message returns a sscop_param structure,	which contains the
	  default parameters for the SSCOP at the UNI.	This structure should
	  be used for a	NGM_SSCOP_SETPARAM message to the SSCOP	node below the
	  SSCF.

     NGM_SSCFU_ENABLE (enable)
	  This message creates the actual SSCF instance	and initializes	it.
	  Until	this is	done, parameters may neither be	retrieved nor set, and
	  all messages received	on any hook are	discarded.

     NGM_SSCFU_DISABLE (disable)
	  Destroy the SSCF instance.  After this, all messages on any hooks
	  are discarded.

     NGM_SSCFU_GETDEBUG	(getdebug)
	  Retrieve the debugging flags in a uint32_t.

     NGM_SSCFU_SETDEBUG	(setdebug)
	  Set debugging	flags.	The argument must be a uint32_t.

     NGM_SSCFU_GETSTATE	(getstate)
	  Retrieve the current state of	the SSCFU instance in a	uint32_t.  If
	  the node has not been	enabled, 0 is returned.

SEE ALSO
     netgraph(4), ng_atm(4), ng_sscop(4), ngctl(8)

AUTHORS
     Harti Brandt <harti@FreeBSD.org>

FreeBSD	9.2		       October 24, 2003			   FreeBSD 9.2

NAME | SYNOPSIS | DESCRIPTION | HOOKS | CONTROL MESSAGES | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=ng_sscfu&sektion=4&manpath=FreeBSD+10.0-RELEASE>

home | help