File:  [Research Unix] / researchv10no / cmd / worm / scsi / scsish.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:34 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv10, HEAD
researchv10 Norman

struct ClientData
{
	char err[256];
};
typedef struct ClientData *ClientData;
#define	_CLIENTDATA

#define		ERR_RETURN	{ it->result = cd->err; return(TCL_ERROR); }
#define		USAGE_RETURN	{ it->result = "usage error"; return(TCL_ERROR); }

struct Tcl_Interp;
typedef int (*Functionfn)(ClientData, struct Tcl_Interp *, int, char **);

typedef struct
{
	char *name;
	char *help;
	char *param;
	Functionfn fn;
} Function;

typedef struct
{
	char *name;
	char *verbose;
	void (*extsense)(uchar *, char *, int);
	Function *fns;
} Device;
extern void setdevice(Device *);

extern void scsi_target(int);
extern void fixedstr(uchar *src, int len, char *dest);
extern void gen_extsense(uchar *, char *, int);
extern int shelfside(char *arg, char *err);
extern void xd(uchar *base, int, FILE *fp);

/*
 * argument processing
 */
#define	ARGBEGIN	for(argv0? 0: (argv0=*argv++,argc--);\
			    argv[0] && argv[0][0]=='-' && argv[0][1];\
			    argc--, argv++) {\
				char *_args, *_argt, _argc;\
				_args = &argv[0][1];\
				if(_args[0]=='-' && _args[1]==0){\
					argc--; argv++; break;\
				}\
				while(*_args) switch(_argc=*_args++)
#define	ARGEND		}
#define	ARGF()		(_argt=_args, _args="",\
				(*_argt? _argt: argv[1]? (argc--, *++argv): 0))
#define	ARGC()		_argc
extern char *argv0;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.