mirror of
https://github.com/openharmony/third_party_libnl.git
synced 2026-07-19 12:09:14 -04:00
@@ -0,0 +1,190 @@
|
||||
/*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation version 2.1
|
||||
* of the License.
|
||||
*
|
||||
* Copyright(c) 2021-2022 Huawei Device Co., Ltd.
|
||||
*/
|
||||
|
||||
if (!defined(ohos_lite)) {
|
||||
import("//build/ohos.gni")
|
||||
}
|
||||
|
||||
if (!defined(ohos_lite)) {
|
||||
config("libnl_config") {
|
||||
include_dirs = [
|
||||
"include",
|
||||
"lib",
|
||||
"lib/route/cls",
|
||||
"lib/route",
|
||||
]
|
||||
}
|
||||
|
||||
ohos_shared_library("libnl_share") {
|
||||
public_configs = [ ":libnl_config"]
|
||||
sources = [
|
||||
"lib/addr.c",
|
||||
"lib/attr.c",
|
||||
"lib/cache.c",
|
||||
"lib/cache_mngr.c",
|
||||
"lib/cache_mngt.c",
|
||||
"lib/data.c",
|
||||
"lib/error.c",
|
||||
"lib/handlers.c",
|
||||
"lib/hash.c",
|
||||
"lib/hashtable.c",
|
||||
"lib/mpls.c",
|
||||
"lib/msg.c",
|
||||
"lib/nl.c",
|
||||
"lib/object.c",
|
||||
"lib/socket.c",
|
||||
"lib/utils.c",
|
||||
"lib/version.c",
|
||||
"lib/fib_lookup/lookup.c",
|
||||
"lib/fib_lookup/request.c",
|
||||
"lib/genl/ctrl.c",
|
||||
"lib/genl/family.c",
|
||||
"lib/genl/genl.c",
|
||||
"lib/genl/mngt.c",
|
||||
"lib/idiag/idiag.c",
|
||||
"lib/idiag/idiag_meminfo_obj.c",
|
||||
"lib/idiag/idiag_msg_obj.c",
|
||||
"lib/idiag/idiag_req_obj.c",
|
||||
"lib/idiag/idiag_vegasinfo_obj.c",
|
||||
"lib/netfilter/ct.c",
|
||||
"lib/netfilter/ct_obj.c",
|
||||
"lib/netfilter/exp.c",
|
||||
"lib/netfilter/exp_obj.c",
|
||||
"lib/netfilter/log.c",
|
||||
"lib/netfilter/log_msg.c",
|
||||
"lib/netfilter/log_msg_obj.c",
|
||||
"lib/netfilter/log_ohj.c",
|
||||
"lib/netfilter/netfilter.c",
|
||||
"lib/netfilter/nfnl.c",
|
||||
"lib/netfilter/queue.c",
|
||||
"lib/netfilter/queue_msg.c",
|
||||
"lib/netfilter/queue_msg_obj.c",
|
||||
"lib/netfilter/queue_obj.c",
|
||||
"lib/route/act.c",
|
||||
"lib/route/addr.c",
|
||||
"lib/route/class.c",
|
||||
"lib/route/classid.c",
|
||||
"lib/route/cls.c",
|
||||
"lib/route/link.c",
|
||||
"lib/route/neigh.c",
|
||||
"lib/route/neightbl.c",
|
||||
"lib/route/netconf.c",
|
||||
"lib/route/nexthop.c",
|
||||
"lib/route/nexthop_encap.c",
|
||||
"lib/route/nh_encap_mpls.c",
|
||||
"lib/route/pktloc.c",
|
||||
"lib/route/pktloc_grammar.c",
|
||||
"lib/route/pktloc_syntax.c",
|
||||
"lib/route/qdisc.c",
|
||||
"lib/route/route.c",
|
||||
"lib/route/route_obj.c",
|
||||
"lib/route/route_utils.c",
|
||||
"lib/route/rtnl.c",
|
||||
"lib/route/rule.c",
|
||||
"lib/route/tc.c",
|
||||
"lib/route/act/gact.c",
|
||||
"lib/route/act/mirred.c",
|
||||
"lib/route/act/skbedit.c",
|
||||
"lib/route/act/vlan.c",
|
||||
"lib/route/cls/basic.c",
|
||||
"lib/route/cls/cgroup.c",
|
||||
"lib/route/cls/ematch.c",
|
||||
"lib/route/cls/ematch_grammar.c",
|
||||
"lib/route/cls/ematch_syntax.c",
|
||||
"lib/route/cls/fw.c",
|
||||
"lib/route/cls/mall.c",
|
||||
"lib/route/cls/police.c",
|
||||
"lib/route/cls/u32.c",
|
||||
"lib/route/cls/ematch/cmp.c",
|
||||
"lib/route/cls/ematch/container.c",
|
||||
"lib/route/cls/ematch/meta.c",
|
||||
"lib/route/cls/ematch/nbyte.c",
|
||||
"lib/route/cls/ematch/text.c",
|
||||
"lib/route/link/api.c",
|
||||
"lib/route/link/bonding.c",
|
||||
"lib/route/link/bridge.c",
|
||||
"lib/route/link/can.c",
|
||||
"lib/route/link/dummy.c",
|
||||
"lib/route/link/geneve.c",
|
||||
"lib/route/link/ifb.c",
|
||||
"lib/route/link/inet6.c",
|
||||
"lib/route/link/inet.c",
|
||||
"lib/route/link/ip6tnl.c",
|
||||
"lib/route/link/ipgre.c",
|
||||
"lib/route/link/ipip.c",
|
||||
"lib/route/link/ipvlan.c",
|
||||
"lib/route/link/ipvti.c",
|
||||
"lib/route/link/macsec.c",
|
||||
"lib/route/link/macvlan.c",
|
||||
"lib/route/link/ppp.c",
|
||||
"lib/route/link/sit.c",
|
||||
"lib/route/link/sriov.c",
|
||||
"lib/route/link/veth.c",
|
||||
"lib/route/link/vlan.c",
|
||||
"lib/route/link/vrf.c",
|
||||
"lib/route/link/vxlan.c",
|
||||
"lib/route/link/xfrmi.c",
|
||||
"lib/route/qdisc/blackhole.c",
|
||||
"lib/route/qdisc/cbq.c",
|
||||
"lib/route/qdisc/dsmark.c",
|
||||
"lib/route/qdisc/fifo.c",
|
||||
"lib/route/qdisc/fq_codel.c",
|
||||
"lib/route/qdisc/hfsc.c",
|
||||
"lib/route/qdisc/htb.c",
|
||||
"lib/route/qdisc/ingress.c",
|
||||
"lib/route/qdisc/mqprio.c",
|
||||
"lib/route/qdisc/netem.c",
|
||||
"lib/route/qdisc/plug.c",
|
||||
"lib/route/qdisc/prio.c",
|
||||
"lib/route/qdisc/red.c",
|
||||
"lib/route/qdisc/sfq.c",
|
||||
"lib/route/qdisc/tbf.c",
|
||||
"lib/xfrm/ae.c",
|
||||
"lib/xfrm/lifetime.c",
|
||||
"lib/xfrm/sa.c",
|
||||
"lib/xfrm/selector.c",
|
||||
"lib/xfrm/sp.c",
|
||||
"lib/xfrm/template.c",
|
||||
"lib/cli/cls/basic.c",
|
||||
"lib/cli/cls/cgroup.c",
|
||||
"lib/cli/qdisc/bfifo.c",
|
||||
"lib/cli/qdisc/blackhole.c",
|
||||
"lib/cli/qdisc/fq_codel.c",
|
||||
"lib/cli/qdisc/hfsc.c",
|
||||
"lib/cli/qdisc/htb.c",
|
||||
"lib/cli/qdisc/ingress.c",
|
||||
"lib/cli/qdisc/pfifo.c",
|
||||
"lib/cli/qdisc/plug.c",
|
||||
|
||||
"src/lib/addr.c",
|
||||
"src/lib/class.c",
|
||||
"src/lib/cls.c",
|
||||
"src/lib/ct.c",
|
||||
"src/lib/exp.c",
|
||||
"src/lib/link.c",
|
||||
"src/lib/neigh.c",
|
||||
"src/lib/qdisc.c",
|
||||
"src/lib/route.c",
|
||||
"src/lib/rule.c",
|
||||
"src/lib/tc.c",
|
||||
"src/lib/utils.c",
|
||||
]
|
||||
defines = [ "NL_DEBUG" ]
|
||||
cflags = [
|
||||
"-Wno-error",
|
||||
"-D_BSD_SOURCE",
|
||||
"-D_GNU_SOURCE",
|
||||
"-DNL_DEBUG",
|
||||
#"-UNDEBUG",
|
||||
"-DSYSCONFDIR=\"\\\"/etc/libnl\\\"\"",
|
||||
]
|
||||
subsystem_name = "wpa_supplicant-2.9"
|
||||
install_images = [ "system" ]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
# libnl
|
||||
|
||||
#### Introduction & Software Architecture
|
||||
- Refer to the official documentation: [https://www.infradead.org/~tgr/libnl/](https://www.infradead.org/~tgr/libnl/)
|
||||
|
||||
#### Usage Guidelines
|
||||
|
||||
- Refer to the official API documentation: [https://www.infradead.org/~tgr/libnl/doc/api/index.html#main_intro](https://www.infradead.org/~tgr/libnl/doc/api/index.html#main_intro)
|
||||
|
||||
#### Contribution
|
||||
|
||||
[How to involve](https://gitee.com/openharmony/docs/blob/HEAD/zh-cn/contribute/参与贡献.md)
|
||||
|
||||
[Commit message spec](https://gitee.com/openharmony/device_qemu/wikis/Commit%20message%E8%A7%84%E8%8C%83)
|
||||
|
||||
#### Repositories Involved
|
||||
|
||||
[third_party_wpa_supplicant](https://gitee.com/openharmony/third_party_wpa_supplicant)
|
||||
|
||||
[drivers_peripheral](https://gitee.com/openharmony/drivers_peripheral)
|
||||
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
# libnl
|
||||
|
||||
#### 简介 & 软件架构
|
||||
|
||||
- 参考官方文档: [https://www.infradead.org/~tgr/libnl/](https://www.infradead.org/~tgr/libnl/)
|
||||
|
||||
#### 使用说明
|
||||
|
||||
- 参考官方API文档: [https://www.infradead.org/~tgr/libnl/doc/api/index.html#main_intro](https://www.infradead.org/~tgr/libnl/doc/api/index.html#main_intro)
|
||||
|
||||
#### 参与贡献
|
||||
|
||||
[如何贡献](https://gitee.com/openharmony/docs/blob/HEAD/zh-cn/contribute/参与贡献.md)
|
||||
|
||||
[Commit message规范](https://gitee.com/openharmony/device_qemu/wikis/Commit%20message%E8%A7%84%E8%8C%83)
|
||||
|
||||
|
||||
#### 相关仓
|
||||
|
||||
[third_party_wpa_supplicant](https://gitee.com/openharmony/third_party_wpa_supplicant)
|
||||
|
||||
[drivers_peripheral](https://gitee.com/openharmony/drivers_peripheral)
|
||||
|
||||
@@ -33,7 +33,6 @@
|
||||
#include <netlink/route/link/vrf.h>
|
||||
|
||||
#include <linux/if_link.h>
|
||||
#include <linux-private/linux/rtnetlink.h>
|
||||
|
||||
#define VRF_TABLE_ID_MAX RT_TABLE_MAX
|
||||
|
||||
|
||||
+3
-2
@@ -226,8 +226,8 @@ double nl_cancel_down_bits(unsigned long long l, char **unit)
|
||||
|
||||
int nl_rate2str(unsigned long long rate, int type, char *buf, size_t len)
|
||||
{
|
||||
char *unit;
|
||||
double frac;
|
||||
char *unit = NULL;
|
||||
double frac = 0.0;
|
||||
|
||||
switch (type) {
|
||||
case NL_BYTE_RATE:
|
||||
@@ -374,6 +374,7 @@ char *nl_size2str(const size_t size, char *buf, const size_t len)
|
||||
}
|
||||
|
||||
BUG();
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+3
-1
@@ -25,12 +25,14 @@
|
||||
#include <netlink/cli/utils.h>
|
||||
#include <locale.h>
|
||||
|
||||
#include "lib/defs.h"
|
||||
#include "defs.h"
|
||||
|
||||
#ifdef HAVE_DLFCN_H
|
||||
#include <dlfcn.h>
|
||||
#endif
|
||||
|
||||
#define PKGLIBDIR "out"
|
||||
|
||||
/**
|
||||
* Parse a text based 32 bit unsigned integer argument
|
||||
* @arg arg Integer in text form.
|
||||
|
||||
Reference in New Issue
Block a user