[comp.sys.isis] isis_input

rich@oxtrap.sendai.ann-arbor.mi.us (K. Richard Magill) (10/21/89)

How do I turn a callback off?  ie, I've reached end of file or socket
broke and I've closed the descriptor.  Sooner or later, that
descriptor will be reallocated...

ken@gvax.cs.cornell.edu (Ken Birman) (10/21/89)

In article <RICH.89Oct20140203@oxtrap.sendai.ann-arbor.mi.us> rich@oxtrap.UUCP writes:
>How do I turn a callback off?  ie, I've reached end of file or socket
>broke and I've closed the descriptor.  Sooner or later, that
>descriptor will be reallocated...

Most of the ISIS callbacks can be turned off by repeating the
original call (i.e. isis_input) and specifying a null routine.
The constant NULLROUTINE is predefined to make this easy:
	isis_input(fdes, NULLROUTINE, NULLARG);

An exception is that pg_monitor and pg_watch have an
explicit cancel call.

rich@oxtrap.sendai.ann-arbor.mi.us (K. Richard Magill) (10/26/89)

In the man page, isis_input() is defined as:

int isis_input(int fd, int (*callback)(int fd, int arg), int arg);

but on page 287 of the manual (under quick reference):

int isis_input(int fd, int (*callback)(int fd /* no arg */ ), int arg);

and a quick perusal of the code, (after a bout with dbx), I think it
implements:

int isis_input(int fd, int (*callback)(/* no fd */ int arg), int arg);

ps, the isis_init() man page is scrambled.

ken@gvax.cs.cornell.edu (Ken Birman) (10/26/89)

In article <RICH.89Oct25232545@oxtrap.sendai.ann-arbor.mi.us>
	   rich@oxtrap.UUCP writes:
>In the man page, isis_input() is defined as:
>    int isis_input(int fd, int (*callback)(int fd, int arg), int arg);
>but on page 287 of the manual (under quick reference):
>    int isis_input(int fd, int (*callback)(int fd /* no arg */ ), int arg);
>... the isis_init() man page is also scrambled.

The code implements:
	int (*callback)(int arg);
Sorry about the error -- well fix the manual and both man pages.