mirror of
https://git.proxmox.com/git/systemd
synced 2026-01-03 23:07:15 +00:00
37 lines
1.1 KiB
C
37 lines
1.1 KiB
C
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
#pragma once
|
|
|
|
/***
|
|
Copyright © 2014 Axis Communications AB. All rights reserved.
|
|
***/
|
|
|
|
#include <net/ethernet.h>
|
|
#include <netinet/in.h>
|
|
|
|
#include "socket-util.h"
|
|
#include "sparse-endian.h"
|
|
|
|
int arp_update_filter(int fd, const struct in_addr *a, const struct ether_addr *mac);
|
|
int arp_network_bind_raw_socket(int ifindex, const struct in_addr *a, const struct ether_addr *mac);
|
|
|
|
int arp_send_packet(
|
|
int fd,
|
|
int ifindex,
|
|
const struct in_addr *pa,
|
|
const struct ether_addr *ha,
|
|
bool announce);
|
|
static inline int arp_send_probe(
|
|
int fd,
|
|
int ifindex,
|
|
const struct in_addr *pa,
|
|
const struct ether_addr *ha) {
|
|
return arp_send_packet(fd, ifindex, pa, ha, false);
|
|
}
|
|
static inline int arp_send_announcement(
|
|
int fd,
|
|
int ifindex,
|
|
const struct in_addr *pa,
|
|
const struct ether_addr *ha) {
|
|
return arp_send_packet(fd, ifindex, pa, ha, true);
|
|
}
|