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

FreeBSD Manual Pages


home | help
NG_SSCFU(4)		 BSD Kernel Interfaces Manual		   NG_SSCFU(4)

     ng_sscfu -- netgraph SSCF at the UNI node type

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

     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 SS-
     COP and the signals the UNI expects at its	lower layer.  It also provides
     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.

     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

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

	    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.

     The sscfu node understands	the generic messages plus the following:

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

     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.

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

     Harti Brandt <>

BSD			       October 24, 2003				   BSD


Want to link to this manual page? Use this URL:

home | help