4 * Copyright (c) 2000 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
22 * @file net-restriction.h
23 * @desc Performance management API. Network restriction.
26 * Created on: Jun 18, 2012
29 #ifndef RESOURCED_NET_RESTRICTION_H_
30 #define RESOURCED_NET_RESTRICTION_H_
32 #include <sys/types.h>
34 #include "data_usage.h"
35 #include "transmission.h"
38 * @brief Send network restriction for specific classid
39 * rst_type - type of restriction on the basis of which the restriction
40 * can be applied, removed or excluded.
41 * classid - id, that generated for each application in the cgroup
42 * iftype - network interface type to proccess restriction
43 * send_limit - amount number of engress bytes allowed for restriction
44 * rcv_limit - amount number of ingress bytes allowed for restriction
45 * snd_warning_limit - threshold for warning notification on engress bytes
46 * rcv_warning_limit - threshold for warning notification on ingress bytes
48 int send_net_restriction(const enum traffic_restriction_type rst_type,
49 const u_int32_t classid,
50 const resourced_iface_type iftype,
51 const int send_limit, const int rcv_limit,
52 const int snd_warning_threshold,
53 const int rcv_warning_threshold);
55 #endif /* RESOURCED_NET_RESTRICTION_H_ */