summaryrefslogtreecommitdiff
path: root/src/basic/missing.h
Commit message (Collapse)AuthorAgeFilesLines
* tree-wide: drop several missing_*.h and import relevant headers from kernel-5.0Yu Watanabe2019-04-111-1/+0
|
* missing: re-add drm related entriesYu Watanabe2018-12-071-0/+1
| | | | | | This effectively reverts dab28f09051445fe370466e767e31652e0804a0f. Fixes #11075.
* util: drop missing.h from socket-util.hYu Watanabe2018-12-061-4/+0
|
* missing: move fs or mount related definitions to missing_fs.hYu Watanabe2018-12-061-60/+1
| | | | This also fixes errnous definition MS_REC -> MS_SLAVE.
* missing: drop falloc related definitionsYu Watanabe2018-12-061-9/+0
| | | | | All these values are exposed earlier than linux-3.11. Let's drop them.
* missing: move sched.h related definitions to missing_sched.hYu Watanabe2018-12-061-15/+1
|
* missing: drop old drm related definitionsYu Watanabe2018-12-061-8/+0
| | | | | These values are exposed earlier than linux-3.11. Let's use drm/drm.h.
* missing: drop BPF_XOR as we have linux/bpf_common.hYu Watanabe2018-12-061-4/+0
|
* missing: drop DM_DEFERRED_REMOVE as we have dm-ioctl.hYu Watanabe2018-12-061-4/+0
|
* missing: move definition of secure_getenv() to missing_stdlib.hYu Watanabe2018-12-061-9/+1
|
* missing: move rand related definitions to missing_random.hYu Watanabe2018-12-061-8/+1
|
* missing: drop TIOCVHANGUPYu Watanabe2018-12-061-4/+0
| | | | | This is defined before linux-3.11. Also, its value depnends on architecture. So, it is not good to define in this form.
* missing: add memfd related definitions to missing_mman.hYu Watanabe2018-12-061-8/+1
|
* missing: move timer related definition to missing_timerfd.hYu Watanabe2018-12-061-4/+1
|
* missing: move socket related definitions to missing_socket.hYu Watanabe2018-12-061-54/+1
|
* missing: move fcntl related definitions to missing_fcntl.hYu Watanabe2018-12-061-57/+1
|
* missing: move resource related definitions to missing_resource.hYu Watanabe2018-12-061-8/+1
|
* missing: move audit related definitions to missing_audit.hYu Watanabe2018-12-061-21/+1
|
* missing: move syscall related definitions to missing_syscall.hYu Watanabe2018-12-061-9/+0
|
* missing: drop old OOM related definitionsYu Watanabe2018-12-061-9/+0
| | | | These are exposed earlier than linux-3.11. Let's just include linux/oom.h.
* missing: move one more network related definition to missing_network.hYu Watanabe2018-12-061-5/+0
|
* missing: move several network related entries to missing_network.hYu Watanabe2018-12-061-13/+0
|
* missing: move char{16,32}_t definitions to missing_type.hYu Watanabe2018-12-041-9/+1
|
* missing: move capabilities to missing_capability.hYu Watanabe2018-12-041-25/+1
|
* missing: move prctl related entries to missing_prctl.hYu Watanabe2018-12-041-40/+1
|
* missing: move statx related definitions to missing_stat.hYu Watanabe2018-12-041-44/+1
|
* missing: move entries defined in magic.h to missing_magic.hYu Watanabe2018-12-041-48/+1
|
* missing: move input related entries to missing_input.hYu Watanabe2018-12-041-33/+1
|
* missing: move btrfs related entries to missing_btrfs.h and missing_btrfs_tree.hYu Watanabe2018-12-041-319/+1
|
* missing: move missing entries in keyctl.h to missing_keyctl.hYu Watanabe2018-12-041-68/+0
|
* missing: split network related entriesYu Watanabe2018-12-031-678/+6
| | | | | | Also adds comments which kernel version added the entries. Closes #10553.
* networkd: add support to configure ip rule port range and protocol.Susant Sahani2018-11-281-2/+16
| | | | | | | | | Please see: iprule: support for ip_proto, sport and dport match options https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=f686f764682745daf6a93b0a6330ba42a961f858 Closes 10622
* missing.h: remove duplicate definition of 'struct ethtool_link_settings'Lennart Poettering2018-11-281-27/+5
| | | | Fixes: #10966
* networkd: Add support for ERSPAN tunnelSusant Sahani2018-11-271-3/+9
| | | | | | | | | | | | | | | | | Please see: https://patchwork.ozlabs.org/patch/800327/ ``` [NetDev] Name=erspan-test Kind=erspan [Tunnel] Independent=true ERSPANIndex=123 Local = 172.16.1.200 Remote = 172.16.1.100 Key=101 SerializeTunneledPackets=true ```
* basic/missing: drop _ETHTOOL_LINK_MODE_MAXZbigniew Jędrzejewski-Szmek2018-11-181-7/+0
| | | | | | It was only used in one place, where we don't actually need it, and it is too easy to forget to update it when adding new items to the table. Let's just drop it.
* missing: add ETHTOOL_LINK_MODE_* and struct ethtool_link_settingsYu Watanabe2018-11-181-0/+127
|
* networkd: add missing bonding options (#10542)Tobias Jungel2018-11-021-2/+5
| | | | | | | | | Add support for bonding options system prio, port key and actor system mac. These options exist in the linux kernel since 4.2 (torvalds/linux@171a42c38c6e1) Details: https://www.kernel.org/doc/Documentation/networking/bonding.txt
* missing: support old linux/fou.hYu Watanabe2018-10-211-20/+26
| | | | | | | | | linux/fou.h was introduced in 3.18. FOU_ATTR_REMCSUM_NOPARTIAL was added in 4.0. FOU_CMD_GET was added in 4.1. Follow-up for 53cb501a1314740fa777f145067cefccda954487. Fixes #10474.
* networkd and sd-netlink: add support for Generic netlink And FooOverUDP to ↵Susant Sahani2018-08-231-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IPIP tunnel This work add support to generic netlink to sd-netlink. See https://lwn.net/Articles/208755/ networkd: add support FooOverUDP support to IPIP tunnel netdev https://lwn.net/Articles/614348/ Example conf: /lib/systemd/network/1-fou-tunnel.netdev ``` [NetDev] Name=fou-tun Kind=fou [FooOverUDP] Port=5555 Protocol=4 ``` /lib/systemd/network/ipip-tunnel.netdev ``` [NetDev] Name=ipip-tun Kind=ipip [Tunnel] Independent=true Local=10.65.208.212 Remote=10.65.208.211 FooOverUDP=true FOUDestinationPort=5555 ``` $ ip -d link show ipip-tun ``` 5: ipip-tun@NONE: <POINTOPOINT,NOARP> mtu 1472 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ipip 10.65.208.212 peer 10.65.208.211 promiscuity 0 ipip remote 10.65.208.211 local 10.65.208.212 ttl inherit pmtudisc encap fou encap-sport auto encap-dport 5555 noencap-csum noencap-csum6 noencap-remcsum numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 ```
* meson: remove false check for key_serial_tZbigniew Jędrzejewski-Szmek2018-07-181-2/+0
| | | | | | | | | | | | | | | key_serial_t is defined in keyutil.h, which wasn't included in the header list in the test, so the test always failed. We were always compiling stuff with !HAVE_KEY_SERIAL_T. We could try to add keyutil.h to the test, but then we'd have to first check if it is available, which just doesn't seem worth the trouble. key_serial_t should always be defined as int32_t. Let's keep the uncoditional define, since repeated compatible typedefs are not a problem, and it allows us to compile even if the header file is missing. If there's ever a change in the definition, we'll have to adjust the code for the different type anyway, and our compiler will tell us.
* meson: unify linux/stat.h check with other checks and use _GNU_SOURCEZbigniew Jędrzejewski-Szmek2018-07-181-1/+1
| | | | | | Using _GNU_SOURCE is better because that's how we include the headers in the actual build, and some headers define different stuff when it is defined. sys/stat.h for example defines 'struct statx' conditionally.
* build-sys: Detect whether struct statx is defined in sys/stat.hFilipe Brandenburger2018-07-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting with glibc 2.27.9000-36.fc29, include file sys/stat.h will have a definition for struct statx, in which case include file linux/stat.h should be avoided, in order to prevent a duplicate definition. In file included from ../src/basic/missing.h:18, from ../src/basic/util.h:28, from ../src/basic/hashmap.h:10, from ../src/shared/bus-util.h:12, from ../src/libsystemd/sd-bus/bus-creds.c:11: /usr/include/linux/stat.h:99:8: error: redefinition of ‘struct statx’ struct statx { ^~~~~ In file included from /usr/include/sys/stat.h:446, from ../src/basic/util.h:19, from ../src/basic/hashmap.h:10, from ../src/shared/bus-util.h:12, from ../src/libsystemd/sd-bus/bus-creds.c:11: /usr/include/bits/statx.h:36:8: note: originally defined here struct statx ^~~~~ Extend our meson.build to look for struct statx when only sys/stat.h is included and, in that case, do not include linux/stat.h anymore. Tested that systemd builds correctly when using a glibc version that includes a definition for struct statx. glibc Fedora RPM update: https://src.fedoraproject.org/rpms/glibc/c/28cb5d31fc1e5887912283c889689c47076278ae glibc upstream commit: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fd70af45528d59a00eb3190ef6706cb299488fcd
* tree-wide: remove Lennart's copyright linesLennart Poettering2018-06-141-4/+0
| | | | | | | | | | | These lines are generally out-of-date, incomplete and unnecessary. With SPDX and git repository much more accurate and fine grained information about licensing and authorship is available, hence let's drop the per-file copyright notice. Of course, removing copyright lines of others is problematic, hence this commit only removes my own lines and leaves all others untouched. It might be nicer if sooner or later those could go away too, making git the only and accurate source of authorship information.
* tree-wide: drop 'This file is part of systemd' blurbLennart Poettering2018-06-141-2/+0
| | | | | | | | | | | | | | | | This part of the copyright blurb stems from the GPL use recommendations: https://www.gnu.org/licenses/gpl-howto.en.html The concept appears to originate in times where version control was per file, instead of per tree, and was a way to glue the files together. Ultimately, we nowadays don't live in that world anymore, and this information is entirely useless anyway, as people are very welcome to copy these files into any projects they like, and they shouldn't have to change bits that are part of our copyright header for that. hence, let's just get rid of this old cruft, and shorten our codebase a bit.
* missing: define kernel internal limit TASK_COMM_LEN in userspace tooLennart Poettering2018-06-011-0/+7
| | | | | We already use it at two places, and we are about to add one too. Arbitrary literally hardcoded limits suck.
* tree-wide: remove some double newlines in headers, tooLennart Poettering2018-05-221-1/+0
|
* missing: add IPV4_MIN_MTULennart Poettering2018-04-261-0/+4
| | | | Similar to IPV6_MIN_MTU, let's add the same for IPv4.
* tree-wide: drop license boilerplateZbigniew Jędrzejewski-Szmek2018-04-061-13/+0
| | | | | | | | | | Files which are installed as-is (any .service and other unit files, .conf files, .policy files, etc), are left as is. My assumption is that SPDX identifiers are not yet that well known, so it's better to retain the extended header to avoid any doubt. I also kept any copyright lines. We can probably remove them, but it'd nice to obtain explicit acks from all involved authors before doing that.
* setup route expiration in kernel if supportedDaniel Dao2018-03-121-0/+4
| | | | | | | | | kernel >= 4.5 (with commit https://github.com/torvalds/linux/commit/32bc201e1974976b7d3fea9a9b17bb7392ca6394) supports RTA_EXPIRES netlink attribute to set router lifetime. This simply detect the kernel version (>=4.5) and set the lifetime properly, fallback to expiring route in userspace for kernel that doesnt support it. Signed-off-by: Daniel Dao <dqminh89@gmail.com>
* xattr-util: use crtime/btime if statx() is available for implementation of ↵Lennart Poettering2018-02-201-0/+41
| | | | | | | | | | | | | | fd_setcrtime() and friends The Linux kernel exposes the birth time now for files through statx() hence make use of it where available. We keep the xattr logic in place for this however, since only a subset of file systems on Linux currently expose the birth time. NFS and tmpfs for example do not support it. OTOH there are other file systems that do support the birth time but might not support xattrs (smb…), hence make the best of the two, in particular in order to deal with journal files copied between file system types and to maintain compatibility with older file systems that are updated to newer version of the file system.