aboutsummaryrefslogtreecommitdiff
path: root/lib/libnetmap
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
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* Remove $FreeBSD$: one-line .h patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
* Remove $FreeBSD$: two-line .h patternWarner Losh2023-08-164-8/+0
| | | | Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
* spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDWarner Losh2023-05-125-5/+5
| | | | | | | | | 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
* pkgbase: Create a FreeBSD-netmap packageEmmanuel Vadot2023-02-081-1/+1
| | | | | | | | This unbloat FreeBSD-utilities a bit and not everyone uses valectl which is the only in-tree consumer of libnetmap Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D38225
* libnetmap: reset errno in nmreq_register_decode()Vincenzo Maffione2021-04-021-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.
* netmap: several typo fixesVincenzo Maffione2021-04-021-2/+2
| | | | No functional changes intended.
* libnetmap: restore changes in 26c29e743bbdbb82762540f72d4bc449bae2e092Vincenzo Maffione2021-03-301-5/+10
| | | | | | Commit f8113f0a65ada9367bcbfa6e0d5d8a8451dd8ac2 accidentally reverted some fixes introduced by 26c29e743bbdbb82762540f72d4bc449bae2e092. This change restores them.
* libnetmap: add support for the offset featuresVincenzo Maffione2021-03-294-15/+144
| | | | | | | | The companion libnetmap changes for the "offsets" kernel support added in a6d768d845c173823785c. This includes code to parse the "@offset=NNN" option that can be appended to the port name by any nmport_* application. Example: # pkt-gen -i 'netmap:em0@offset=16'
* [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
* libnetmap: fix cast from uint64_t to void*Vincenzo Maffione2020-09-222-3/+3
| | | | | | | | | | | We use uintptr_t as an intermediate cast to avoid compiler warnings on 32 bit architectures. Reported by: adrian MFC after: 3 days Notes: svn path=/head/; revision=366011
* lib: libnetmap: add missing copyright headersVincenzo Maffione2020-09-014-4/+124
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=365023
* lib: add libnetmapVincenzo Maffione2020-08-286-0/+2328
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