unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Page:
Section:
Apropos / Subsearch:
optional field



strmod_del(2)							strmod_del(2)



NAME

  strmod_del - Deletes STREAMS modules and drivers

SYNOPSIS

  #include <&lt;sys/stream.h>&gt;
  int strmod_del (
	  dev_t	devno,
	  struct streamtab *streamtab,
	  struct streamadm *streamadm);

PARAMETERS

  devno
      The device number	(cdevsw	slot) to use when removing a STREAMS driver.
      This parameter is	ignored	for modules.

  streamtab
      A	pointer	to the streamtab structure that	contains the entry points.
      The actual streamtab structure has to be allocated permanently in	the
      driver's data space (as specified	by System V Release 3.2).

  streamadm
      A	pointer	to the streamadm structure that	contains the administration
      parameters for the STREAMS module	or driver.  The	actual streamadm
      structure	is needed only for the duration	of the call.  It does not
      have to be allocated permanently by the caller.  The sa_version field
      must be either OSF_STREAMS_10 or OSF_STREAMS_11, and the sa_flags	field
      must be either STR_IS_DEVICE or STR_IS_MODULE.

DESCRIPTION

  The strmod_del() interface is	used to	remove configured STREAMS modules and
  drivers from the kernel.  Specifically, it allows STREAMS drivers to remove
  entry	points in character device switch tables.  Modules are removed from
  the STREAMS modules switch.

  When removing	a driver only, strmod_del() takes a device number, which is
  used to determine the	device switch slot for the entry points.

  The streamtab	parameter is a pointer to a traditional	(System	V Release
  3.2) streamtab structure.  The structure contains pointers to	entry points
  for the module's read	and write queue	routines.

  The streamadm	parameter points to a streamadm	structure.  The	streamadm
  structure provides additional	information that is required under Tru64
  UNIX.

NOTES

  The device number can	be constructed from the	major number through the mak-
  edev	macro, which is	defined	in /usr/include/sys/types.h.

RETURN VALUES

  Upon successful completion, strmod_del() returns 0.  Otherwise, it returns
  one of the following values:

  [EINVAL]
    The	sa_version or sa_flags fields in the streamadm structure are not set
    correctly.

  [EBUSY]
    The	entry is in use	and cannot be removed.

  [ENOENT]
    The	entry to be removed is not found.

  -1
    The	devno is out of	range, or the devsw entry was not in use.

RELATED	INFORMATION

  Data Structures: streamadm(4).

  Routines: strmod_add(2).