[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]

Technical Reference: Kernel and Subsystems, Volume 1

ns_add_status Network Service

Purpose

Adds a status filter for the routing of asynchronous status.

Syntax

#include <sys/cdli.h>
#include <sys/ndd.h>


int ns_add_status (nddp, statfilter, len, ns_statuser)
struct ndd * nddp;
caddr_t statfilter;
int len;
struct ns_statuser * ns_statuser;

Parameters

nddp Specifies a pointer to the ndd structure to which this add request applies.
statfilter Specifies a pointer to the status filter.
len Specifies the length, in bytes, of the value of the statfilter parameter.
ns_statuser Specifies a pointer to an ns_statuser structure that defines this user.

Description

The ns_add_status network service registers a status filter. The add request is passed on to the nd_add_status function of the demuxer for the specified network device driver (NDD). This network service enables the user to receive asynchronous status information from the specified device.

Note
The user's status processing function is specified by the isr field of the ns_statuser structure. The network demuxer calls the user's status processing function directly when asynchronous status information becomes available. Consequently; the status processing function cannot be a scheduled routine. The caller of the ns_add_status network service is responsible for relinquishing status filters before calling the ns_free network service.

Examples

The following example illustrates the ns_add_status network service:

struct ns_statuser   user;
struct ns_com_status   filter;
  
filter.filtertype = NS_STATUS_MASK;
filter.mask = NDD_HARD_FAIL;
filter.sid = 0;
user.isr = status_fn;
user.isr_data = whatever_makes_sense;
  
error = ns_add_status(nddp, &filter, sizeof(filter), &user);

Return Values

0 Indicates the operation was successful.

The network demuxer may supply other return values.

Related Information

The ns_del_status network service.

[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]