sysevent_get_subclass_name man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

sysevent_get_class_name(SystemEEvent Librarysysevent_get_class_name(3SYSEVENT)

NAME
       sysevent_get_class_name, sysevent_get_subclass_name, sysevent_get_size,
       sysevent_get_seq, sysevent_get_time - get class name, subclass name, ID
       or buffer size of event

SYNOPSIS
       cc [flag...]  file ...-lsysevent [library...]
       #include <libsysevent.h>

       char *sysevent_get_class_name(sysevent_t *ev);

       char *sysevent_get_subclass_name(sysevent_t *ev);

       int sysevent_get_size(sysevent_t *ev);

       uint64_t sysevent_get_seq(sysevent_t *ev);

       void sysevent_get_time(sysevent_t *ev, hrtime_t *etimep);

PARAMETERS
       ev	       handle to event

       etimep	       pointer to high resolution event time variable

DESCRIPTION
       The  sysevent_get_class_name()  and  sysevent_get_subclass_name() func‐
       tions return, respectively, the class and subclass names for  the  pro‐
       vided event ev.

       The  sysevent_get_size() function returns the size of the event buffer,
       ev.

       The sysevent_get_seq() function returns a unique event sequence	number
       of event ev. The sequence number is reset on every system boot.

       The  sysevent_get_time()	 function  writes  the time the event was pub‐
       lished into the variable pointed to by etimep. The event time is	 added
       to  the	event  just  before  it	 is put into the kernel internal event
       queue.

EXAMPLES
       Example 1: Parse sysevent header information.

       The following example parses sysevent header information from an appli‐
       cation's event handler.

       hrtime_t last_ev_time;
       unit64_t last_ev_seq;

       void
       event_handler(sysevent_t *ev)
       {
		sysevent_t *new_ev;
		int ev_sz;
		hrtime_t ev_time;
		uint64_t ev_seq;

		/* Filter on class and subclass */
		if (strcmp(EC_PRIV, sysevent_get_class_name(ev)) != 0) {
			return;
		} else if (strcmp("ESC_MYSUBCLASS,
		    sysevent_get_subclass_name(ev)) != 0) {
			return;
		}

		/*
		 * Check for replayed sysevent, time must
		 * be greater than previously recorded.
		 */
		sysevent_get_event_time(ev, &ev_time);
		ev_seq = sysevent_get_seq(ev);
		if (ev_time < last_ev_time ||
		    (ev_time == last_ev_time && ev_seq <=
		    last_ev_seq)) {
			return;
		}

		last_ev_time = ev_time;
		last_ev_seq = ev_seq;

		/* Store event for later processing */
		ev_sz = sysevent_get_size(ev):
		new_ev (sysevent_t *)malloc(ev_sz);
		bcopy(ev, new_ev, ev_sz);
		queue_event(new_ev);
       }

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Evolving			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │MT-Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       attributes(5)

SunOS 5.10			  1 Apr 2003sysevent_get_class_name(3SYSEVENT)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net