X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fmissing.h;h=d5ec2f805131cd7efaedfc4c940695460715f1f0;hb=76cf10dab7a36653a159f0e87c46a13df494474f;hp=3142306e35c2375382c2539ea81787cb674d4ad9;hpb=3b794314149e40afaf3c456285e1e529747b6560;p=elogind.git diff --git a/src/shared/missing.h b/src/shared/missing.h index 3142306e3..d5ec2f805 100644 --- a/src/shared/missing.h +++ b/src/shared/missing.h @@ -32,6 +32,8 @@ #include #include #include +#include +#include #ifdef HAVE_AUDIT #include @@ -47,6 +49,9 @@ #define RLIMIT_RTTIME 15 #endif +/* If RLIMIT_RTTIME is not defined, then we cannot use RLIMIT_NLIMITS as is */ +#define _RLIMIT_MAX (RLIMIT_RTTIME+1 > RLIMIT_NLIMITS ? RLIMIT_RTTIME+1 : RLIMIT_NLIMITS) + #ifndef F_LINUX_SPECIFIC_BASE #define F_LINUX_SPECIFIC_BASE 1024 #endif @@ -273,25 +278,17 @@ static inline pid_t gettid(void) { #define MAX_HANDLE_SZ 128 #endif -#if defined __x86_64__ -# ifndef __NR_name_to_handle_at +#ifndef __NR_name_to_handle_at +# if defined(__x86_64__) # define __NR_name_to_handle_at 303 -# endif -#elif defined __i386__ -# ifndef __NR_name_to_handle_at +# elif defined(__i386__) # define __NR_name_to_handle_at 341 -# endif -#elif defined __arm__ -# ifndef __NR_name_to_handle_at +# elif defined(__arm__) # define __NR_name_to_handle_at 370 -# endif -#elif defined __powerpc__ -# ifndef __NR_name_to_handle_at +# elif defined(__powerpc__) # define __NR_name_to_handle_at 345 -# endif -#else -# ifndef __NR_name_to_handle_at -# error __NR_name_to_handle_at is not defined +# else +# error "__NR_name_to_handle_at is not defined" # endif #endif @@ -311,7 +308,7 @@ static inline int name_to_handle_at(int fd, const char *name, struct file_handle # ifdef HAVE___SECURE_GETENV # define secure_getenv __secure_getenv # else -# error neither secure_getenv nor __secure_getenv are available +# error "neither secure_getenv nor __secure_getenv are available" # endif #endif @@ -370,3 +367,47 @@ static inline int setns(int fd, int nstype) { return syscall(__NR_setns, fd, nstype); } #endif + +#if !HAVE_DECL_LO_FLAGS_PARTSCAN +#define LO_FLAGS_PARTSCAN 8 +#endif + +#ifndef LOOP_CTL_REMOVE +#define LOOP_CTL_REMOVE 0x4C81 +#endif + +#ifndef LOOP_CTL_GET_FREE +#define LOOP_CTL_GET_FREE 0x4C82 +#endif + +#ifndef IFLA_BOND_MAX +enum { + IFLA_BOND_UNSPEC, + IFLA_BOND_MODE, + IFLA_BOND_ACTIVE_SLAVE, + IFLA_BOND_MIIMON, + IFLA_BOND_UPDELAY, + IFLA_BOND_DOWNDELAY, + IFLA_BOND_USE_CARRIER, + IFLA_BOND_ARP_INTERVAL, + IFLA_BOND_ARP_IP_TARGET, + IFLA_BOND_ARP_VALIDATE, + IFLA_BOND_ARP_ALL_TARGETS, + IFLA_BOND_PRIMARY, + IFLA_BOND_PRIMARY_RESELECT, + IFLA_BOND_FAIL_OVER_MAC, + IFLA_BOND_XMIT_HASH_POLICY, + IFLA_BOND_RESEND_IGMP, + IFLA_BOND_NUM_PEER_NOTIF, + IFLA_BOND_ALL_SLAVES_ACTIVE, + IFLA_BOND_MIN_LINKS, + IFLA_BOND_LP_INTERVAL, + IFLA_BOND_PACKETS_PER_SLAVE, + IFLA_BOND_AD_LACP_RATE, + IFLA_BOND_AD_SELECT, + IFLA_BOND_AD_INFO, + __IFLA_BOND_MAX, +}; + +#define IFLA_BOND_MAX (__IFLA_BOND_MAX - 1) +#endif