1 // toys/android/getprop.c
5 char **nv; // name/value pairs: even=name, odd=value
8 // toys/example/hello.c
14 // toys/example/skeleton.c
16 struct skeleton_data {
21 struct arg_list *d_list;
80 struct arg_list *optlist;
126 int ac, bat, therm, cool;
130 // toys/other/base64.c
136 // toys/other/blockdev.c
138 struct blockdev_data {
142 // toys/other/dos2unix.c
144 struct dos2unix_data {
148 // toys/other/fallocate.c
150 struct fallocate_data {
158 unsigned long long units;
161 // toys/other/hexedit.c
163 struct hexedit_data {
166 int numlen, undo, undolen;
170 // toys/other/hwclock.c
172 struct hwclock_data {
178 // toys/other/ifconfig.c
180 struct ifconfig_data {
184 // toys/other/ionice.c
192 // toys/other/login.c
198 int login_timeout, login_fail_timeout;
201 // toys/other/losetup.c
203 struct losetup_data {
213 // toys/other/lspci.c
222 // toys/other/makedevs.c
224 struct makedevs_data {
237 // toys/other/mkpasswd.c
239 struct mkpasswd_data {
245 // toys/other/modinfo.c
247 struct modinfo_data {
255 // toys/other/netcat.c
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.
265 // toys/other/nsenter.c
267 struct nsenter_data {
272 // toys/other/oneit.c
278 // toys/other/shred.c
297 struct passwd *user_name;
298 struct group *group_name;
301 // toys/other/swapon.c
307 // toys/other/switch_root.c
309 struct switch_root_data {
315 // toys/other/taskset.c
317 struct taskset_data {
321 // toys/other/timeout.c
323 struct timeout_data {
330 struct itimerval itv;
333 // toys/other/truncate.c
335 struct truncate_data {
350 // toys/pending/arp.c
362 // toys/pending/arping.c
366 unsigned long time_out;
379 unsigned unicast_flag;
382 // toys/pending/bootchartd.c
384 struct bootchartd_data {
386 long smpl_period_usec;
393 // toys/pending/brctl.c
399 // toys/pending/compress.c
401 struct compress_data {
402 // Huffman codes: base offset and extra bits tables (length and distance)
403 char lenbits[29], distbits[30];
404 unsigned short lenbase[29], distbase[30];
405 void *fixdisthuff, *fixlithuff;
408 void (*crcfunc)(char *data, int len);
411 // Compressed data buffer
416 // Tables only used for deflation
417 unsigned short *hashhead, *hashchain;
420 // toys/pending/crond.c
428 time_t crontabs_dir_mtime;
432 // toys/pending/crontab.c
434 struct crontab_data {
445 // toys/pending/dhcp.c
454 struct arg_list *req_opt;
456 struct arg_list *pkt_opt;
462 // toys/pending/dhcpd.c
469 // toys/pending/diff.c
474 struct arg_list *L_list;
476 int dir_num, size, is_binary, status, change, len[2];
480 // toys/pending/dumpleases.c
482 struct dumpleases_data {
486 // toys/pending/expr.c
492 // toys/pending/fdisk.c
501 // toys/pending/fold.c
507 // toys/pending/fsck.c
513 struct double_list *devices;
523 // toys/pending/ftpget.c
526 long port; // char *port;
533 char buf[sizeof(struct sockaddr_storage)];
536 // toys/pending/getty.c
548 struct termios termios;
552 // toys/pending/groupadd.c
554 struct groupadd_data {
558 // toys/pending/host.c
564 // toys/pending/iconv.c
576 char stats, singleline, flush, *filter_dev, gbuf[8192];
577 int sockfd, connected, from_ok, route_cmd;
578 int8_t addressfamily, is_addr;
581 // toys/pending/ipcrm.c
584 struct arg_list *qkey;
585 struct arg_list *qid;
586 struct arg_list *skey;
587 struct arg_list *sid;
588 struct arg_list *mkey;
589 struct arg_list *mid;
592 // toys/pending/ipcs.c
598 // toys/pending/klogd.c
606 // toys/pending/last.c
611 struct arg_list *list;
614 // toys/pending/logger.c
621 // toys/pending/lsof.c
626 struct stat *sought_files;
628 struct double_list *files;
633 // toys/pending/mke2fs.c
636 // Command line arguments.
638 long bytes_per_inode;
639 long inodes; // Total inodes in filesystem.
640 long reserved_percent; // Integer precent of space to reserve for root.
641 char *gendir; // Where to read dirtree from.
644 struct dirtree *dt; // Tree of files to copy into the new filesystem.
645 unsigned treeblocks; // Blocks used by dt
646 unsigned treeinodes; // Inodes used by dt
648 unsigned blocks; // Total blocks in the filesystem.
649 unsigned freeblocks; // Free blocks in the filesystem.
650 unsigned inodespg; // Inodes per group
651 unsigned groups; // Total number of block groups.
652 unsigned blockbits; // Bits per block. (Also blocks per group.)
655 unsigned nextblock; // Next data block to allocate
656 unsigned nextgroup; // Next group we'll be allocating from
657 int fsfd; // File descriptor of filesystem (to output to).
659 struct ext2_superblock sb;
662 // toys/pending/modprobe.c
664 struct modprobe_data {
665 struct arg_list *probes;
666 struct arg_list *dbase[256];
670 void (*dbg)(char *format, ...);
673 // toys/pending/more.c
680 // toys/pending/netstat.c
682 struct netstat_data {
683 char current_name[21];
684 int some_process_unidentified;
687 // toys/pending/openvt.c
690 unsigned long vt_num;
693 // toys/pending/pgrep.c
701 // toys/pending/ping.c
725 // toys/pending/route.c
737 // toys/pending/sulogin.c
739 struct sulogin_data {
741 struct termios crntio;
744 // toys/pending/syslogd.c
746 struct syslogd_data {
757 struct unsocks *lsocks; // list of listen sockets
758 struct logfile *lfiles; // list of write logfiles
762 // toys/pending/tar.c
767 struct arg_list *inc_file;
768 struct arg_list *exc_file;
770 struct arg_list *exc;
772 struct arg_list *inc, *pass;
773 void *inodes, *handle;
776 // toys/pending/tcpsvd.c
790 // toys/pending/telnet.c
800 struct termios def_term;
801 struct termios raw_term;
809 // toys/pending/telnetd.c
811 struct telnetd_data {
822 // toys/pending/tftp.c
829 struct sockaddr_storage inaddr;
833 // toys/pending/tftpd.c
842 // toys/pending/top.c
862 short map[256]; //map of chars
866 // toys/pending/traceroute.c
868 struct traceroute_data {
875 struct arg_list *loose_source;
889 // toys/pending/useradd.c
891 struct useradd_data {
901 // toys/pending/watch.c
907 // toys/posix/chgrp.c
912 char *owner_name, *group_name;
916 // toys/posix/chmod.c
922 // toys/posix/cksum.c
925 unsigned crc_table[256];
952 int (*callback)(struct dirtree *try);
976 void (*do_cut)(int fd);
993 struct arg_list *fstype;
1008 // toys/posix/expand.c
1010 struct expand_data {
1011 struct arg_list *tabs;
1013 unsigned tabcount, *tab;
1016 // toys/posix/find.c
1020 struct double_list *argdata;
1021 int topdir, xdev, depth, envsize;
1025 // toys/posix/grep.c
1032 struct arg_list *regex;
1035 // toys/posix/head.c
1048 // toys/posix/kill.c
1052 struct arg_list *olist;
1060 struct dirtree *files, *singledir;
1062 unsigned screen_width;
1064 char uid_buf[12], gid_buf[12];
1067 // toys/posix/mkdir.c
1074 // toys/posix/mkfifo.c
1076 struct mkfifo_data {
1083 // toys/posix/nice.c
1099 // Count of consecutive blank lines for -l has to persist between files
1106 struct arg_list *output_base;
1112 unsigned types, leftover, star;
1114 uint64_t bufs[4]; // force 64-bit alignment
1118 // toys/posix/paste.c
1124 // toys/posix/patch.c
1130 struct double_list *current_hunk;
1131 long oldline, oldlen, newline, newlen;
1133 int context, state, filein, fileout, filepatch, hunknum;
1137 // toys/posix/renice.c
1139 struct renice_data {
1149 // processed pattern list
1150 struct double_list *pattern;
1152 char *nextline, *remember;
1153 void *restart, *lastregex;
1154 long nextlen, rememberlen, count;
1159 // toys/posix/sort.c
1162 char *key_separator;
1163 struct arg_list *raw_keys;
1165 char *ignore1, ignore2; // GNU compatability NOPs for -S and -T.
1172 // toys/posix/split.c
1182 // toys/posix/strings.c
1184 struct strings_data {
1188 // toys/posix/tail.c
1203 // toys/posix/touch.c
1211 // toys/posix/uniq.c
1220 // toys/posix/uudecode.c
1222 struct uudecode_data {
1229 unsigned long totals[3];
1232 // toys/posix/xargs.c
1241 long entries, bytes;
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;
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 taskset_data taskset;
1285 struct timeout_data timeout;
1286 struct truncate_data truncate;
1287 struct xxd_data xxd;
1288 struct arp_data arp;
1289 struct arping_data arping;
1290 struct bootchartd_data bootchartd;
1291 struct brctl_data brctl;
1292 struct compress_data compress;
1293 struct crond_data crond;
1294 struct crontab_data crontab;
1296 struct dhcp_data dhcp;
1297 struct dhcpd_data dhcpd;
1298 struct diff_data diff;
1299 struct dumpleases_data dumpleases;
1300 struct expr_data expr;
1301 struct fdisk_data fdisk;
1302 struct fold_data fold;
1303 struct fsck_data fsck;
1304 struct ftpget_data ftpget;
1305 struct getty_data getty;
1306 struct groupadd_data groupadd;
1307 struct host_data host;
1308 struct iconv_data iconv;
1310 struct ipcrm_data ipcrm;
1311 struct ipcs_data ipcs;
1312 struct klogd_data klogd;
1313 struct last_data last;
1314 struct logger_data logger;
1315 struct lsof_data lsof;
1316 struct mke2fs_data mke2fs;
1317 struct modprobe_data modprobe;
1318 struct more_data more;
1319 struct netstat_data netstat;
1320 struct openvt_data openvt;
1321 struct pgrep_data pgrep;
1322 struct ping_data ping;
1324 struct route_data route;
1326 struct sulogin_data sulogin;
1327 struct syslogd_data syslogd;
1328 struct tar_data tar;
1329 struct tcpsvd_data tcpsvd;
1330 struct telnet_data telnet;
1331 struct telnetd_data telnetd;
1332 struct tftp_data tftp;
1333 struct tftpd_data tftpd;
1334 struct top_data top;
1336 struct traceroute_data traceroute;
1337 struct useradd_data useradd;
1338 struct watch_data watch;
1339 struct chgrp_data chgrp;
1340 struct chmod_data chmod;
1341 struct cksum_data cksum;
1342 struct cmp_data cmp;
1344 struct cpio_data cpio;
1345 struct cut_data cut;
1346 struct date_data date;
1349 struct expand_data expand;
1350 struct find_data find;
1351 struct grep_data grep;
1352 struct head_data head;
1354 struct kill_data kill;
1356 struct mkdir_data mkdir;
1357 struct mkfifo_data mkfifo;
1358 struct nice_data nice;
1361 struct paste_data paste;
1362 struct patch_data patch;
1363 struct renice_data renice;
1364 struct sed_data sed;
1365 struct sort_data sort;
1366 struct split_data split;
1367 struct strings_data strings;
1368 struct tail_data tail;
1369 struct tee_data tee;
1370 struct touch_data touch;
1371 struct uniq_data uniq;
1372 struct uudecode_data uudecode;
1374 struct xargs_data xargs;