resource_limits.h revision 59c5f4b0fb104e8e4806e4934a3d5d112ad695ab
1// Copyright 2015 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SANDBOX_LINUX_SERVICES_RESOURCE_LIMITS_H_
6#define SANDBOX_LINUX_SERVICES_RESOURCE_LIMITS_H_
7
8#include <sys/resource.h>
9
10#include "base/compiler_specific.h"
11#include "base/macros.h"
12#include "sandbox/sandbox_export.h"
13
14namespace sandbox {
15
16// This class provides a small wrapper around setrlimit().
17class SANDBOX_EXPORT ResourceLimits {
18 public:
19  // Lower the soft and hard limit of |resource| to |limit|. If the current
20  // limit is lower than |limit|, keep it.
21  static bool Lower(int resource, rlim_t limit) WARN_UNUSED_RESULT;
22
23 private:
24  DISALLOW_IMPLICIT_CONSTRUCTORS(ResourceLimits);
25};
26
27}  // namespace sandbox
28
29#endif  // SANDBOX_LINUX_SERVICES_RESOURCE_LIMITS_H_
30