#include <inttypes.h>
#include <linux/oom.h>
#include <locale.h>
+#include <net/if.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
return 0;
}
+int parse_ifindex_or_ifname(const char *s, int *ret) {
+ int r;
+
+ assert(s);
+ assert(ret);
+
+ r = parse_ifindex(s, ret);
+ if (r >= 0)
+ return r;
+
+ r = (int) if_nametoindex(s);
+ if (r <= 0)
+ return -errno;
+
+ *ret = r;
+ return 0;
+}
+
int parse_mtu(int family, const char *s, uint32_t *ret) {
uint64_t u;
size_t m;
int parse_pid(const char *s, pid_t* ret_pid);
int parse_mode(const char *s, mode_t *ret);
int parse_ifindex(const char *s, int *ret);
+int parse_ifindex_or_ifname(const char *s, int *ret);
int parse_mtu(int family, const char *s, uint32_t *ret);
int parse_size(const char *t, uint64_t base, uint64_t *size);