aboutsummaryrefslogtreecommitdiff
path: root/lib/libnetmap/nmreq.c
Commit message (Collapse)AuthorAgeFilesLines
* libnetmap: remove interface name validationVincenzo Maffione2024-09-011-5/+0
| | | | | | | | | | | | | | | | | | When trying to use a VLAN device (e.g. "em0.123") with a dot the library fails to parse the interface correctly. The former pattern is much too restrictive given that almost all characters can be coerced into a device name via ifconfig. Remove the particularly restrictive validation. Some characters still cannot be used as an interface name as they are used as delimiters in the syntax, but this allows to be able to use most of them without an issue. Submitted by: franco@opnsense.org Differential Revision: https://reviews.freebsd.org/D42485 Reviewed by: vmaffione (cherry picked from commit ad874544d9f018bf8eef4053b5ca7b856c4674cb)
* Remove $FreeBSD$: two-line .h patternWarner Losh2023-08-231-2/+0
| | | | | | | Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/ Similar commit in main: (cherry picked from commit b3e7694832e8)
* spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDWarner Losh2023-07-251-1/+1
| | | | | | | | | | | The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix (cherry picked from commit 4d846d260e2b9a3d4d0a701462568268cbfe7a5b)
* libnetmap: reset errno in nmreq_register_decode()Vincenzo Maffione2021-09-261-0/+2
| | | | | | | | | The reset is necessary at the beginning of the function, because of the errno logic in the error path (set errno to EINVAL if not set). If errno is already set when calling the function, and the function fails, the previous errno value will be inherited. (cherry picked from commit ab639bb2873034786cd2ec4d2d9c4489fbf6f424)
* [libnetmap] Fix 32 bit compilation under gcc-6.4Adrian Chadd2020-11-021-5/+10
| | | | | | | | | | | | | | | Use uintptr_t to cast a uint64_t to a pointer type. Yeah, it isn't technically correct for platforms with pointers > 64 bits, but it's fine here. This fixes 32 bit compat library builds on amd64 and also mips32 builds. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D26790 Notes: svn path=/head/; revision=367273
* lib: libnetmap: add missing copyright headersVincenzo Maffione2020-09-011-1/+31
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=365023
* lib: add libnetmapVincenzo Maffione2020-08-281-0/+684
This changeset introduces the new libnetmap library for writing netmap applications. Before libnetmap, applications could either use the kernel API directly (e.g. NIOCREGIF/NIOCCTRL) or the simple header-only-library netmap_user.h (e.g. nm_open(), nm_close(), nm_mmap() etc.) The new library offers more functionalities than netmap_user.h: - Support for complex netmap options, such as external memory allocators or per-buffer offsets. This opens the way to future extensions. - More flexibility in the netmap port bind options, such as non-numeric names for pipes, or the ability to specify the netmap allocator that must be used for a given port. - Automatic tracking of the netmap memory regions in use across the open ports. At the moment there is no man page, but the libnetmap.h header file has in-depth documentation. Reviewed by: hrs MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D26171 Notes: svn path=/head/; revision=364936