From f8b64047f834095284fc3d3bdf73be089bb86fa6 Mon Sep 17 00:00:00 2001 From: netblue30 Date: Sun, 8 Apr 2018 19:07:27 -0400 Subject: uid test utility --- src/tools/testuid.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/tools/testuid.c (limited to 'src/tools') diff --git a/src/tools/testuid.c b/src/tools/testuid.c new file mode 100644 index 000000000..633b9773e --- /dev/null +++ b/src/tools/testuid.c @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2014-2018 Firejail Authors + * + * This file is part of firejail project + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +// compile: gcc -o testuid testuid.c + +#include +#include +#include +#include +#include + + +static void print_status(void) { + FILE *fp = fopen("/proc/self/status", "r"); + if (!fp) { + fprintf(stderr, "Error, cannot open staus file\n"); + exit(1); + } + + char buf[4096]; + while (fgets(buf, 4096, fp)) { + if (strncmp(buf, "Uid", 3) == 0 || strncmp(buf, "Gid", 3) == 0) + printf("%s", buf); + } + + fclose(fp); +} + +int main(void) { + print_status(); + return 0; +} -- cgit v1.2.3-54-g00ecf