History log of /freebsd-head/lib/libifconfig/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b17cb2b1f32f9d56a9ff134d13162eb0cbb6a953 02-Sep-2020 jhb <jhb@FreeBSD.org> libifconfig now depends on libm due to usage of log10().

ld.bfd in particular requires -lm to come after libifconfig on the
command line when linking rescue.

Reviewed by: freqlabs, adrian
Differential Revision: https://reviews.freebsd.org/D26258
7577abf444f6f1c6c44273bafab457f2457668e5 09-Aug-2020 freqlabs <freqlabs@FreeBSD.org> Move ifconfig SFP status functionality into libifconfig

libifconfig_sfp.h provides an API in libifconfig for querying SFP module
properties, operational status, and vendor strings, as well as descriptions
of the various fields, string conversions, and other useful helpers for
implementing user interfaces.

SFP module status is obtained by reading registers via an I2C interface.
Descriptions of these registers and the values therein have been collected
in a Lua table which is used to generate all the boilerplace C headers and
source files for accessing these values, their names, and descriptions.
The generated code is fully commented and readable.

This is the first use of libifconfig in ifconfig itself. For now, the
scope remains very limited. Over time, more of ifconfig will be replaced
with libifconfig.

Some minor changes to the formatting of ifconfig output have been made:
- Module memory hex dumps are indented one extra space as a result of using
hexdump(3) instead of a bespoke hex dump function.
- Media descriptions have an added two-character short-name in parenthesis.
- QSFP modules were incorrectly displaying TX bias current as power. Now
TX channels display bias current, and this change has been made for both
SFP and QSFP modules for consistency.

A Lua binding for libifconfig including this functionality is implemented
but has not been included in this commit. The plan is for it to be
committed after dynamic module loading has been enabled in flua.

Reviewed by: kp, melifaro
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D25494
251424cb6aad1b60397384346f1faa1a6f36241d 01-Jul-2020 freqlabs <freqlabs@FreeBSD.org> libifconfig: Add function to get bridge status

The new function operates similarly to ifconfig_lagg_get_lagg_status and
likewise is accompanied by a function to free the bridge status data structure.

I have included in this patch the relocation of some strings describing STP
parameters and the PV2ID macro from ifconfig into net/if_bridgevar.h as they
are useful for consumers of libifconfig.

Reviewed by: kp, melifaro, mmacy
Approved by: mmacy (mentor)
MFC after: 1 week
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D25460
cc6b20316cb62f48a1e9321231d060a22d2275b2 27-May-2020 vangyzen <vangyzen@FreeBSD.org> libifconfig: remove redundant NULL check

Submitted by: Puneeth_kumar.Jothaiah@emc.com
Reported by: Coverity
Sponsored by: Dell EMC Isilon
03b53b4196f60e396e467bc1d0a0c2fe8523edd9 25-Mar-2020 manu <manu@FreeBSD.org> wlandebug: Add include path for libifconfig as it is a internallib

Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D24172
6ff1d0e3174b3c7d39f3def7bbb5e7a3ef53e41d 25-Feb-2019 emaste <emaste@FreeBSD.org> Make libifconfig INTERNALLIB

Instead of PRIVATELIB + NO_PIC. This avoids the need for the wlandebug
PIE special case added in r344211, and provides a stronger guarantee
against 3rd party software coming to depend on the API or ABI.

If / when we declare the API/ABI to be stable we can make it a normal

Discussed with: bapt
Sponsored by: The FreeBSD Foundation
9a0f94467e44a8ab1acf4f10d194108c666df682 23-Apr-2018 brooks <brooks@FreeBSD.org> Finish removing FDDI and tokenring media support.

This fixes media display for 802.11 wireless devices.

Software outside the base system that uses these media types and
defines should use #ifdef IFM_FDDI or IFM_TOKEN to include or remove

Reported by: zeising
Reviewed by: emaste, kib, zeising
Tested by: zeising
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D15170
1f7ec30542b6936efd3c5d041b6f7ffc1d587f3f 16-Apr-2018 brooks <brooks@FreeBSD.org> Remove support for FDDI and token ring media types in userland utilities.

