OSDN Git Service

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