iAdd arg.h. - sup - small tool for privilege escalation Err bitreich.org 70
hgit clone git://bitreich.org/sup git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sup URL:git://bitreich.org/sup git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sup bitreich.org 70
1Log /scm/sup/log.gph bitreich.org 70
1Files /scm/sup/files.gph bitreich.org 70
1Refs /scm/sup/refs.gph bitreich.org 70
1Tags /scm/sup/tag bitreich.org 70
1README /scm/sup/file/README.gph bitreich.org 70
1LICENSE /scm/sup/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 96b227c7bf3acc15c0de695b074f2b32fcabe21e /scm/sup/commit/96b227c7bf3acc15c0de695b074f2b32fcabe21e.gph bitreich.org 70
1parent 6ff18b795ab40b43d16da0a8e5affbd85781525c /scm/sup/commit/6ff18b795ab40b43d16da0a8e5affbd85781525c.gph bitreich.org 70
hAuthor: parazyd <parazyd@dyne.org> URL:mailto:parazyd@dyne.org bitreich.org 70
iDate: Tue, 2 Jul 2019 13:00:34 +0200 Err bitreich.org 70
i Err bitreich.org 70
iAdd arg.h. Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i A arg.h | 50 +++++++++++++++++++++++++++++++ Err bitreich.org 70
i Err bitreich.org 70
i1 file changed, 50 insertions(+), 0 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/arg.h b/arg.h /scm/sup/file/arg.h.gph bitreich.org 70
i@@ -0,0 +1,50 @@ Err bitreich.org 70
i+/* Err bitreich.org 70
i+ * Copy me if you can. Err bitreich.org 70
i+ * by 20h Err bitreich.org 70
i+ */ Err bitreich.org 70
i+ Err bitreich.org 70
i+#ifndef ARG_H__ Err bitreich.org 70
i+#define ARG_H__ Err bitreich.org 70
i+ Err bitreich.org 70
i+extern char *argv0; Err bitreich.org 70
i+ Err bitreich.org 70
i+/* use main(int argc, char *argv[]) */ Err bitreich.org 70
i+#define ARGBEGIN for (argv0 = *argv, argv++, argc--;\ Err bitreich.org 70
i+ argv[0] && argv[0][0] == '-'\ Err bitreich.org 70
i+ && argv[0][1];\ Err bitreich.org 70
i+ argc--, argv++) {\ Err bitreich.org 70
i+ char argc_;\ Err bitreich.org 70
i+ char **argv_;\ Err bitreich.org 70
i+ int brk_;\ Err bitreich.org 70
i+ if (argv[0][1] == '-' && argv[0][2] == '\0') {\ Err bitreich.org 70
i+ argv++;\ Err bitreich.org 70
i+ argc--;\ Err bitreich.org 70
i+ break;\ Err bitreich.org 70
i+ }\ Err bitreich.org 70
i+ int i_;\ Err bitreich.org 70
i+ for (i_ = 1, brk_ = 0, argv_ = argv;\ Err bitreich.org 70
i+ argv[0][i_] && !brk_;\ Err bitreich.org 70
i+ i_++) {\ Err bitreich.org 70
i+ if (argv_ != argv)\ Err bitreich.org 70
i+ break;\ Err bitreich.org 70
i+ argc_ = argv[0][i_];\ Err bitreich.org 70
i+ switch (argc_) Err bitreich.org 70
i+ Err bitreich.org 70
i+#define ARGEND }\ Err bitreich.org 70
i+ } Err bitreich.org 70
i+ Err bitreich.org 70
i+#define ARGC() argc_ Err bitreich.org 70
i+ Err bitreich.org 70
i+#define EARGF(x) ((argv[0][i_+1] == '\0' && argv[1] == NULL)?\ Err bitreich.org 70
i+ ((x), abort(), (char *)0) :\ Err bitreich.org 70
i+ (brk_ = 1, (argv[0][i_+1] != '\0')?\ Err bitreich.org 70
i+ (&argv[0][i_+1]) :\ Err bitreich.org 70
i+ (argc--, argv++, argv[0]))) Err bitreich.org 70
i+ Err bitreich.org 70
i+#define ARGF() ((argv[0][i_+1] == '\0' && argv[1] == NULL)?\ Err bitreich.org 70
i+ (char *)0 :\ Err bitreich.org 70
i+ (brk_ = 1, (argv[0][i_+1] != '\0')?\ Err bitreich.org 70
i+ (&argv[0][i_+1]) :\ Err bitreich.org 70
i+ (argc--, argv++, argv[0]))) Err bitreich.org 70
i+ Err bitreich.org 70
i+#endif Err bitreich.org 70
.
Response:
text/plain