Commit Graph

91 Commits

Author SHA1 Message Date
itojun 374c623f95 show IPv6 interface address status "deprecated" (preferred lifetime = 0).
RFC2462.  sync with kame.
2000-11-07 14:47:59 +00:00
thorpej 9e992b012b In tunnel_status(), if we have an IPv6 kernel, but a driver doesn't
support IPv6 tunnel endpoint addresses, fall back on the sockaddr
version of the ioctls.
2000-10-02 22:30:40 +00:00
thorpej c77c2baf89 Add vlan(4) support. From Andy Doran <ad@netbsd.org>. 2000-09-27 23:00:24 +00:00
onoe 9efdccbdb5 Add nwkey and -nwkey keywords, to enable/disable WEP,
and to set WEP encryption key for IEEE802.11 wireless network interfaces.
2000-07-21 04:53:03 +00:00
thorpej 5bf452f867 Add a -C flag, to list all available network interface cloners. 2000-07-20 18:42:02 +00:00
enami 1c1b132cda - Fix off-by-one error in previous.
- Fix a typo of ioctl name in warning message.
2000-07-19 06:01:24 +00:00
onoe f989129a77 check the length of nwid argument before copy to avoid SEGV.
pointed out by enami-san
2000-07-19 04:43:34 +00:00
onoe 27f79f7369 cast u_char for ctype (nwid stuff) to fix possible overrun problems. 2000-07-06 08:20:51 +00:00
onoe 197deeeff8 warn instead of print 802.11 nwid with bad length field. 2000-07-06 00:50:49 +00:00
onoe 807a12c8cd change the argument of SIOCS80211NWID and SIOCG80211NWID ioctls from
u_int8_t array to struct ieee80211_nwid to prepend length field.
The length field is necessary because IEEE 802.11 spec doesn't prohibit
even '\0' for SSID.
Though the name and the value of SIOC... macro is unchanged, this change
breaks binary compatibility.  The only affected userland program on the
tree is ifconfig(8).
As Jason suggested on tech-net, it is better than live with problems
since there are no releases for this ioctls yet.
2000-07-05 02:35:53 +00:00
thorpej f70c591ad2 Add `create' and `destroy' commands. 2000-07-02 00:28:00 +00:00
thorpej 1a9289d09a - Add `tunnel' and `deletetunnel' commands, which issue the ioctls
that gifconfig(8) would issue to configure tunnel endpoints.  This
  allows IP tunnel interfaces (`gif' right now, and `gre' later) to
  be configured with ifconfig(8), and via /etc/ifconfig.<interface>.
  Partially taken from similar changes in OpenBSD.
- Const poison the command functions a bit.  We really need to clean
  up the command function interface.
2000-06-30 17:45:11 +00:00
enami 16fcce9bb7 Allocate flagreq on stack. 2000-04-20 02:08:55 +00:00
itojun 4a58ed7b4f use getifaddrs, not SIOCGIFCONF, to avoid alignment constraints.
TODO: maybe it's better to pass struct ifaddrs * to in{,6}_alias.
2000-04-13 07:39:57 +00:00
itojun dbe85fd5ef clarify in_alias() and in_status().
in_status() handles the whole inet address family.  in_alias() handles
printout for single address (for both the primary address or an alias).
it is more consistent with, for example, the way at_status() is used.
2000-04-13 07:16:54 +00:00
enami 2a9be1168a Explicitly pick up ''the first address'' to delete. 2000-04-03 03:54:42 +00:00
onoe 36af21fa48 Set flagreq.ifr_name before issueing SIOCGIFFLAGS for setifflags.
Withoug this change, flagreq was never initialized and ifconfig w/o addr
always failed with ENXIO.
2000-03-20 21:10:03 +00:00
castor 70e0196cb3 Fix PR bin/9629. The global variable ifr was used to save interface
flags even though the media routines tweak it.
2000-03-18 21:10:50 +00:00
enami 5fa4437659 Remove unnecessary continue statement. 2000-03-06 09:00:13 +00:00
enami f7f205fedf Remove now unnecessary assignment. It looks like 4.4lite merge left over. 2000-03-06 08:45:35 +00:00
enami e5f114df26 Don't copy from destination to destination. 2000-03-06 08:08:15 +00:00
thorpej 600e504f64 Per a discussion on gcc-bugs, port-alpha/9494 is not a compiler bug, but
rather a bug in the code (which is violating the C standard by casting
an unaligned pointer to a pointer with more strict alignment constraints).

Fix the code to not do such things.  Fixes port-alpha/9494.
2000-03-06 01:06:17 +00:00
enami eb6c30723e Salvage the better comment appeared in rev 1.51 but gone in 1.53. 2000-03-01 03:21:56 +00:00
itojun bd3400c592 more fix to SIOCGIFCONF alignment. 2000-02-18 08:14:26 +00:00
mycroft 3d237fafa8 Fix a buglet that caused media-specific options to *always* be printed, even if
they were not set.
2000-01-25 06:11:25 +00:00
thorpej 409e9f1b38 Fix a logic buglet in status printing code. 2000-01-25 02:16:57 +00:00
thorpej efe1032de0 - Print 802.11 status (i.e. network ID) after mtu, etc. but before
protcol addresses.
- When searching for status bits, use the currently selected media type,
  not the currently active media type.
2000-01-25 01:46:57 +00:00
thorpej 98ac9f3fdb Update copyright. 2000-01-25 01:03:21 +00:00
thorpej 4e10c0202f Make display of media status information (e.g. carrier, etc.) table-driven
and easily extensible (by merely adding to the tables in ifmedia.h).
2000-01-25 00:59:39 +00:00
chopps 2377e11b8d allow setting (and reporting) nwid for ieee 802.11 devices. 2000-01-24 23:24:16 +00:00
thorpej 9e4fad9efa Fix a bug in get_media_options() which wasn't caught with global options;
make sure we only return option bits.
2000-01-24 22:31:27 +00:00
joda 4aafeffb6f implement netmask slash notation for IP and IPv6 addresses 2000-01-12 10:29:35 +00:00
itojun 5f036cce1d bring in KAME scopeid hack. always show scopeid if it is scoped.
sync with latest KAME.
1999-12-13 15:24:45 +00:00
itojun 76a67357f0 fix alignment problem of SIOCGIFCONF, on 64bit arch. 1999-07-29 15:40:48 +00:00
thorpej c483de17ca Make the previous actually compile. 1999-07-26 19:38:36 +00:00
darrenr 0717bdfdf2 cleanup error message 1999-07-26 12:00:47 +00:00
darrenr 870447b902 don't allow destination addresses to be set for non-Point-to-point interfaces 1999-07-26 11:56:55 +00:00
sommerfeld 8bfcc5ad34 Add a new -s option to make it easier to test the link-level status
(i.e., 10baseT carrier/no carrier) of an interface from scripts

ifconfig -s <interface> will exit with a false status if the interface
reports its unconnected.

-s also works in conjunction with -l and -a, filtering out interfaces
which are reporting down.

Also, add -b (which shows only broadcast interfaces with -l and -a).

I find these options useful in network autoconfig scripts for mobile
systems.
1999-07-03 17:31:15 +00:00
itojun 25eb444e29 make ifconfig IPv6-ready.
TODO: update manpage for new options.
1999-07-01 13:19:20 +00:00
thorpej e9d0bd756d Fix a slight braino in last. 1999-05-18 18:01:08 +00:00
thorpej 52971adece Don't force `inet' on status display; get all address families that have
configured addresses.  From Jun-ichiro itojun Hagino, PR #7593.
1999-05-17 16:00:05 +00:00
chopps 20a608fe88 revert the previous changes that removed special cased ioctls for ISO
stuff.
1999-04-01 08:12:23 +00:00
christos 7852090868 Add support for displaying interface alias information. Based on PR/6109 by
Phil Nelson.
1998-09-06 17:51:32 +00:00
thorpej e1a1084860 Oops, add the "instance" command to the usage info. 1998-08-08 22:40:57 +00:00
thorpej ecbe14b11c Allow the user to explicitly set the media instance. 1998-08-08 22:33:17 +00:00
thorpej 2e7d9319e9 Hm, actions might not always be deferred; rename appropriately. 1998-08-08 18:14:20 +00:00
thorpej 051e24ecad Completely rewrite the engine that sets media and media options. Previous
code would hit the interface multiple times.  Now, all media and media
options are gathered and processed at once, hitting the interface only
once (except to grab the currently selected media exactly once; there is
no way to avoid that).
1998-08-08 01:30:18 +00:00
thorpej 1549ffa563 Implement a suggestion from Wolfgang Solfrank on the "supported media"
display.  The display now looks like this:

bishop:thorpej 35$ obj.alpha/ifconfig -m fxp0
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        media: Ethernet autoselect (100baseTX full-duplex)
        status: active
        supported Ethernet media:
                media autoselect
                media 100baseTX mediaopt full-duplex
                media 100baseTX
                media 10baseT mediaopt full-duplex
                media 10baseT
                media 100baseTX mediaopt loopback
        inet 129.99.50.41 netmask 0xffffff00 broadcast 129.99.50.255
bishop:thorpej 36$

The intent here is to allow cut'n'pasting of the output to a command
line, or allow easier automatic extraction from scripts, etc.

XXX Still at issue is what to do about non-0 media instances.
1998-08-06 19:22:00 +00:00
thorpej 3f0296f8ce Print the media instance if it's not zero, a reasonable compromise such
that no one will have to see those ugly instance numbers if they have
an interface with only one PHY (most of them out there).
1998-08-06 03:47:28 +00:00
thorpej 85fd419492 Completely rewrite the way media descriptions are represented. The same
data structure is used, but a much saner matching mechanism is used, one
which allows greater ease in adding new types.

Also, rewrite the way media words are displayed.  The status display now
looks like this:

bishop:thorpej 137$ ifconfig -m fxp0
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        media: Ethernet autoselect (10baseT)
        status: active
        supported media:
                Ethernet autoselect
                Ethernet 100baseTX <full-duplex>
                Ethernet 100baseTX
                Ethernet 10baseT <full-duplex>
                Ethernet 10baseT
                Ethernet 100baseTX <loopback>
        inet 129.99.50.41 netmask 0xffffff00 broadcast 129.99.50.255
bishop:thorpej 138$

This makes it more clear which media type (e.g. Ethernet) is currently
in-use, handy for devices such as the TI ThunderLAN which can also have
both Ethernet and Token Ring PHYs attached.
1998-08-06 02:24:40 +00:00