OSDN Git Service

Merge changes Ie1705960,I8b94351f,I661540a9,Id2dbdcab,I1223578c, ...
[android-x86/external-toybox.git] / generated / globals.h
1 // toys/android/getprop.c
2
3 struct getprop_data {
4   size_t size;
5   char **nv; // name/value pairs: even=name, odd=value
6 };
7
8 // toys/example/hello.c
9
10 struct hello_data {
11   int unused;
12 };
13
14 // toys/example/skeleton.c
15
16 struct skeleton_data {
17   union {
18     struct {
19       char *b_string;
20       long c_number;
21       struct arg_list *d_list;
22       long e_count;
23       char *also_string;
24       char *blubber_string;
25     } s;
26     struct {
27       long b_number;
28     } a;
29   };
30
31   int more_globals;
32 };
33
34 // toys/lsb/dmesg.c
35
36 struct dmesg_data {
37   long level;
38   long size;
39 };
40
41 // toys/lsb/killall.c
42
43 struct killall_data {
44   char *sig;
45
46   int signum;
47   pid_t cur_pid;
48   char **names;
49   short *err;
50 };
51
52 // toys/lsb/md5sum.c
53
54 struct md5sum_data {
55   unsigned state[5];
56   unsigned oldstate[5];
57   uint64_t count;
58   union {
59     char c[64];
60     unsigned i[16];
61   } buffer;
62 };
63
64 // toys/lsb/mknod.c
65
66 struct mknod_data {
67   char *arg_context;
68   char *m;
69 };
70
71 // toys/lsb/mktemp.c
72
73 struct mktemp_data {
74   char *tmpdir;
75 };
76
77 // toys/lsb/mount.c
78
79 struct mount_data {
80   struct arg_list *optlist;
81   char *type;
82   char *bigO;
83
84   unsigned long flags;
85   char *opts;
86   int okuser;
87 };
88
89 // toys/lsb/passwd.c
90
91 struct passwd_data {
92   char *algo;
93 };
94
95 // toys/lsb/pidof.c
96
97 struct pidof_data {
98   char *omit;
99 };
100
101 // toys/lsb/seq.c
102
103 struct seq_data {
104   char *sep;
105   char *fmt;
106 };
107
108 // toys/lsb/su.c
109
110 struct su_data {
111   char *s;
112   char *c;
113 };
114
115 // toys/lsb/umount.c
116
117 struct umount_data {
118   struct arg_list *t;
119
120   char *types;
121 };
122
123 // toys/other/acpi.c
124
125 struct acpi_data {
126   int ac, bat, therm, cool;
127   char *cpath;
128 };
129
130 // toys/other/base64.c
131
132 struct base64_data {
133   long columns;
134 };
135
136 // toys/other/blockdev.c
137
138 struct blockdev_data {
139   long bsz;
140 };
141
142 // toys/other/dos2unix.c
143
144 struct dos2unix_data {
145   char *tempfile;
146 };
147
148 // toys/other/fallocate.c
149
150 struct fallocate_data {
151   long size;
152 };
153
154 // toys/other/free.c
155
156 struct free_data {
157   unsigned bits;
158   unsigned long long units;
159 };
160
161 // toys/other/hexedit.c
162
163 struct hexedit_data {
164   char *data;
165   long long len, base;
166   int numlen, undo, undolen;
167   unsigned height;
168 };
169
170 // toys/other/hwclock.c
171
172 struct hwclock_data {
173   char *fname;
174
175   int utc;
176 };
177
178 // toys/other/ifconfig.c
179
180 struct ifconfig_data {
181   int sockfd;
182 };
183
184 // toys/other/ionice.c
185
186 struct ionice_data {
187   long pid;
188   long level;
189   long class;
190 };
191
192 // toys/other/login.c
193
194 struct login_data {
195   char *hostname;
196   char *username;
197
198   int login_timeout, login_fail_timeout;
199 };
200
201 // toys/other/losetup.c
202
203 struct losetup_data {
204   char *jfile;
205   long offset;
206   long size;
207
208   int openflags;
209   dev_t jdev;
210   ino_t jino;
211 };
212
213 // toys/other/lspci.c
214
215 struct lspci_data {
216   char *ids;
217   long numeric;
218
219   FILE *db;
220 };
221
222 // toys/other/makedevs.c
223
224 struct makedevs_data {
225   char *fname;
226 };
227
228 // toys/other/mix.c
229
230 struct mix_data {
231    long right;
232    long level;
233    char *dev;
234    char *chan;
235 };
236
237 // toys/other/mkpasswd.c
238
239 struct mkpasswd_data {
240   long pfd;
241   char *method;
242   char *salt;
243 };
244
245 // toys/other/modinfo.c
246
247 struct modinfo_data {
248   char *field;
249   char *knam;
250   char *base;
251
252   long mod;
253 };
254
255 // toys/other/netcat.c
256
257 struct netcat_data {
258   char *filename;        // -f read from filename instead of network
259   long quit_delay;       // -q Exit after EOF from stdin after # seconds.
260   char *source_address;  // -s Bind to a specific source address.
261   long port;             // -p Bind to a specific source port.
262   long wait;             // -w Wait # seconds for a connection.
263 };
264
265 // toys/other/nsenter.c
266
267 struct nsenter_data {
268   char *nsnames[6];
269   long targetpid;
270 };
271
272 // toys/other/oneit.c
273
274 struct oneit_data {
275   char *console;
276 };
277
278 // toys/other/shred.c
279
280 struct shred_data {
281   long offset;
282   long iterations;
283   long size;
284
285   int ufd;
286 };
287
288 // toys/other/stat.c
289
290 struct stat_data {
291   char *fmt;
292
293   union {
294     struct stat st;
295     struct statfs sf;
296   } stat;
297   struct passwd *user_name;
298   struct group *group_name;
299 };
300
301 // toys/other/swapon.c
302
303 struct swapon_data {
304   long priority;
305 };
306
307 // toys/other/switch_root.c
308
309 struct switch_root_data {
310   char *console;
311
312   dev_t rootdev;
313 };
314
315 // toys/other/taskset.c
316
317 struct taskset_data {
318   int nproc;
319 };
320
321 // toys/other/timeout.c
322
323 struct timeout_data {
324   char *s_signal;
325   char *k_timeout;
326
327   int nextsig;
328   pid_t pid;
329   struct timeval ktv;
330   struct itimerval itv;
331 };
332
333 // toys/other/truncate.c
334
335 struct truncate_data {
336   char *s;
337
338   long size;
339   int type;
340 };
341
342 // toys/other/xxd.c
343
344 struct xxd_data {
345   long g;
346   long l;
347   long c;
348 };
349
350 // toys/pending/arp.c
351
352 struct arp_data {
353     char *hw_type;
354     char *af_type_A;
355     char *af_type_p;
356     char *interface;
357     
358     int sockfd;
359     char *device;
360 };
361
362 // toys/pending/arping.c
363
364 struct arping_data {
365     long count;
366     unsigned long time_out;
367     char *iface;
368     char *src_ip;
369
370     int sockfd;
371     unsigned long start, end;
372     unsigned sent_at, sent_nr, rcvd_nr, brd_sent, rcvd_req, brd_rcv,
373              unicast_flag;
374 };
375
376 // toys/pending/bootchartd.c
377
378 struct bootchartd_data {
379   char buf[32];
380   long smpl_period_usec;
381   int proc_accounting;
382   int is_login;
383
384   void *head;
385 };
386
387 // toys/pending/brctl.c
388
389 struct brctl_data {
390     int sockfd;
391 };
392
393 // toys/pending/compress.c
394
395 struct compress_data {
396   // Huffman codes: base offset and extra bits tables (length and distance)
397   char lenbits[29], distbits[30];
398   unsigned short lenbase[29], distbase[30];
399   void *fixdisthuff, *fixlithuff;
400
401   // CRC
402   void (*crcfunc)(char *data, int len);
403   unsigned crc;
404
405   // Compressed data buffer
406   char *data;
407   unsigned pos, len;
408   int infd, outfd;
409
410   // Tables only used for deflation
411   unsigned short *hashhead, *hashchain;
412 };
413
414 // toys/pending/crond.c
415
416 struct crond_data {
417   char *crontabs_dir;
418   char *logfile;
419   int loglevel_d;
420   int loglevel;
421
422   time_t crontabs_dir_mtime;
423   uint8_t flagd;
424 };
425
426 // toys/pending/crontab.c
427
428 struct crontab_data {
429   char *user;
430   char *cdir;
431 };
432
433 // toys/pending/dd.c
434
435 struct dd_data {
436   int sig;
437 };
438
439 // toys/pending/dhcp.c
440
441 struct dhcp_data {
442     char *iface;
443     char *pidfile;
444     char *script;
445     long retries;
446     long timeout;
447     long tryagain;
448     struct arg_list *req_opt;
449     char *req_ip;
450     struct arg_list *pkt_opt;
451     char *fdn_name;
452     char *hostname;
453     char *vendor_cls;
454 };
455
456 // toys/pending/dhcpd.c
457
458 struct dhcpd_data {
459     char *iface;
460     long port;
461 };;
462
463 // toys/pending/diff.c
464
465 struct diff_data {
466   long ct;
467   char *start;
468   struct arg_list *L_list;
469
470   int dir_num, size, is_binary, status, change, len[2];
471   int *offset[2];
472 };
473
474 // toys/pending/dumpleases.c
475
476 struct dumpleases_data {
477     char *file;
478 };
479
480 // toys/pending/expr.c
481
482 struct expr_data {
483   int argidx;
484 };
485
486 // toys/pending/fdisk.c
487
488 struct fdisk_data {
489   long sect_sz;
490   long sectors;
491   long heads;
492   long cylinders;
493 };
494
495 // toys/pending/fold.c
496
497 struct fold_data {
498   int width;
499 };
500
501 // toys/pending/fsck.c
502
503 struct fsck_data {
504   int fd_num;
505   char *t_list;
506
507   struct double_list *devices;
508   char *arr_flag;
509   char **arr_type;
510   int negate;
511   int sum_status;
512   int nr_run;
513   int sig_num;
514   long max_nr_run;
515 };
516
517 // toys/pending/ftpget.c
518
519 struct ftpget_data {
520   long port; //  char *port;
521   char *password;
522   char *username;
523
524   FILE *sockfp;
525   int c;
526   int isget;
527   char buf[sizeof(struct sockaddr_storage)];
528 };
529
530 // toys/pending/getty.c
531
532 struct getty_data {
533   char *issue_str;
534   char *login_str;
535   char *init_str;
536   char *host_str; 
537   long timeout;
538   
539   char *tty_name;  
540   int  speeds[20];
541   int  sc;              
542   struct termios termios;
543   char buff[128];
544 };
545
546 // toys/pending/groupadd.c
547
548 struct groupadd_data {
549   long gid;
550 };
551
552 // toys/pending/host.c
553
554 struct host_data {
555   char *type_str;
556 };
557
558 // toys/pending/iconv.c
559
560 struct iconv_data {
561   char *from;
562   char *to;
563
564   void *ic;
565 };
566
567 // toys/pending/ip.c
568
569 struct ip_data {
570   char stats, singleline, flush, *filter_dev, gbuf[8192];
571   int sockfd, connected, from_ok, route_cmd;
572   int8_t addressfamily, is_addr;
573 };
574
575 // toys/pending/ipcrm.c
576
577 struct ipcrm_data {
578   struct arg_list *qkey;
579   struct arg_list *qid;
580   struct arg_list *skey;
581   struct arg_list *sid;
582   struct arg_list *mkey;
583   struct arg_list *mid;
584 };
585
586 // toys/pending/ipcs.c
587
588 struct ipcs_data {
589   int id;
590 };
591
592 // toys/pending/klogd.c
593
594 struct klogd_data {
595   long level;
596
597   int fd;
598 };
599
600 // toys/pending/last.c
601
602 struct last_data {
603   char *file;
604
605   struct arg_list *list;
606 };
607
608 // toys/pending/logger.c
609
610 struct logger_data {
611   char *priority_arg;
612   char *ident;
613 };
614
615 // toys/pending/lsof.c
616
617 struct lsof_data {
618   char *pids;
619
620   struct stat *sought_files;
621
622   struct double_list *files;
623   int last_shown_pid;
624   int shown_header;
625 };
626
627 // toys/pending/mke2fs.c
628
629 struct mke2fs_data {
630   // Command line arguments.
631   long blocksize;
632   long bytes_per_inode;
633   long inodes;           // Total inodes in filesystem.
634   long reserved_percent; // Integer precent of space to reserve for root.
635   char *gendir;          // Where to read dirtree from.
636
637   // Internal data.
638   struct dirtree *dt;    // Tree of files to copy into the new filesystem.
639   unsigned treeblocks;   // Blocks used by dt
640   unsigned treeinodes;   // Inodes used by dt
641
642   unsigned blocks;       // Total blocks in the filesystem.
643   unsigned freeblocks;   // Free blocks in the filesystem.
644   unsigned inodespg;     // Inodes per group
645   unsigned groups;       // Total number of block groups.
646   unsigned blockbits;    // Bits per block.  (Also blocks per group.)
647
648   // For gene2fs
649   unsigned nextblock;    // Next data block to allocate
650   unsigned nextgroup;    // Next group we'll be allocating from
651   int fsfd;              // File descriptor of filesystem (to output to).
652
653   struct ext2_superblock sb;
654 };
655
656 // toys/pending/modprobe.c
657
658 struct modprobe_data {
659   struct arg_list *probes;
660   struct arg_list *dbase[256];
661   char *cmdopts;
662   int nudeps;
663   uint8_t symreq;
664   void (*dbg)(char *format, ...);
665 };
666
667 // toys/pending/more.c
668
669 struct more_data {
670   struct termios inf;
671   int cin_fd;
672 };
673
674 // toys/pending/netstat.c
675
676 struct netstat_data {
677   char current_name[21];
678   int some_process_unidentified;
679 };;
680
681 // toys/pending/openvt.c
682
683 struct openvt_data {
684   unsigned long vt_num;
685 };
686
687 // toys/pending/pgrep.c
688
689 struct pgrep_data {
690   long sid;       //-s
691   long ppid;      //-P
692   char *signame;
693 };
694
695 // toys/pending/ping.c
696
697 struct ping_data {
698   long wait_exit;
699   long wait_resp;
700   char *iface;
701   long size;
702   long count;
703   long ttl;
704
705   int sock;
706 };
707
708 // toys/pending/ps.c
709
710 struct ps_data {
711   struct arg_list *o;
712
713   unsigned width;
714   dev_t tty;
715   void *fields;
716   long uptime;
717 };
718
719 // toys/pending/route.c
720
721 struct route_data {
722   char *family;
723 };
724
725 // toys/pending/sh.c
726
727 struct sh_data {
728   char *command;
729 };
730
731 // toys/pending/sulogin.c
732
733 struct sulogin_data {
734   long timeout;
735   struct termios crntio;
736 };
737
738 // toys/pending/syslogd.c
739
740 struct syslogd_data {
741   char *socket;
742   char *config_file;
743   char *unix_socket;
744   char *logfile;
745   long interval;
746   long rot_size;
747   long rot_count;
748   char *remote_log;
749   long log_prio;
750
751   struct unsocks *lsocks;  // list of listen sockets
752   struct logfile *lfiles;  // list of write logfiles
753   int sigfd[2];
754 };
755
756 // toys/pending/tar.c
757
758 struct tar_data {
759   char *fname;
760   char *dir;
761   struct arg_list *inc_file;
762   struct arg_list *exc_file;
763   char *tocmd;
764   struct arg_list *exc;
765
766   struct arg_list *inc, *pass;
767   void *inodes, *handle;
768 };
769
770 // toys/pending/tcpsvd.c
771
772 struct tcpsvd_data {
773   char *name;
774   char *user;
775   long bn;
776   char *nmsg;
777   long cn;
778
779   int maxc;
780   int count_all;
781   int udp;
782 };
783
784 // toys/pending/telnet.c
785
786 struct telnet_data {
787   int port;
788   int sfd;
789   char buff[128];
790   int pbuff;
791   char iac[256];
792   int piac;
793   char *ttype;
794   struct termios def_term;
795   struct termios raw_term;
796   uint8_t term_ok;
797   uint8_t term_mode;
798   uint8_t flags;
799   unsigned win_width;
800   unsigned win_height;
801 };
802
803 // toys/pending/telnetd.c
804
805 struct telnetd_data {
806     char *login_path;
807     char *issue_path;
808     int port;
809     char *host_addr;
810     long w_sec;
811
812     int gmax_fd;
813     pid_t fork_pid;
814 };
815
816 // toys/pending/tftp.c
817
818 struct tftp_data {
819   char *local_file;
820   char *remote_file;
821   long block_size;
822
823   struct sockaddr_storage inaddr;
824   int af;
825 };
826
827 // toys/pending/tftpd.c
828
829 struct tftpd_data {
830   char *user;
831
832   long sfd;
833   struct passwd *pw;
834 };
835
836 // toys/pending/top.c
837
838 struct top_data {
839   long iterations;
840   long delay;
841
842   long cmp_field;
843   long reverse;
844   long rows;
845   long smp;
846   long threads;
847   long m_flag;
848   long num_new_procs;
849   long scroll_offset;
850   struct termios inf;
851 };
852
853 // toys/pending/tr.c
854
855 struct tr_data {
856   short map[256]; //map of chars
857   int len1, len2;
858 };
859
860 // toys/pending/traceroute.c
861
862 struct traceroute_data {
863   long max_ttl;
864   long port;
865   long ttl_probes;
866   char *src_ip;
867   long tos;
868   long wait_time;
869   struct arg_list *loose_source;
870   long pause_time;
871   long first_ttl;
872   char *iface;
873
874   uint32_t gw_list[9];
875   int recv_sock;
876   int snd_sock;
877   unsigned msg_len;
878   char *packet;
879   uint32_t ident;
880   int istraceroute6;
881 };
882
883 // toys/pending/useradd.c
884
885 struct useradd_data {
886   char *dir;
887   char *gecos;
888   char *shell;
889   char *u_grp;
890   long uid;
891
892   long gid;
893 };
894
895 // toys/pending/watch.c
896
897 struct watch_data {
898   int interval;
899 };
900
901 // toys/posix/chgrp.c
902
903 struct chgrp_data {
904   uid_t owner;
905   gid_t group;
906   char *owner_name, *group_name;
907   int symfollow;
908 };
909
910 // toys/posix/chmod.c
911
912 struct chmod_data {
913   char *mode;
914 };
915
916 // toys/posix/cksum.c
917
918 struct cksum_data {
919   unsigned crc_table[256];
920 };
921
922 // toys/posix/cmp.c
923
924 struct cmp_data {
925   int fd;
926   char *name;
927 };
928
929 // toys/posix/cp.c
930
931 struct cp_data {
932   union {
933     struct {
934       // install's options
935       char *group;
936       char *user;
937       char *mode;
938     } i;
939     struct {
940       char *preserve;
941     } c;
942   };
943
944   char *destname;
945   struct stat top;
946   int (*callback)(struct dirtree *try);
947   uid_t uid;
948   gid_t gid;
949   int pflags;
950 };
951
952 // toys/posix/cpio.c
953
954 struct cpio_data {
955   char *archive;
956   char *pass;
957   char *fmt;
958 };
959
960 // toys/posix/cut.c
961
962 struct cut_data {
963   char *delim;
964   char *flist;
965   char *clist;
966   char *blist;
967
968   void *slist_head;
969   unsigned nelem;
970   void (*do_cut)(int fd);
971 };
972
973 // toys/posix/date.c
974
975 struct date_data {
976   char *file;
977   char *setfmt;
978   char *showdate;
979
980   char *tz;
981   unsigned nano;
982 };
983
984 // toys/posix/df.c
985
986 struct df_data {
987   struct arg_list *fstype;
988
989   long units;
990 };
991
992 // toys/posix/du.c
993
994 struct du_data {
995   long maxdepth;
996
997   long depth, total;
998   dev_t st_dev;
999   void *inodes;
1000 };
1001
1002 // toys/posix/expand.c
1003
1004 struct expand_data {
1005   struct arg_list *tabs;
1006
1007   unsigned tabcount, *tab;
1008 };
1009
1010 // toys/posix/find.c
1011
1012 struct find_data {
1013   char **filter;
1014   struct double_list *argdata;
1015   int topdir, xdev, depth, envsize;
1016   time_t now;
1017 };
1018
1019 // toys/posix/grep.c
1020
1021 struct grep_data {
1022   long m;
1023   struct arg_list *f;
1024   struct arg_list *e;
1025
1026   struct arg_list *regex;
1027 };
1028
1029 // toys/posix/head.c
1030
1031 struct head_data {
1032   long lines;
1033   int file_no;
1034 };
1035
1036 // toys/posix/id.c
1037
1038 struct id_data {
1039   int is_groups;
1040 };
1041
1042 // toys/posix/kill.c
1043
1044 struct kill_data {
1045   char *signame;
1046   struct arg_list *olist;
1047 };
1048
1049 // toys/posix/ls.c
1050
1051 struct ls_data {
1052   char *color;
1053
1054   struct dirtree *files, *singledir;
1055
1056   unsigned screen_width;
1057   int nl_title;
1058   char uid_buf[12], gid_buf[12];
1059 };
1060
1061 // toys/posix/mkdir.c
1062
1063 struct mkdir_data {
1064   char *arg_mode;
1065   char *arg_context;
1066 };
1067
1068 // toys/posix/mkfifo.c
1069
1070 struct mkfifo_data {
1071   char *m_string;
1072   char *Z;
1073
1074   mode_t mode;
1075 };
1076
1077 // toys/posix/nice.c
1078
1079 struct nice_data {
1080   long priority;
1081 };
1082
1083 // toys/posix/nl.c
1084
1085 struct nl_data {
1086   long w;
1087   char *s;
1088   char *n;
1089   char *b;
1090   long l;
1091   long v;
1092
1093   // Count of consecutive blank lines for -l has to persist between files
1094   long lcount;
1095 };
1096
1097 // toys/posix/od.c
1098
1099 struct od_data {
1100   struct arg_list *output_base;
1101   char *address_base;
1102   long max_count;
1103   long jump_bytes;
1104
1105   int address_idx;
1106   unsigned types, leftover, star;
1107   char *buf;
1108   uint64_t bufs[4]; // force 64-bit alignment
1109   off_t pos;
1110 };
1111
1112 // toys/posix/paste.c
1113
1114 struct paste_data {
1115   char *delim;
1116 };
1117
1118 // toys/posix/patch.c
1119
1120 struct patch_data {
1121   char *infile;
1122   long prefix;
1123
1124   struct double_list *current_hunk;
1125   long oldline, oldlen, newline, newlen;
1126   long linenum;
1127   int context, state, filein, fileout, filepatch, hunknum;
1128   char *tempname;
1129 };
1130
1131 // toys/posix/renice.c
1132
1133 struct renice_data {
1134   long nArgu;
1135 };
1136
1137 // toys/posix/sed.c
1138
1139 struct sed_data {
1140   struct arg_list *f;
1141   struct arg_list *e;
1142
1143   // processed pattern list
1144   struct double_list *pattern;
1145
1146   char *nextline, *remember;
1147   void *restart, *lastregex;
1148   long nextlen, rememberlen, count;
1149   int fdout, noeol;
1150   unsigned xx;
1151 };
1152
1153 // toys/posix/sort.c
1154
1155 struct sort_data {
1156   char *key_separator;
1157   struct arg_list *raw_keys;
1158   char *outfile;
1159   char *ignore1, ignore2;   // GNU compatability NOPs for -S and -T.
1160
1161   void *key_list;
1162   int linecount;
1163   char **lines;
1164 };
1165
1166 // toys/posix/split.c
1167
1168 struct split_data {
1169   long lines;
1170   long bytes;
1171   long suflen;
1172
1173   char *outfile;
1174 };
1175
1176 // toys/posix/strings.c
1177
1178 struct strings_data {
1179   long num;
1180 };
1181
1182 // toys/posix/tail.c
1183
1184 struct tail_data {
1185   long lines;
1186   long bytes;
1187
1188   int file_no;
1189 };
1190
1191 // toys/posix/tee.c
1192
1193 struct tee_data {
1194   void *outputs;
1195 };
1196
1197 // toys/posix/touch.c
1198
1199 struct touch_data {
1200   char *time;
1201   char *file;
1202   char *date;
1203 };
1204
1205 // toys/posix/uniq.c
1206
1207 struct uniq_data {
1208   long maxchars;
1209   long nchars;
1210   long nfields;
1211   long repeats;
1212 };
1213
1214 // toys/posix/uudecode.c
1215
1216 struct uudecode_data {
1217   char *o;
1218 };
1219
1220 // toys/posix/wc.c
1221
1222 struct wc_data {
1223   unsigned long totals[3];
1224 };
1225
1226 // toys/posix/xargs.c
1227
1228 struct xargs_data {
1229   long max_bytes;
1230   long max_entries;
1231   long L;
1232   char *eofstr;
1233   char *I;
1234
1235   long entries, bytes;
1236   char delim;
1237 };
1238
1239 extern union global_union {
1240         struct getprop_data getprop;
1241         struct hello_data hello;
1242         struct skeleton_data skeleton;
1243         struct dmesg_data dmesg;
1244         struct killall_data killall;
1245         struct md5sum_data md5sum;
1246         struct mknod_data mknod;
1247         struct mktemp_data mktemp;
1248         struct mount_data mount;
1249         struct passwd_data passwd;
1250         struct pidof_data pidof;
1251         struct seq_data seq;
1252         struct su_data su;
1253         struct umount_data umount;
1254         struct acpi_data acpi;
1255         struct base64_data base64;
1256         struct blockdev_data blockdev;
1257         struct dos2unix_data dos2unix;
1258         struct fallocate_data fallocate;
1259         struct free_data free;
1260         struct hexedit_data hexedit;
1261         struct hwclock_data hwclock;
1262         struct ifconfig_data ifconfig;
1263         struct ionice_data ionice;
1264         struct login_data login;
1265         struct losetup_data losetup;
1266         struct lspci_data lspci;
1267         struct makedevs_data makedevs;
1268         struct mix_data mix;
1269         struct mkpasswd_data mkpasswd;
1270         struct modinfo_data modinfo;
1271         struct netcat_data netcat;
1272         struct nsenter_data nsenter;
1273         struct oneit_data oneit;
1274         struct shred_data shred;
1275         struct stat_data stat;
1276         struct swapon_data swapon;
1277         struct switch_root_data switch_root;
1278         struct taskset_data taskset;
1279         struct timeout_data timeout;
1280         struct truncate_data truncate;
1281         struct xxd_data xxd;
1282         struct arp_data arp;
1283         struct arping_data arping;
1284         struct bootchartd_data bootchartd;
1285         struct brctl_data brctl;
1286         struct compress_data compress;
1287         struct crond_data crond;
1288         struct crontab_data crontab;
1289         struct dd_data dd;
1290         struct dhcp_data dhcp;
1291         struct dhcpd_data dhcpd;
1292         struct diff_data diff;
1293         struct dumpleases_data dumpleases;
1294         struct expr_data expr;
1295         struct fdisk_data fdisk;
1296         struct fold_data fold;
1297         struct fsck_data fsck;
1298         struct ftpget_data ftpget;
1299         struct getty_data getty;
1300         struct groupadd_data groupadd;
1301         struct host_data host;
1302         struct iconv_data iconv;
1303         struct ip_data ip;
1304         struct ipcrm_data ipcrm;
1305         struct ipcs_data ipcs;
1306         struct klogd_data klogd;
1307         struct last_data last;
1308         struct logger_data logger;
1309         struct lsof_data lsof;
1310         struct mke2fs_data mke2fs;
1311         struct modprobe_data modprobe;
1312         struct more_data more;
1313         struct netstat_data netstat;
1314         struct openvt_data openvt;
1315         struct pgrep_data pgrep;
1316         struct ping_data ping;
1317         struct ps_data ps;
1318         struct route_data route;
1319         struct sh_data sh;
1320         struct sulogin_data sulogin;
1321         struct syslogd_data syslogd;
1322         struct tar_data tar;
1323         struct tcpsvd_data tcpsvd;
1324         struct telnet_data telnet;
1325         struct telnetd_data telnetd;
1326         struct tftp_data tftp;
1327         struct tftpd_data tftpd;
1328         struct top_data top;
1329         struct tr_data tr;
1330         struct traceroute_data traceroute;
1331         struct useradd_data useradd;
1332         struct watch_data watch;
1333         struct chgrp_data chgrp;
1334         struct chmod_data chmod;
1335         struct cksum_data cksum;
1336         struct cmp_data cmp;
1337         struct cp_data cp;
1338         struct cpio_data cpio;
1339         struct cut_data cut;
1340         struct date_data date;
1341         struct df_data df;
1342         struct du_data du;
1343         struct expand_data expand;
1344         struct find_data find;
1345         struct grep_data grep;
1346         struct head_data head;
1347         struct id_data id;
1348         struct kill_data kill;
1349         struct ls_data ls;
1350         struct mkdir_data mkdir;
1351         struct mkfifo_data mkfifo;
1352         struct nice_data nice;
1353         struct nl_data nl;
1354         struct od_data od;
1355         struct paste_data paste;
1356         struct patch_data patch;
1357         struct renice_data renice;
1358         struct sed_data sed;
1359         struct sort_data sort;
1360         struct split_data split;
1361         struct strings_data strings;
1362         struct tail_data tail;
1363         struct tee_data tee;
1364         struct touch_data touch;
1365         struct uniq_data uniq;
1366         struct uudecode_data uudecode;
1367         struct wc_data wc;
1368         struct xargs_data xargs;
1369 } this;