]> git.ipfire.org Git - thirdparty/bash.git/blame - examples/loadables/template.c
Imported from ../bash-3.2.48.tar.gz.
[thirdparty/bash.git] / examples / loadables / template.c
CommitLineData
b72432fd
JA
1/* template - example template for loadable builtin */
2
3/* See Makefile for compilation details. */
4
5#include <config.h>
6
7#if defined (HAVE_UNISTD_H)
8# include <unistd.h>
9#endif
10#include "bashansi.h"
11#include <stdio.h>
12#include <errno.h>
13
14#include "builtins.h"
15#include "shell.h"
16#include "bashgetopt.h"
17
18#if !defined (errno)
19extern int errno;
20#endif
21
22extern char *strerror ();
23
24template_builtin (list)
25 WORD_LIST *list;
26{
27 int opt, rval;
28
29 rval = EXECUTION_SUCCESS;
30 reset_internal_getopt ();
31 while ((opt = internal_getopt (list, "")) != -1)
32 {
33 switch (opt)
34 {
35 default:
36 builtin_usage ();
37 return (EX_USAGE);
38 }
39 }
40 list = loptend;
41
42 return (rval);
43}
44
45char *template_doc[] = {
46 (char *)NULL
47};
48
49struct builtin template_struct = {
50 "template", /* builtin name */
51 template_builtin, /* function implementing the builtin */
52 BUILTIN_ENABLED, /* initial flags for builtin */
53 template_doc, /* array of long documentation strings. */
54 "template", /* usage synopsis; becomes short_doc */
55 0 /* reserved for internal use */
56};