jail: handle containers seperately
[oweals/procd.git] / container.h
1 /*
2  * Copyright (C) 2019 Paul Spooren <mail@aparcar.de>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 2.1
6  * as published by the Free Software Foundation
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  */
13
14 #ifndef __CONTAINER_H
15 #define __CONTAINER_H
16
17 #include <stdlib.h>
18 #include <stdbool.h>
19 #include <sys/stat.h>
20
21 static inline bool is_container() {
22         struct stat s;
23         int r = stat("/.dockerenv", &s);
24         return !!getenv("container") || r == 0;
25 }
26
27 #endif