ftp.nice.ch/pub/next/unix/communication/Alby.2.PPP.0.3.N.bs.tar.gz#/source/linedisc.h

This is linedisc.h in view mode; [Download] [Up]

From cs.sfu.ca!fass@vanbc.UUCP Tue May 18 14:07:33 1993
Received: by xtropia id AA24512
  (5.65c/IDA-1.4.4 for extropia.wimsey.com!miron); Tue, 18 May 1993 22:21:26 -0700
Received: from css.cs.sfu.ca by van-bc.wimsey.com with smtp
	(Smail3.1.28.1 #12) id m0nvfRJ-0000uUC; Tue, 18 May 93 21:07 PDT
Received: by css.cs.sfu.ca id AA20044
  (5.65c/IDA-1.4.4 for miron@extropia.wimsey.com); Tue, 18 May 1993 21:07:33 -0700
Date: Tue, 18 May 1993 21:07:33 -0700
From: Dan Fass <fass@cs.sfu.ca>
Message-Id: <199305190407.AA20044@css.cs.sfu.ca>
To: miron@extropia.wimsey.com
Subject: linedisc.h
Status: O

/*
 * linedisc.h -- includes for use with loadable line disciplines
 */
#define	KERNEL		1
#define	KERNEL_FEATURES	1

#import <machine/reg.h>

#import <sys/param.h>
#import <sys/systm.h>
#import <sys/user.h>
#import <sys/ioctl.h>
#import <sys/tty.h>
#import <sys/proc.h>
#import <sys/vnode.h>
#import <sys/file.h>
#import <sys/conf.h>
#import <sys/buf.h>
#import <sys/dk.h>
#import <sys/uio.h>
#import <sys/kernel.h>

#import <machine/spl.h>

#if	NeXT
#import <next/cons.h>
#import <nextdev/kmreg.h>
#endif	NeXT

/*
 * Line discipline "kind"
 * NORMAL_LDISC -- Normal line disciplines use tty struct clists in
 *			standard manner
 * SPECIAL_LDISC -- Special line disciplines have private buffering
 *			strategy
 */
#define	NORMAL_LDISC	0
#define	SPECIAL_LDISC	1

extern int tty_ld_install(
	int ld_number,
	int ld_kind,
	int (*ld_open)(dev_t dev, struct tty *tp),
	void (*ld_close)(struct tty *tp),
	int (*ld_read)(struct tty *tp, struct uio *uiop),
	int (*ld_write)(struct tty *tp, struct uio *uiop),
	int (*ld_ioctl)(struct tty *tp, int command, void *dataptr, int flag),
	void (*ld_rint)(int c, struct tty *tp),
	void (*ld_rend)(char *cp, int n, struct tty *tp),
	void (*ld_start)(struct tty *tp),
	int (*ld_modem)(struct tty *tp, int dcd_on),
	int (*ld_select)(struct tty *tp, int rw)
);
extern int tty_ld_remove(int ld_number);
extern void ttydevstart(struct tty *tp);
extern void ttydevstop(struct tty *tp);
extern void ttyselwait(struct tty *tp, int rw);
extern void ttselwakeup(struct tty *tp);

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.