Home | History | Annotate | Line # | Download | only in ksh
      1  1.13     kamil /*	$NetBSD: proto.h,v 1.13 2018/06/03 12:18:29 kamil Exp $	*/
      2   1.2       tls 
      3   1.1       jtc /*
      4   1.1       jtc  * prototypes for PD-KSH
      5   1.1       jtc  * originally generated using "cproto.c 3.5 92/04/11 19:28:01 cthuang "
      6  1.13     kamil  * $Id: proto.h,v 1.13 2018/06/03 12:18:29 kamil Exp $
      7   1.1       jtc  */
      8   1.1       jtc 
      9   1.9     kamil #include <stdbool.h>
     10   1.9     kamil 
     11   1.1       jtc /* alloc.c */
     12   1.7  christos Area *	ainit		ARGS((Area *));
     13   1.7  christos void 	afreeall	ARGS((Area *));
     14   1.7  christos void *	alloc		ARGS((size_t, Area *));
     15   1.7  christos void *	aresize		ARGS((void *, size_t, Area *));
     16   1.7  christos void 	afree		ARGS((void *, Area *));
     17   1.1       jtc /* c_ksh.c */
     18   1.7  christos int 	c_hash		ARGS((char **));
     19   1.7  christos int 	c_cd		ARGS((char **));
     20   1.7  christos int 	c_pwd		ARGS((char **));
     21   1.7  christos int 	c_print		ARGS((char **));
     22   1.7  christos int 	c_whence	ARGS((char **));
     23   1.7  christos int 	c_command	ARGS((char **));
     24   1.7  christos int 	c_typeset	ARGS((char **));
     25   1.7  christos int 	c_alias		ARGS((char **));
     26   1.7  christos int 	c_unalias	ARGS((char **));
     27   1.7  christos int 	c_let		ARGS((char **));
     28   1.7  christos int 	c_jobs		ARGS((char **));
     29   1.7  christos int 	c_fgbg		ARGS((char **));
     30   1.7  christos int 	c_kill		ARGS((char **));
     31   1.7  christos void	getopts_reset	ARGS((int));
     32   1.7  christos int	c_getopts	ARGS((char **));
     33   1.7  christos int 	c_bind		ARGS((char **));
     34   1.1       jtc /* c_sh.c */
     35   1.7  christos int 	c_label		ARGS((char **));
     36   1.7  christos int 	c_shift		ARGS((char **));
     37   1.7  christos int 	c_umask		ARGS((char **));
     38   1.7  christos int 	c_dot		ARGS((char **));
     39   1.7  christos int 	c_wait		ARGS((char **));
     40   1.7  christos int 	c_read		ARGS((char **));
     41   1.7  christos int 	c_eval		ARGS((char **));
     42   1.7  christos int 	c_trap		ARGS((char **));
     43   1.7  christos int 	c_brkcont	ARGS((char **));
     44   1.7  christos int 	c_exitreturn	ARGS((char **));
     45   1.7  christos int 	c_set		ARGS((char **));
     46   1.7  christos int 	c_unset		ARGS((char **));
     47   1.7  christos int 	c_ulimit	ARGS((char **));
     48   1.7  christos int 	c_times		ARGS((char **));
     49   1.7  christos int 	timex		ARGS((struct op *, int));
     50   1.7  christos void	timex_hook	ARGS((struct op *, char ** volatile *));
     51   1.7  christos int 	c_exec		ARGS((char **));
     52   1.7  christos int 	c_builtin	ARGS((char **));
     53   1.1       jtc /* c_test.c */
     54   1.7  christos int 	c_test		ARGS((char **));
     55   1.1       jtc /* edit.c: most prototypes in edit.h */
     56   1.1       jtc void 	x_init		ARGS((void));
     57   1.7  christos int 	x_read		ARGS((char *, size_t));
     58   1.7  christos void	set_editmode	ARGS((const char *));
     59   1.1       jtc /* emacs.c: most prototypes in edit.h */
     60   1.7  christos int 	x_bind		ARGS((const char *, const char *, int, int));
     61   1.1       jtc /* eval.c */
     62   1.7  christos char *	substitute	ARGS((const char *, int));
     63   1.7  christos char **	eval		ARGS((char **, int));
     64   1.7  christos char *	evalstr		ARGS((char *, int));
     65   1.7  christos char *	evalonestr	ARGS((char *, int));
     66   1.7  christos char	*debunk		ARGS((char *, const char *, size_t));
     67   1.7  christos void	expand		ARGS((char *, XPtrV *, int));
     68   1.7  christos int glob_str		ARGS((char *, XPtrV *, int));
     69   1.1       jtc /* exec.c */
     70   1.7  christos int	fd_clexec	ARGS((int));
     71   1.7  christos int 	execute		ARGS((struct op * volatile, volatile int));
     72   1.7  christos int 	shcomexec	ARGS((char **));
     73   1.7  christos struct tbl * findfunc	ARGS((const char *, unsigned int, int));
     74   1.7  christos int 	define		ARGS((const char *, struct op *));
     75   1.7  christos void 	builtin		ARGS((const char *, int (*)(char **)));
     76   1.7  christos struct tbl *	findcom	ARGS((const char *, int));
     77   1.1       jtc void 	flushcom	ARGS((int all));
     78   1.7  christos char *	search		ARGS((const char *, const char *, int, int *));
     79   1.7  christos int	search_access	ARGS((const char *, int, int *));
     80   1.7  christos int	pr_menu		ARGS((char *const *));
     81   1.7  christos int	pr_list		ARGS((char *const *));
     82   1.1       jtc /* expr.c */
     83   1.7  christos int 	evaluate	ARGS((const char *, long *, int));
     84   1.7  christos int	v_evaluate	ARGS((struct tbl *, const char *, volatile int));
     85   1.1       jtc /* history.c */
     86   1.1       jtc void	init_histvec	ARGS((void));
     87   1.7  christos void 	hist_init	ARGS((Source *));
     88   1.1       jtc void 	hist_finish	ARGS((void));
     89   1.7  christos void	histsave	ARGS((int, const char *, int));
     90   1.1       jtc #ifdef HISTORY
     91   1.7  christos int 	c_fc	 	ARGS((char **));
     92   1.7  christos void	sethistsize	ARGS((int));
     93   1.7  christos void	sethistfile	ARGS((const char *));
     94   1.1       jtc # ifdef EASY_HISTORY
     95   1.7  christos void 	histappend	ARGS((const char *, int));
     96   1.1       jtc # endif
     97   1.1       jtc char **	histpos	 	ARGS((void));
     98   1.1       jtc int 	histN	 	ARGS((void));
     99   1.7  christos int 	histnum	 	ARGS((int));
    100   1.7  christos int	findhist	ARGS((int, int, const char *, int));
    101   1.1       jtc #endif /* HISTORY */
    102   1.1       jtc /* io.c */
    103   1.7  christos void 	errorf		ARGS((const char *, ...))
    104   1.1       jtc 				GCC_FUNC_ATTR2(noreturn, format(printf, 1, 2));
    105   1.7  christos void 	warningf	ARGS((int, const char *, ...))
    106   1.1       jtc 				GCC_FUNC_ATTR(format(printf, 2, 3));
    107   1.7  christos void 	bi_errorf	ARGS((const char *, ...))
    108   1.1       jtc 				GCC_FUNC_ATTR(format(printf, 1, 2));
    109   1.7  christos void 	internal_errorf	ARGS((int, const char *, ...))
    110   1.1       jtc 				GCC_FUNC_ATTR(format(printf, 2, 3));
    111   1.7  christos void	error_prefix	ARGS((int));
    112   1.7  christos void 	shellf		ARGS((const char *, ...))
    113   1.1       jtc 				GCC_FUNC_ATTR(format(printf, 1, 2));
    114   1.7  christos void 	shprintf	ARGS((const char *, ...))
    115   1.1       jtc 				GCC_FUNC_ATTR(format(printf, 1, 2));
    116   1.4   hubertf #ifdef KSH_DEBUG
    117   1.4   hubertf void 	kshdebug_init_	ARGS((void));
    118   1.7  christos void 	kshdebug_printf_ ARGS((const char *, ...))
    119   1.4   hubertf 				GCC_FUNC_ATTR(format(printf, 1, 2));
    120   1.7  christos void 	kshdebug_dump_	ARGS((const char *, const void *, int));
    121   1.4   hubertf #endif /* KSH_DEBUG */
    122   1.7  christos int	can_seek	ARGS((int));
    123   1.1       jtc void	initio		ARGS((void));
    124   1.7  christos int	ksh_dup2	ARGS((int, int, int));
    125   1.7  christos int 	savefd		ARGS((int, int));
    126   1.7  christos void 	restfd		ARGS((int, int));
    127   1.7  christos void 	openpipe	ARGS((int *));
    128   1.7  christos void 	closepipe	ARGS((int *));
    129   1.7  christos int	check_fd	ARGS((char *, int, const char **));
    130   1.1       jtc #ifdef KSH
    131   1.1       jtc void	coproc_init	ARGS((void));
    132   1.7  christos void	coproc_read_close ARGS((int));
    133   1.7  christos void	coproc_readw_close ARGS((int));
    134   1.7  christos void	coproc_write_close ARGS((int));
    135   1.7  christos int	coproc_getfd	ARGS((int, const char **));
    136   1.7  christos void	coproc_cleanup	ARGS((int));
    137   1.1       jtc #endif /* KSH */
    138   1.7  christos struct temp *maketemp	ARGS((Area *, Temp_type, struct temp **));
    139   1.1       jtc /* jobs.c */
    140   1.7  christos void 	j_init		ARGS((int));
    141   1.1       jtc void 	j_exit		ARGS((void));
    142   1.1       jtc void 	j_change	ARGS((void));
    143   1.7  christos int 	exchild		ARGS((struct op *, int, int));
    144   1.1       jtc void 	startlast	ARGS((void));
    145   1.1       jtc int 	waitlast	ARGS((void));
    146   1.7  christos int 	waitfor		ARGS((const char *, int *));
    147   1.7  christos int 	j_kill		ARGS((const char *, int));
    148   1.7  christos int 	j_resume	ARGS((const char *, int));
    149   1.7  christos int 	j_jobs		ARGS((const char *, int, int));
    150   1.1       jtc void 	j_notify	ARGS((void));
    151   1.1       jtc pid_t	j_async		ARGS((void));
    152   1.1       jtc int 	j_stopped_running	ARGS((void));
    153   1.1       jtc /* lex.c */
    154   1.7  christos int 	yylex		ARGS((int));
    155   1.7  christos void 	yyerror		ARGS((const char *, ...))
    156   1.1       jtc 				GCC_FUNC_ATTR2(noreturn, format(printf, 1, 2));
    157   1.7  christos Source * pushs		ARGS((int, Area *));
    158   1.7  christos void	set_prompt	ARGS((int, Source *));
    159   1.7  christos void 	pprompt		ARGS((const char *, int));
    160   1.1       jtc /* mail.c */
    161   1.1       jtc #ifdef KSH
    162   1.1       jtc void 	mcheck		ARGS((void));
    163   1.7  christos void 	mcset		ARGS((long));
    164   1.7  christos void 	mbset		ARGS((char *));
    165   1.7  christos void 	mpset		ARGS((char *));
    166   1.1       jtc #endif /* KSH */
    167   1.1       jtc /* main.c */
    168   1.7  christos int 	include		ARGS((const char *, int, char **, int));
    169   1.7  christos int 	command		ARGS((const char *));
    170   1.7  christos int 	shell		ARGS((Source *volatile, int volatile));
    171   1.7  christos void 	unwind		ARGS((int)) GCC_FUNC_ATTR(noreturn);
    172   1.7  christos void 	newenv		ARGS((int));
    173   1.1       jtc void 	quitenv		ARGS((void));
    174   1.1       jtc void	cleanup_parents_env ARGS((void));
    175   1.2       tls void	cleanup_proc_env ARGS((void));
    176   1.7  christos void 	aerror		ARGS((Area *, const char *))
    177   1.1       jtc 				GCC_FUNC_ATTR(noreturn);
    178   1.1       jtc /* misc.c */
    179   1.7  christos void 	setctypes	ARGS((const char *, int));
    180   1.1       jtc void 	initctypes	ARGS((void));
    181   1.7  christos char *	ulton		ARGS((unsigned long, int));
    182   1.7  christos char *	str_save	ARGS((const char *, Area *));
    183   1.7  christos char *	str_nsave	ARGS((const char *, int, Area *));
    184   1.7  christos int	option		ARGS((const char *));
    185   1.1       jtc char *	getoptions	ARGS((void));
    186   1.7  christos void	change_flag	ARGS((enum sh_flag, int, int));
    187   1.7  christos int	parse_args	ARGS((char **v, int what, int *));
    188   1.7  christos int 	getn		ARGS((const char *, int *));
    189   1.7  christos int 	bi_getn		ARGS((const char *, int *));
    190   1.7  christos int 	gmatch		ARGS((const char *, const char *, int));
    191   1.7  christos int	has_globbing	ARGS((const char *, const char *));
    192   1.7  christos const unsigned char *pat_scan ARGS((const unsigned char *,
    193   1.7  christos 				const unsigned char *, int));
    194   1.7  christos void 	qsortp		ARGS((void **, size_t, int (*)(void *, void *)));
    195   1.7  christos int 	xstrcmp		ARGS((void *, void *));
    196   1.7  christos void	ksh_getopt_reset ARGS((Getopt *, int));
    197   1.7  christos int	ksh_getopt	ARGS((char **, Getopt *, const char *));
    198   1.7  christos void	print_value_quoted ARGS((const char *));
    199   1.7  christos void	print_columns	ARGS((struct shf *, int,
    200   1.7  christos 			      char *(*)(void *, int, char *, int),
    201   1.7  christos 			      void *, int, int));
    202   1.7  christos int	strip_nuls	ARGS((char *, int));
    203   1.7  christos char	*str_zcpy	ARGS((char *, const char *, int));
    204   1.7  christos int	blocking_read	ARGS((int, char *, int));
    205   1.7  christos int	reset_nonblock	ARGS((int));
    206   1.7  christos char	*ksh_get_wd	ARGS((char *, int));
    207   1.1       jtc /* path.c */
    208   1.7  christos int	make_path	ARGS((const char *, const char *,
    209   1.7  christos 			      char **, XString *, int *));
    210   1.7  christos void	simplify_path	ARGS((char *));
    211   1.7  christos char	*get_phys_path	ARGS((const char *));
    212   1.7  christos void	set_current_wd	ARGS((char *));
    213   1.1       jtc /* syn.c */
    214   1.1       jtc void 	initkeywords	ARGS((void));
    215   1.7  christos struct op * compile	ARGS((Source *));
    216   1.1       jtc /* table.c */
    217   1.7  christos unsigned int 	hash	ARGS((const char *));
    218   1.7  christos void 	tinit		ARGS((struct table *, Area *, int));
    219  1.12     kamil struct tbl *	mytsearch	ARGS((struct table *, const char *, unsigned int));
    220   1.7  christos struct tbl *	tenter	ARGS((struct table *, const char *, unsigned int));
    221  1.11     kamil void 	mytdelete		ARGS((struct tbl *));
    222  1.13     kamil void 	ksh_twalk		ARGS((struct tstate *, struct table *));
    223   1.7  christos struct tbl *	tnext	ARGS((struct tstate *));
    224   1.7  christos struct tbl **	tsort	ARGS((struct table *));
    225   1.1       jtc /* trace.c */
    226   1.1       jtc /* trap.c */
    227   1.1       jtc void	inittraps	ARGS((void));
    228   1.1       jtc #ifdef KSH
    229   1.1       jtc void	alarm_init	ARGS((void));
    230   1.1       jtc #endif /* KSH */
    231   1.7  christos Trap *	gettrap		ARGS((const char *, int));
    232   1.7  christos RETSIGTYPE trapsig	ARGS((int));
    233   1.1       jtc void	intrcheck	ARGS((void));
    234   1.1       jtc int	fatal_trap_check ARGS((void));
    235   1.1       jtc int	trap_pending	ARGS((void));
    236   1.7  christos void 	runtraps	ARGS((int));
    237   1.7  christos void 	runtrap		ARGS((Trap *));
    238   1.1       jtc void 	cleartraps	ARGS((void));
    239   1.1       jtc void 	restoresigs	ARGS((void));
    240   1.7  christos void	settrap		ARGS((Trap *, char *));
    241   1.1       jtc int	block_pipe	ARGS((void));
    242   1.7  christos void	restore_pipe	ARGS((int));
    243   1.7  christos int	setsig		ARGS((Trap *, handler_t, int));
    244   1.7  christos void	setexecsig	ARGS((Trap *, int));
    245   1.1       jtc /* tree.c */
    246   1.7  christos int 	fptreef		ARGS((struct shf *, int, const char *, ...));
    247   1.7  christos char *	snptreef	ARGS((char *, int, const char *, ...));
    248   1.7  christos struct op *	tcopy	ARGS((struct op *, Area *));
    249   1.7  christos char *	wdcopy		ARGS((const char *, Area *));
    250   1.7  christos char *	wdscan		ARGS((const char *, int));
    251   1.7  christos char *	wdstrip		ARGS((const char *));
    252   1.7  christos void 	tfree		ARGS((struct op *, Area *));
    253   1.1       jtc /* var.c */
    254   1.1       jtc void 	newblock	ARGS((void));
    255   1.1       jtc void 	popblock	ARGS((void));
    256   1.1       jtc void	initvar		ARGS((void));
    257   1.7  christos struct tbl *	global	ARGS((const char *));
    258  1.10     joerg struct tbl *	local(const char *, bool);
    259   1.7  christos char *	str_val		ARGS((struct tbl *));
    260   1.7  christos long 	intval		ARGS((struct tbl *));
    261   1.7  christos int 	setstr		ARGS((struct tbl *, const char *, int));
    262   1.7  christos struct tbl *setint_v	ARGS((struct tbl *, struct tbl *));
    263   1.7  christos void 	setint		ARGS((struct tbl *, long));
    264   1.7  christos int	getint		ARGS((struct tbl *, long *));
    265   1.7  christos struct tbl *	typeset	ARGS((const char *, Tflag, Tflag, int, int));
    266   1.7  christos void 	unset		ARGS((struct tbl *, int));
    267   1.7  christos char  * skip_varname	ARGS((const char *, int));
    268   1.7  christos char	*skip_wdvarname ARGS((const char *, int));
    269   1.7  christos int	is_wdvarname	ARGS((const char *, int));
    270   1.7  christos int	is_wdvarassign	ARGS((const char *));
    271   1.1       jtc char **	makenv		ARGS((void));
    272   1.4   hubertf void	change_random	ARGS((void));
    273   1.7  christos int	array_ref_len	ARGS((const char *));
    274   1.7  christos char *	arrayname	ARGS((const char *));
    275   1.7  christos void    set_array	ARGS((const char *, int, char **));
    276   1.1       jtc /* version.c */
    277   1.1       jtc /* vi.c: see edit.h */
    278