diff --git a/repos/libports/src/lib/libc/rlimit.cc b/repos/libports/src/lib/libc/rlimit.cc
index 23de3860b8..4ce8aecbd2 100644
--- a/repos/libports/src/lib/libc/rlimit.cc
+++ b/repos/libports/src/lib/libc/rlimit.cc
@@ -13,8 +13,10 @@
/* Genode includes */
#include
+#include
/* libc includes */
+#include
#include
#include
#include
@@ -32,6 +34,24 @@ extern "C" int __attribute__((weak)) getrlimit(int resource, struct rlimit *rlim
return 0;
}
+ /*
+ * Maximal size of address space
+ */
+ if (resource == RLIMIT_AS) {
+ rlim->rlim_cur = LONG_MAX;
+ rlim->rlim_max = LONG_MAX;
+ return 0;
+ }
+
+ /*
+ * Maximum number of file descriptors
+ */
+ if (resource == RLIMIT_NOFILE) {
+ rlim->rlim_cur = MAX_NUM_FDS;
+ rlim->rlim_max = MAX_NUM_FDS;
+ return 0;
+ }
+
return 0;
}