Home | History | Annotate | Download | only in ifconfig
History log of /src/sbin/ifconfig/af_link.c
RevisionDateAuthorComments
 1.8  16-Aug-2019  msaitoh Whitespace fix.
 1.7  19-Jan-2014  matt branches: 1.7.26;
Rename link to link_pkw to avoid shadowing the link syscall.
 1.6  21-Apr-2009  dyoung branches: 1.6.6; 1.6.12;
To make sure that we always print the active link-layer address in the
'address: ' field, don't treat the first address as the active address,
but search the link-layer addresses for the ones flagged IFLR_ACTIVE,
and print those. Extract a subroutine, print_link_addresses(), for
printing link-layer addresses.
 1.5  21-Apr-2009  dyoung Use getnameinfo(3) to render a human-readable link-layer address in the
'address: ' line, just as we do in the 'link xx:xx:...:xx' line.
 1.4  21-Apr-2009  dyoung Fix indentation: change spaces to tabs.
 1.3  02-Jul-2008  dyoung branches: 1.3.2; 1.3.4; 1.3.8;
Let us add/remove features from ifconfig, such as support for
various address families (inet, inet6, iso, atalk) and protocols
(802.11, 802.3ad, CARP), simply by trimming the list of sources in
the Makefile. This helps one customize ifconfig for an embedded
device or for install media, and it eliminates a lot of grotty
#ifdef'age. Now, the ifconfig syntax and semantics are finalized
at run-time using the constructor routines in each address-family/protocol
module.

(In principle, ifconfig could load virtually all of its syntax from
shared objects.)

Extract a lot of common code into subroutines, in order to shrink
the ifconfig binary a bit. Make all of the address families share
code for address addition/replacement/removal, and delete "legacy"
code for manipulating addresses. That may have broken atalk and
iso, despite my best efforts.

Extract an include file, Makefile.inc, containing the make-fu that
both ifconfig and x_ifconfig share.

Sprinkle static. Change some int's to bool's. Constify.

Add RCS Ids to carp.c and env.c. Move media code to a new file,
media.c. Delete several unneeded header files.

Set, reset, and display the IEEE 802.11 attribute, 'dot11RTSThreshold'.

Bug fix: do not require both a interface address and a destination
address for point-to-point interfaces, but accept a interface
address by itself.
 1.2  13-May-2008  dyoung branches: 1.2.2; 1.2.4; 1.2.6;
Use an AF_LINK socket to add/delete/get link-layer addresses.
 1.1  12-May-2008  dyoung Per discussion at
<http://mail-index.netbsd.org/tech-net/2008/04/08/msg000371.html>,
let us add, delete, and activate link-layer addresses with ifconfig:

# ifconfig sip0 link 02:00:00:00:00:01 [add address]
# ifconfig sip0 link 02:00:00:00:00:02 [add address]
# ifconfig sip0 link 02:00:00:00:00:02 active [activate address]
# ifconfig sip0 link 02:00:00:00:00:01 delete [remove address]
 1.2.6.3  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.2.6.2  23-Jun-2008  wrstuden Add files to branch that were added on -current.

After this, all that's left of update is to merge some changes
that had conflicts.
 1.2.6.1  13-May-2008  wrstuden file af_link.c was added on branch wrstuden-revivesa on 2008-06-23 05:02:12 +0000
 1.2.4.3  28-Sep-2008  mjf Sync with HEAD.
 1.2.4.2  02-Jun-2008  mjf Sync with HEAD.
 1.2.4.1  13-May-2008  mjf file af_link.c was added on branch mjf-devfs2 on 2008-06-02 13:21:22 +0000
 1.2.2.2  18-May-2008  yamt sync with head.
 1.2.2.1  13-May-2008  yamt file af_link.c was added on branch yamt-pf42 on 2008-05-18 12:30:52 +0000
 1.3.8.1  21-Apr-2010  matt sync to netbsd-5
 1.3.4.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.3.2.1  03-May-2009  bouyer Pull up following revision(s) (requested by dyoung in ticket #730):
sbin/ifconfig/af_link.c: revisions 1.4 - 1.6
sbin/ifconfig/util.h: revision 1.7
sbin/ifconfig/util.c: revisions 1.10, 1.11
lib/libc/net/getifaddrs.c: revision 1.12
lib/libc/net/getifaddrs.3: revision 1.10
sbin/ifconfig/ifconfig.c: revisions 1.216 - 1.218
Fix indentation: change spaces to tabs.
Use getnameinfo(3) to render a human-readable link-layer address in the
'address: ' line, just as we do in the 'link xx:xx:...:xx' line.
There's no use casting a socket address to sockaddr_dl, only to cast it
back to sockaddr, so don't do it.
Cosmetic: add some whitespace for my ease of reading.
To make sure that we always print the active link-layer address in the
'address: ' field, don't treat the first address as the active address,
but search the link-layer addresses for the ones flagged IFLR_ACTIVE,
and print those. Extract a subroutine, print_link_addresses(), for
printing link-layer addresses.
For non-AF_LINK ifaddrs, ifa_data is NULL. AFAICT, this has always been
so. Say so in the documentation.
Bring getifaddrs(3) behavior in line with the documentation: the
ifa_data member of every AF_LINK struct ifaddrs points at the
corresponding struct if_data. In ifconfig(8), do not try to suppress
duplicate AF_LINK ifaddrs by checking for a NULL ifa_data.
Don't copy out two AF_LINK struct ifaddrs for each active link-layer
address. getifaddrs(3) used to copy out one ifaddrs for the kernel's
RTM_IFINFO message, and one more for the kernel's RTM_NEWADDR message.
I suppress the first duplicate with a highly conservative change that
wastes a little bit of ifaddrs storage. The storage is not leaked.
 1.6.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.6.6.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.26.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411

RSS XML Feed