/
niceSOFT
/
systemd
Обзор
Документация
Войти
/
niceSOFT
/
systemd
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
v261
src/basic/arphrd-util.c
43 строки
1 KB
Daan De Meyer
basic + fundamental: Clean up includes
25 май 2025, 11:06
25 май 2025, 11:06
0c15577
Код
Авторство
О чём код?
/* SPDX-License-Identifier: LGPL-2.1-or-later */ #include <linux/if_arp.h> #include <linux/if_infiniband.h> #include <netinet/in.h> #include <string.h> #include "arphrd-util.h" static const struct arphrd_name* lookup_arphrd(register const char *str, register GPERF_LEN_TYPE len); #include "arphrd-from-name.inc" #include "arphrd-to-name.inc" int arphrd_from_name(const char *name) { const struct arphrd_name *sc; assert(name); sc = lookup_arphrd(name, strlen(name)); if (!sc) return -EINVAL; return sc->id; } size_t arphrd_to_hw_addr_len(uint16_t arphrd) { switch (arphrd) { case ARPHRD_ETHER: return ETH_ALEN; case ARPHRD_INFINIBAND: return INFINIBAND_ALEN; case ARPHRD_TUNNEL: case ARPHRD_SIT: case ARPHRD_IPGRE: return sizeof(struct in_addr); case ARPHRD_TUNNEL6: case ARPHRD_IP6GRE: return sizeof(struct in6_addr); default: return 0; } }