Home | History | Annotate | Download | only in toybox

Lines Matching defs:toys

6 #include "toys.h"
26 struct toy_context toys;
72 toys.exitval = 127;
73 toys.which = toy_list;
80 toys.which = which;
81 toys.argv = argv;
88 if (CFG_TOYBOX && toys.which == toy_list && toys.argv[2])
89 if (!(toys.which = toy_find(toys.argv[2]))) unknown(toys.argv[2]);
102 toys.optargs = argv+1;
103 for (toys.optc = 0; toys.optargs[toys.optc]; toys.optc++);
105 toys.old_umask = umask(0);
106 if (!(which->flags & TOYFLAG_UMASK)) umask(toys.old_umask);
107 toys.signalfd--;
108 toys.toycount = ARRAY_LEN(toy_list);
114 void *oldwhich = toys.which;
119 if (!toys.which) toys.which = toy_list;
127 toys.wasroot++;
135 // Free old toys contents (to be reentrant), but leave rebound if any
137 if (argv<toys.optargs || argv>toys.optargs+toys.optc) free(toys.optargs);
138 memset(&toys, 0, offsetof(struct toy_context, rebound));
159 if (toys.stacktop && labs((long)toys.stacktop-(long)&which)>6000) return;
162 if (toys.which && (which->flags&TOYFLAG_ROOTONLY) && toys.wasroot) return;
166 if (toys.which) toys.which->toy_main();
178 // (Leave toys.which null to disable suid return logic.)
179 if (toys.argv[1]) toy_exec(toys.argv+1);
182 toys.which = toy_list;
184 if (toys.argv[1] && toys.argv[1][0] != '-') unknown(toys.argv[1]);
190 if (toys.argv[1]) {
212 toys.stacktop = &stack;
229 toys.stacktop = 0;
236 toys.argv = argv-1;