Reviewed by: kib
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D15077
6dcf9514b31c54ae191ebc60f3dbeb090475a1f3 11-Apr-2018 brooks <brooks@FreeBSD.org> Remove support for FDDI networks.

Defines in net/if_media.h remain in case code copied from ifconfig is in
use elsewere (supporting non-existant media type is harmless).

Reviewed by: kib, jhb
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D15017
0d688befe378e232b49870c2b110fba4b6bbc7fb 23-Feb-2018 asomers <asomers@FreeBSD.org> libifconfig: multiple feature additions

Added the ability to:

* Create virtual interfaces
* Create vlan interfaces
* Get interface fib
* Get interface groups
* Get interface status
* Get nd6 info
* Get media status
* Get additional ifaddr info in a convenient struct
* Get vhids
* Get carp info
* Get lagg and laggport status
* Iterate over all interfaces and ifaddrs

And add more examples, too.

Note that this is a backwards-incompatible change. But that's ok, because it's
a private library.

MFC after: 3 weeks
Sponsored by: Spectra Logic Corp
Differential Revision: https://reviews.freebsd.org/D14463
d1b72149165beb9118efb906d2fdd491f282d5af 21-Feb-2018 asomers <asomers@FreeBSD.org> libifconfig: fix ifconfig_set_metric

Due to a copy/paste error, ifconfig_set_metric actually set the mtu, not the

See Also: https://github.com/Savagedlight/libifconfig/issues/48

MFC after: 3 weeks
Sponsored by: Spectra Logic Corp
ef389b0fa2f74610c8108a9707c73f06877d8b6a 16-Oct-2017 avos <avos@FreeBSD.org> libifconfig: allow to get original interface name via ifconfig_get_orig_name()

Uses the same method as in tools/tools/ifinfo/ifinfo.c
(via net.link.generic sysctl).

Tested with modified wlandebug(8).

Differential Revision: https://reviews.freebsd.org/D12554
a1aacd79ffc5933cfba415dc56b5169885b058c7 11-Jul-2017 bdrewery <bdrewery@FreeBSD.org> DIRDEPS_BUILD: Connect more libraries.

Sponsored by: Dell EMC Isilon
7e6cabd06e6caa6a02eeb86308dc0cb3f27e10da 28-Feb-2017 imp <imp@FreeBSD.org> Renumber copyright clause 4

Renumber cluase 4 to 3, per what everybody else did when BSD granted
them permission to remove clause 3. My insistance on keeping the same
numbering for legal reasons is too pedantic, so give up on that point.

Submitted by: Jan Schaumann <jschauma@stevens.edu>
Pull Request: https://github.com/freebsd/freebsd/pull/96
677ea697610337fef63fd001addfd908d04dad23 11-Sep-2016 allanjude <allanjude@FreeBSD.org> Mark libifconfig as private until the API/ABI is stable

libifconfig is still experimental and under active development.
To avoid making any ABI promises, mark the library as private

Suggested by: bapt
Reviewed by: kp
072565371371d18a83c9ef57aaed59d0c97eec5b 04-Sep-2016 kp <kp@FreeBSD.org> libifconfig: style(9) fixes

Also switch from BSD 3-clause to 2-clause license where possible, and
consolidate duplicate 3-clause license into one.

Submitted by: Marie Helene Kvello-Aune <marieheleneka@gmail.com>
Reviewed by: cem, kp
Differential Revision: https://reviews.freebsd.org/D7764
e5074fa18e1026973d644cd128dcf5a9e4b415fa 02-Sep-2016 kp <kp@FreeBSD.org> Renaming libifc to libifconfig in response to feedback on initial commit of
this library. Sticking to 'libifconfig' (and 'ifconfig_' as function prefix)
should reduce chances of namespace collisions, make it more clear what the
library does, and be more in line with existing libraries.

Submitted by: Marie Helene Kvello-Aune <marieheleneka@gmail.com>
Differential Revision: https://reviews.freebsd.org/D7742
Reviewed by: cem, kp