Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-06 Thread Bastian Bittorf
* Isaac Dunham idun...@lavabit.com [06.04.2013 08:22]:
 It appears that someone just split out the help for each subcommand.
 But you had better include manpages for each of the ones you want in your 
 total...which is at least 
 ip ip-address ip-route ip-neighbor ip-link

bastian@box:~$ for F in ifconfig route arp netstat; do man $F; done | wc -c
35308
bastian@box:~$ for F in ip-address ip-route ip-neighbour ip-link; do man $F; 
done | wc -c
35337

but really, i dont see the point to argue about lines or bytes, when ip
can do a lot more and please consider, that all 'ip'-commands share the same
syntax so if you know one, you can also work with another (not possible
with net-tools).

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Bastian Bittorf
* Rob Landley r...@landley.net [05.04.2013 09:00]:
 bastian@box:~$ man ip | wc -l
 150
 
 bastian@box:~$ lsb_release  -a
 No LSB modules are available.
 Distributor ID:  Ubuntu
 Description: Ubuntu Raring Ringtail (development branch)
 Release: 13.04
 Codename:raring
 
 You're aware that this man page is available online, right?
 
   http://manpages.ubuntu.com/manpages/precise/en/man8/ip.8.html

strange. here (150 lines, local man-page of ubuntu 13.04):

IP(8)
Linux
IP(8)



NAME
   ip - show / manipulate routing, devices, policy routing and
tunnels

SYNOPSIS
   ip [ OPTIONS ] OBJECT { COMMAND | help }


   OBJECT := { link | addr | addrlabel | route | rule | neigh |
ntable | tunnel | tuntap | maddr | mroute | mrule | monitor | xfrm |
netns | l2tp | tcp_metrics }


   OPTIONS := { -V[ersion] | -s[tatistics] | -r[esolve] | -f[amily]
{ inet | inet6 | ipx | dnet | link } | -o[neline] }


OPTIONS
   -V, -Version
  print the version of the ip utility and exit.


   -s, -stats, -statistics
  output more information.  If the option appears twice or
more, the amount of information increases.  As a rule, the information
is statistics or some time values.


   -l, -loops
  Specify maximum number of loops the 'ip addr flush' logic
will attempt before giving up.  The default is 10.  Zero (0) means loop
until all addresses are removed.


   -f, -family
  followed by protocol family identifier: inet,
inet6,bridge,ipx,dnet or link, enforce the protocol family to use.  If
the option is not present, the protocol family is guessed from other
arguments.  If the rest of the command line does not give enough
information to guess the family, ip falls back to the default one,
usually inet or any.  link is a special family identifier meaning that
no networking protocol is involved.


   -4 shortcut for -family inet.


   -6 shortcut for -family inet6.


   -B shortcut for -family bridge.


   -0 shortcut for -family link.


   -o, -oneline
  output each record on a single line, replacing line feeds
with the '\' character. This is convenient when you want to count
records with wc(1) or to grep(1) the output.


   -r, -resolve
  use the system's name resolver to print DNS names instead
of host addresses.


IP - COMMAND SYNTAX
   OBJECT
   address
  - protocol (IP or IPv6) address on a device.


   addrlabel
  - label configuration for protocol address selection.


   l2tp   - tunnel ethernet over IP (L2TPv3).


   link   - network device.


   maddress
  - multicast address.


   monitor
  - watch for netlink messages.


   mroute - multicast routing cache entry.


   mrule  - rule in multicast routing policy database.


   neighbour
  - manage ARP or NDISC cache entries.


   netns  - manage network namespaces.


   ntable - manage the neighbor cache's operation.


   route  - routing table entry.


   rule   - rule in routing policy database.


   tcp_metrics/tcpmetrics
  - manage TCP Metrics


   tunnel - tunnel over IP.


   tuntap - manage TUN/TAP devices.


   xfrm   - manage IPSec policies.


   The names of all objects may be written in full or abbreviated
form, f.e.  address is abbreviated as addr or just a.


   COMMAND
   Specifies the action to perform on the object.  The set of
possible actions depends on the object type.  As a rule, it is possible
to add, delete and show (or list ) objects, but some objects do not
allow all of these operations or have some additional commands.  The
help command is available for all objects.  It prints out a list of
available commands and argument syntax conventions.

   If no command is given, some default command is assumed.  Usually
it is list or, if the objects of this class cannot be listed, help.


HISTORY
   ip was written by Alexey N. Kuznetsov and added in Linux 2.2.

SEE ALSO
   ip-address(8), ip-addrlabel(8), ip-l2tp(8), ip-link(8),
ip-maddress(8), ip-monitor(8), ip-mroute(8), ip-neighbour(8),
ip-netns(8), ip-ntable(8), ip-route(8), ip-rule(8), ip-tcp_metrics(8),
ip-tunnel(8), ip-xfrm(8)
   IP Command reference ip-cref.ps

REPORTING BUGS
   Report bug to the Network Developers mailing list
net...@vger.kernel.org where the development and maintenance is
primarily done.  You do not have to be subscribed to the list to send a
message there.


AUTHOR
   Original Manpage by Michail Litvak m...@owl.openwall.com



iproute2
20 Dec 2011 


___
Toybox mailing list
Toybox@lists.landley.net

Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Bastian Bittorf
* Rob Landley r...@landley.net [05.04.2013 09:00]:
 there is not plugin-arch, just one command which simply
 manipulates the kernels netlink-interface.
 
 A very large, very complicated command in the mold of systemd.

whats interesting to me:

the busybox-ip with all it's features (a lot more than
ifconfig/route/arp/netstat can deliver) has nearly the same size.

bastian@box:~/busybox-1.21.0$ make allnoconfig
# and activate ifconfig/arp/netstat/route
bastian@box:~/busybox-1.21.0$ ls -l busybox*
-rwxr-xr-x 1 bastian bastian  37048 Apr  5 09:18 busybox
-rwxr-xr-x 1 bastian bastian  51939 Apr  5 09:18 busybox_unstripped
-rw-r--r-- 1 bastian bastian 106920 Apr  5 09:18 busybox_unstripped.map
-rw-r--r-- 1 bastian bastian  15580 Apr  5 09:18 busybox_unstripped.out

bastian@box:~/busybox-1.21.0$ make allnoconfig
# and activate ip
bastian@gcc20:~/busybox/busybox-1.21.0$ ls -l busybox*
-rwxr-xr-x 1 bastian bastian  42696 Apr  5 09:21 busybox
-rwxr-xr-x 1 bastian bastian  56911 Apr  5 09:21 busybox_unstripped
-rw-r--r-- 1 bastian bastian 105150 Apr  5 09:21 busybox_unstripped.map
-rw-r--r-- 1 bastian bastian  15565 Apr  5 09:21 busybox_unstripped.out

and again from the design-view: it's makes no sense to split up one tool into
different ones, when you are doing the same thing (manipulating network). show
it in the syntax is enough:

ip link ...
ip address ...
ip route ...
ip rule ...
ip neigh ...
ip tunnel ...

(and more, always with the same syntax add/delete/show ...)

 never quite understood.
 
  if you are
  really using 'ifconfig', you should better switch now. the
  pain will be much worse if you wait again 2 years...
 
  In what way? I vaguely recall first hearing about ip back under
 Red
  Hat 9, which shipped in 2003. So I've been successfully largely
  ignoring it for 10 years now. What's queued up to change in the near
  future?
 
 i will. there is no work done anymore on ifconfig, even the manpage
 says to switch.
 
 You keep saying that, but like so many other things you've said you
 don't back it up, and what I can see disagrees with what you say.
 
 Giving you the benefit of the doubt of using the version of ubuntu
 you're using (which is newer than the LTS I'm using), here is the man
 page for ifconfig:
 
   http://manpages.ubuntu.com/manpages/precise/en/man8/ifconfig.8.html
 
 Please point me to the text you were referring to. I can't find it.

debian has it not 8-(
http://linux.die.net/man/8/ifconfig

 Note: if you mean _ip_ command's man page says that ifconfig is
 obsolete, this is exactly as convincing to me as Microsoft saying
 Linux is obsolete. You'll notice I'm not claiming that busybox is

no thats not the same. it would be the same, when microsoft says:
IE is obsolete, use firefox.

the network people say: ifconfig is obsolete, use ip.

 there is no standard, just reallive (like the mount or init-command):
 every developer in the network world has realized, that doing the
 'ifconfg/route/arp/netstat'-thingy was a dead-end-street.
 
 Hmmm, it's not http://en.wikipedia.org/wiki/Argumentum_ad_populum
 when they're invisible, I think it's
 http://barb.velvet.com/humor/lurkers.html except you're claiming
 _every_ eveloper thinks the same way as you do. That there are none
 who don't.

ask somebody you thrust who does networking about his opinion about that.

 Look: fconfig and friends are not coming out. Android toolbox has
 ifconfig, thus toybox needs ifconfig. The question is whether or not
 it needs ip on top of that, and I must admit you're not doing the
 best job of advocacy I've seen recently.

8-) so shame on me, i did me best. one question left:
ifconfig/arp/route/netstat in androids toolbox: are there other
programs depend on this, or is it just for the devs/debug?

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Bastian Bittorf
* Rob Landley r...@landley.net [05.04.2013 09:00]:
 this is wrong:
 lo:0 is no interface, so why does it show an extra interface?
 
 I note that technically lo isn't an ethernet interface in the first
 place, so you could make the same argument there...

ethernet or SLIP or lo doesnt matter. lo:0 belongs to lo and
is not an separate interface. but your are right, this is only
a small issue...

 
  - more than one routing table (policy routing)
 
  Never tried, but I've done some fun stuff with iptables and some
 
 so, because you never tried - it's not needed? 8-)
 
 No, I'm saying I'm scratching my own itch and you complaining about
 ifconfig does not trump other people submitting code to me and
 complaining in email that they would be very confused if it was
 removed because it's part of their patched version of toybox that
 they're already using in a product.

i doubt somebody is using toybox in production today. thats the reason
that i switched in: it's not too late for making it right. (when
ifconfig is fully included, than we need to maintain both:
ifconfig/arp/netstat/route and 'ip')

 won't use code from net-tools. Your complaints about horrible
 infrastructure are mind-bogglingly irrelevant, it's gonna be a fresh
 implementation. (At least when I get done with it...)

thats an important point and i agree.
but if you/somebody creates something fresh, why warm-up old soup?

 the idea behind it is:
 dont encourage people to use such old, incomplete, inconsistent tools.
 
 1) cat's older
 2) this should (eventually) be a fresh implementation
 3) we can add stuff until it's not incomplete
 4) you've never explained inconsistent, just asserted it. (No, I'm
 not interested in hearing it at the moment. I'm experiencing topic
 exhaustion.)

i did. it's inconsistent because you have different commands with
different sytax / switches which are doing the same thing:
manipulating network - nobody would implement two different
cat-implementations for 'files' and 'devices'. it's the same, because
it's the same kernel-interface.

 so why not doing it right? is there any distro
 not shipping 'ip' (iproutw2)?
 
 People made this argument for udev. I wrote mdev. This is the same
 argument people are making right now for systemd. I'm not doing
 that one.

true and valid argument.

 
  - you can rename interfaces
 
  man nameif
 
  - multicast working
 
  I'm fairly certain multicast was around in the 90's. I remember
  people bemoaning its failure even then. (How is the mbone doing?
  Netflix streaming making extensive use of that, then? Skype?
  Youtube?)
 
 multicast makes more sense in the ipv6 world
 
 No it doesn't. I was working for a set top box manufacturer in 2001,

a lot of things have changed in IPv6 since then. i understand you
arguments about this (and read the links). lets see in 5 years if
somebody is using it, or if it silently dies...hard to say.

 (I care more about quality of the code than rapidly increasing the
 feature set. All these commands already exist elsewhere, toybox needs

thats the most important point and also the thing why i'am in.

i think from architecture view, its cleaner to implement 'ip' than
fighting with all the syntax and output-issues of ifconfig.

so the question again: is ifconfig in androids-toolbox a dependency
for any other program in android?

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Bastian Bittorf
* Rob Landley r...@landley.net [05.04.2013 09:00]:
 http://www.linuxfoundation.org/collaborate/workgroups/networking/net-tools
 
 So they don't include network configuration in LSB, and half of LSB
 is reverting posix-2008 to posix-2001, and they've gone through _5_
 not-android embedded distributions (Maemo, Moblin, Meego, Tizen,
 Yocto), and they specified RPM as part of LSB which pissed off Ubuntu
 to no end...

this is what it want to say, because somebody use LSB as an argument
for 'ifconfig' against 'ip' ...

 Arch, meanwhile, declared static linking to be obsolete:
 
   http://comments.gmane.org/gmane.linux.arch.devel/19143

read again. somebody had an idea, but there are enough reasons
(others complained) not to do so.

 is always the same with people which are used to CVS and very
 annoyed if somebody reveals that there is now git/mercurial.
 
 I completely reject that analogy. I've used cvs, svn, git, and
 mercurial. I've also used ifconfig and ip. The cases are nothing like
 each other.

so the question: would you ever use CVS/SVN again if you have the choice?
there are still people stamping on the ground saying CVS is not obsolete.
 
 You have an irrational hatred of ifconfig, but haven't said what's
 wrong with it. Just taken it for granted that everybody knows that

i said, but seems all my arguments seem invalid. (till now, nobody
jumped in to support my opinion)

 ip is infinitely superior. It's like Jorg Schilling and Solaris vs
 Linux, or Glen Beck and gold vs the dollar.
 
 nobody should be annoyed:
 
 You. You are annoyed. This entire thread is you being annoyed. That's

you misunderstood me. i'am not annoyed, just educational.

 i just encourage you to cut off old braids.
 
 And switch to plan 9?

to 'ip' rob, to 'ip'...

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread David Seikel
On Fri, 5 Apr 2013 10:02:40 +0200 Bastian Bittorf
bitt...@bluebottle.com wrote:

 * Rob Landley r...@landley.net [05.04.2013 09:00]:
  this is wrong:
  lo:0 is no interface, so why does it show an extra interface?
  
  I note that technically lo isn't an ethernet interface in the
  first place, so you could make the same argument there...
 
 ethernet or SLIP or lo doesnt matter. lo:0 belongs to lo and
 is not an separate interface. but your are right, this is only
 a small issue...
 
  
   - more than one routing table (policy routing)
  
   Never tried, but I've done some fun stuff with iptables and some
  
  so, because you never tried - it's not needed? 8-)
  
  No, I'm saying I'm scratching my own itch and you complaining about
  ifconfig does not trump other people submitting code to me and
  complaining in email that they would be very confused if it was
  removed because it's part of their patched version of toybox that
  they're already using in a product.
 
 i doubt somebody is using toybox in production today. thats the reason
 that i switched in: it's not too late for making it right. (when
 ifconfig is fully included, than we need to maintain both:
 ifconfig/arp/netstat/route and 'ip')
 
  won't use code from net-tools. Your complaints about horrible
  infrastructure are mind-bogglingly irrelevant, it's gonna be a fresh
  implementation. (At least when I get done with it...)
 
 thats an important point and i agree.
 but if you/somebody creates something fresh, why warm-up old soup?
 
  the idea behind it is:
  dont encourage people to use such old, incomplete, inconsistent
  tools.
  
  1) cat's older
  2) this should (eventually) be a fresh implementation
  3) we can add stuff until it's not incomplete
  4) you've never explained inconsistent, just asserted it. (No, I'm
  not interested in hearing it at the moment. I'm experiencing topic
  exhaustion.)
 
 i did. it's inconsistent because you have different commands with
 different sytax / switches which are doing the same thing:
 manipulating network - nobody would implement two different
 cat-implementations for 'files' and 'devices'. it's the same, because
 it's the same kernel-interface.
 
  so why not doing it right? is there any distro
  not shipping 'ip' (iproutw2)?
  
  People made this argument for udev. I wrote mdev. This is the same
  argument people are making right now for systemd. I'm not doing
  that one.
 
 true and valid argument.
 
  
   - you can rename interfaces
  
   man nameif
  
   - multicast working
  
   I'm fairly certain multicast was around in the 90's. I remember
   people bemoaning its failure even then. (How is the mbone doing?
   Netflix streaming making extensive use of that, then? Skype?
   Youtube?)
  
  multicast makes more sense in the ipv6 world
  
  No it doesn't. I was working for a set top box manufacturer in 2001,
 
 a lot of things have changed in IPv6 since then. i understand you
 arguments about this (and read the links). lets see in 5 years if
 somebody is using it, or if it silently dies...hard to say.
 
  (I care more about quality of the code than rapidly increasing the
  feature set. All these commands already exist elsewhere, toybox
  needs
 
 thats the most important point and also the thing why i'am in.
 
 i think from architecture view, its cleaner to implement 'ip' than
 fighting with all the syntax and output-issues of ifconfig.
 
 so the question again: is ifconfig in androids-toolbox a dependency
 for any other program in android?

Instead of continually arguing your point, it would be much better if
you put your time into writing code.  There really is no point going on
and on and on and on and on about the ip command if there's no code.
Can't put the ip command into toybox if there's no code.  So far you
have not convinced anyone, which means no one else is going to write
it.  In fact I can see that others are getting annoyed at you, that's
no way to convince people either, quite the opposite.  Right now it's
best if you shut up and show us the code.

-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.


signature.asc
Description: PGP signature
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Bastian Bittorf
* Rob Landley r...@landley.net [05.04.2013 09:00]:
 What exactly is the _problem_? The existing ifconfig works fine. This

and that is the dangerous thing about it:

it's working enough, so ip will be always missing (because there
is so little Leidensdruck: 'psychological strain')

 But this Oh no, the code is old! Code RUSTS! I don't get it. Linux

the argument was:
the code/idea/implementation is old AND incomplete AND inconsistent.

only old is not a problem but all 3 together.

 2.4 doesn't support modern hardware, containers, tickless operation,
 sucks at threading and SMP. But if it had decent arm support I expect
 android would have been based on it because it ran in a quarter the
 memory the current one needs.

adventurous hypothesis. for a modern network device you want a modern
network stack which has 2.4 not. for a modern device with multitasking
you want a modern scheduler and a modern VM which has 2.4 not. for a
modern device with many interfaces (HDMI, USB, wifi) you want support
for the attachable devices which 2.4 has not. in fact it does not matter
if you have 1 gig or 1.008 gig of memory...

lets stop the discussion here, it's only timeconsuming and the
opinions are deadlocked somehow. lets see how it performs and maybe
in autumn i will jump in for 'ip'.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-05 Thread Isaac Dunham
On Fri, 5 Apr 2013 09:08:56 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:

  You're aware that this man page is available online, right?
  
http://manpages.ubuntu.com/manpages/precise/en/man8/ip.8.html
 
 strange. here (150 lines, local man-page of ubuntu 13.04):
 
 IP(8)
 Linux
 IP(8)
 
 
 
 NAME
(snip 100+ lines of manpage) 
 SEE ALSO
ip-address(8), ip-addrlabel(8), ip-l2tp(8), ip-link(8),
 ip-maddress(8), ip-monitor(8), ip-mroute(8), ip-neighbour(8),
 ip-netns(8), ip-ntable(8), ip-route(8), ip-rule(8), ip-tcp_metrics(8),
 ip-tunnel(8), ip-xfrm(8)
It appears that someone just split out the help for each subcommand.
But you had better include manpages for each of the ones you want in your 
total...which is at least 
ip ip-address ip-route ip-neighbor ip-link
and probably more.

-- 
Isaac Dunham idun...@lavabit.com

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Rob Landley r...@landley.net [04.04.2013 10:03]:
 $ man ip | wc -l
 1853
 $ man ifconfig | wc -l
 185

here:
bastian@box:~$ for F in ifconfig arp netstat route; do man $F; done | wc -l
756

bastian@box:~$ man ip | wc -l
150

bastian@box:~$ lsb_release  -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:Ubuntu Raring Ringtail (development branch)
Release:13.04
Codename:   raring

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Rob Landley r...@landley.net [04.04.2013 10:03]:
 I've used ip a couple times. I mostly use ifconfig, because it's
 there and I see no upside in using ip. I also use iwlist and

iwlist is also dead since a long time, the successor is 'iw'
which shares/imitates to 'ip' syntax

 ifenslave and tunctl and various other tools. Does ip have some kind
 of plugin architecture to suck all that into one big monolithic
 command?

there is not plugin-arch, just one command which simply
manipulates the kernels netlink-interface.

 if you are
 really using 'ifconfig', you should better switch now. the
 pain will be much worse if you wait again 2 years...
 
 In what way? I vaguely recall first hearing about ip back under Red
 Hat 9, which shipped in 2003. So I've been successfully largely
 ignoring it for 10 years now. What's queued up to change in the near
 future?

i will. there is no work done anymore on ifconfig, even the manpage
says to switch.

 Is there a standard on this? I'm happy to implement a standard...

there is no standard, just reallive (like the mount or init-command):
every developer in the network world has realized, that doing the
'ifconfg/route/arp/netstat'-thingy was a dead-end-street.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread David Seikel
On Thu, 4 Apr 2013 10:17:17 +0200 Bastian Bittorf
bitt...@bluebottle.com wrote:

 i will. there is no work done anymore on ifconfig, even the manpage
 says to switch.

My copy of the ifconfig man page does not mention the ip command, and
certainly does not say to switch.

On Wed, 03 Apr 2013 20:03:46 -0500 Rob Landley r...@landley.net wrote:

 Right, let's get back to the current 1.0 goal of toybox, which is  
 making android self-hosting, which involves replacing android
 toolbox, which has ifconfig but does not have ip. We _cannot_ replace
 toolbox without implementing ifconfig. We can do so without
 implementing ip.

THAT's the real reason why toybox should keep ifconfig and friends.
pre existing systems we want toybox to be a drop in replacement for
already assume the existence of ifconfig.  If a power user thinks the
ip command is better, they can install that to.  The two can live quite
happily with each other.  If something we want to be a drop in
replacement for requires the ip command, we can do both with some
shared code.

Toybox already has an ifconfig implementation.  If you want an ip
implementation, submit one.  If you don't want ifconfig in toybox,
disable it when you build it.  The rest of the arguments seem pretty
pointless and annoying.

-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.


signature.asc
Description: PGP signature
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Rob Landley r...@landley.net [04.04.2013 10:03]:
 I agree ipv6 is coming. I don't understand why you think ifconfig
 can't trivially support ipv6. The one in android toolbox does. (Note:

you are right, some people have hacked ipv6-support into ifconfig.
whats missing (because it would break the output for parsing), some
informations about ipv6 internals. (which 'ip' shows)

 android toolbox has ifconfig. does not have ip. Maybe this has
 changed since I took a snapshot in february...)

i'am shocked about that, but ofcourse:
no gpl in userspace, so they took a bsd-ifconfig. iproute2 is gpl...

i'am wondering how they test an internet-connection
with different interfaces (e.g. wifi and 3g) without
having multiple routing-tables:

it simply does not work - there is no test at all!
well done android 8-(

if android has ifconfig (and needs ifconfig), than all
the discussion is unneeded: we need it too - or is it
only for developers, so apps dont rely on it?

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Rob Landley r...@landley.net [04.04.2013 10:03]:
 Yup, just pulled up my old Red Hat 9 image under qemu and did
 ifconfig eth0 10.0.2.15/31 and it worked fine.

you are right, shame on me.

 
 Heh, it's still up at http://busybox.net/downloads/qemu/ if you'd
 like to try that yourself.
 
 - aliases + multiple IP's on one interface
 
 I did aliases with ifconfig in 2002, there's a colon number syntax or
 some such...

ip address add 9.8.7.6/32 dev lo label lo:commentXY
are labels supported via ifconfig?

 - correct output of aliases
 
 Define correct.
 
 sudo ifconfig lo:0 10.255.255.1/31
 ifconfig
 
 loLink encap:Local Loopback
   inet addr:127.0.0.1  Mask:255.0.0.0
   inet6 addr: ::1/128 Scope:Host
   UP LOOPBACK RUNNING  MTU:16436  Metric:1
   RX packets:5708561 errors:0 dropped:0 overruns:0 frame:0
   TX packets:5708561 errors:0 dropped:0 overruns:0 carrier:0
   collisions:0 txqueuelen:0
   RX bytes:3736486922 (3.7 GB)  TX bytes:3736486922 (3.7 GB)
 
 lo:0  Link encap:Local Loopback
   inet addr:10.255.255.1  Mask:255.255.255.254
   UP LOOPBACK RUNNING  MTU:16436  Metric:1

this is wrong:
lo:0 is no interface, so why does it show an extra interface?

 - more than one routing table (policy routing)
 
 Never tried, but I've done some fun stuff with iptables and some

so, because you never tried - it's not needed? 8-)

 other fun stuff with containers. http://landley.net/lxc/

 - preparing traffic control
 
 man tc

tc belongs to 'ip'.
so how to you set up an 'ip rule' with ifconfig. 8-)

 - better parseable output (if needed, e.g. ip -oneline link show tun0)
 
 Look, I'm not saying that providing an alternate interface to the
 same functionality for people who are used to and expect the other
 interface is a bad thing, especially if it's easy to do. But that
 cuts _against_ your complaints about ifconfig. You're claiming
 ifconfig is an incapable relic, and so far not showing things that
 actually require ip. The point of this thread is you said that we
 should NOT implement ifconfig and friends.

the idea behind it is:
dont encourage people to use such old, incomplete, inconsistent tools.

especially if you make something new, this is the chance to enforce
people to use/learn the new interface. sooner or later they need to
learn ip anyway, so why not doing it right? is there any distro
not shipping 'ip' (iproutw2)?

 - you can rename interfaces
 
 man nameif
 
 - multicast working
 
 I'm fairly certain multicast was around in the 90's. I remember
 people bemoaning its failure even then. (How is the mbone doing?
 Netflix streaming making extensive use of that, then? Skype?
 Youtube?)

multicast makes more sense in the ipv6 world

 Look, I asked What can you do with ip that you can't do with
 ifconfig/route? You didn't come up with anything actually
 _requiring_ ip yet, that I've noticed.

you negated a lot of arguments, but there are some left.
but the killer-arg is the existing ifconfig in androids toolbox,
so ifconfig is needed, ip is optional 8-(

hopefully the person which implements 'ifconfig' will also do:

arp
ipmaddr
iptunnel
route
nameif
netstat

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Ilya Kuzmich
On Thu, Apr 04, 2013 at 10:09:39AM +0200, Bastian Bittorf wrote:

 bastian@box:~$ man ip | wc -l
 150
zs@silver:~$ for F in ip ip-address ip-addrlabel ip-link ip-maddress \
ip-monitor ip-mroute ip-neighbour ip-netns ip-ntable ip-route ip-rule \
ip-tunnel ip-xfrm; do man $F; done | wc -l
1956
zs@silver:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:Ubuntu 12.10
Release:12.10
Codename:   quantal
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* David Seikel onef...@gmail.com [04.04.2013 11:25]:
 My copy of the ifconfig man page does not mention the ip command, and
 certainly does not say to switch.

http://linux.die.net/man/8/ifconfig
http://www.linuxfoundation.org/collaborate/workgroups/networking/net-tools

(seems in debian this note on top is missing). debian is very
conservative. arch linux is the other way around.

 happily with each other.  If something we want to be a drop in
 replacement for requires the ip command, we can do both with some
 shared code.

shared code makes sense. sad: a lot of code (the commandline parser)
cannot share. but you are right: one can simply disable X or Z.

 disable it when you build it.  The rest of the arguments seem pretty
 pointless and annoying.

is always the same with people which are used to CVS and very
annoyed if somebody reveals that there is now git/mercurial.

nobody should be annoyed:
i just encourage you to cut off old braids.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Ilya Kuzmich ilya.kuzm...@gmail.com [04.04.2013 11:42]:
  bastian@box:~$ man ip | wc -l
  150

 zs@silver:~$ for F in ip ip-address ip-addrlabel ip-link ip-maddress \
 ip-monitor ip-mroute ip-neighbour ip-netns ip-ntable ip-route ip-rule \
 ip-tunnel ip-xfrm; do man $F; done | wc -l
 1956

thats unfair, because all those tools can do _a lot_ more than net-tools.

the point is: syntax of 'ip' command is a lot more uniform, than all
the net-tools stuff. so if you know 'ip address add' you also know
'ip route add' or 'ip link add' or 'ip tunnel add' and...

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread David Seikel
On Thu, 4 Apr 2013 11:42:00 +0200 Bastian Bittorf
bitt...@bluebottle.com wrote:

 * David Seikel onef...@gmail.com [04.04.2013 11:25]:
  My copy of the ifconfig man page does not mention the ip command,
  and certainly does not say to switch.
 
 http://linux.die.net/man/8/ifconfig
 http://www.linuxfoundation.org/collaborate/workgroups/networking/net-tools
 
 (seems in debian this note on top is missing). debian is very
 conservative. arch linux is the other way around.

I was looking at the Ubuntu one, which likely inherited the Debian one.

 nobody should be annoyed:
 i just encourage you to cut off old braids.

I have dreadlocks over a meter long that has taken me over a decade to
grow.  I'm not cutting them off.  :-P

-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.


signature.asc
Description: PGP signature
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Isaac Dunham
On Thu, 4 Apr 2013 10:17:17 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:

 * Rob Landley r...@landley.net [04.04.2013 10:03]:
  I've used ip a couple times. I mostly use ifconfig, because it's
  there and I see no upside in using ip. I also use iwlist and
 
 iwlist is also dead since a long time, the successor is 'iw'
 which shares/imitates to 'ip' syntax

Oh?
http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html#latest
doesn't mention that, AFAICT.
Also, iw _requires_ nl80211.  I know this because it did not work for me.
(ie, iw IS NOT a replacement for wireless-tools)

(OT, I usually use iwmulticall, the multicall version of wireless-tools)

  ifenslave and tunctl and various other tools. Does ip have some kind
  of plugin architecture to suck all that into one big monolithic
  command?
 
 there is not plugin-arch, just one command which simply
 manipulates the kernels netlink-interface.

Yuck.  One monolith that does everything but no plugin architecture...

  if you are
  really using 'ifconfig', you should better switch now. the
  pain will be much worse if you wait again 2 years...
  
  In what way? I vaguely recall first hearing about ip back under Red
  Hat 9, which shipped in 2003. So I've been successfully largely
  ignoring it for 10 years now. What's queued up to change in the near
  future?
 
 i will. there is no work done anymore on ifconfig, even the manpage
 says to switch.

Well, if toybox implements ifconfig, there will be work done on ifconfig.
I won't be switching.  And Rob won't be.  And Android won't be.

In other words, if you're switching, who cares?  If you want an ip command, 
please either write it yourself or pay for it to happen. It's not on Rob's 
agenda at present, and this argument over whether to implement it or ifconfig 
is making no headway and impeding real progress.

  Is there a standard on this? I'm happy to implement a standard...
 
 there is no standard, just reallive (like the mount or init-command):

mount and init have specs in LSB--though it's not enough.
Landley's point is that toybox aims to be standards-conformant, not to copy 
every command in every detail. And if you can point to a standard (POSIX, LSB, 
or similar, not consensus among a subset of distros which would also mandate 
avahi for zeroconf and pulse for audio) that says use ip, then that will 
mandate implementing ip.

 every developer in the network world has realized, that doing the
 'ifconfg/route/arp/netstat'-thingy was a dead-end-street.

As far as I can tell, that problem is only with the net-tools implementation of 
ifconfig. BSD still uses ifconfig, and so does Android.

-- 
Isaac Dunham idun...@lavabit.com

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Isaac Dunham idun...@lavabit.com [04.04.2013 17:51]:
  iwlist is also dead since a long time, the successor is 'iw'
  which shares/imitates to 'ip' syntax
 
 Oh?

http://wireless.kernel.org/en/users/Documentation/iw

The old tool iwconfing, which uses Wireless Extensions interface, is
deprecated and it's strongly recommended to switch to iw and nl80211

  there is not plugin-arch, just one command which simply
  manipulates the kernels netlink-interface.
 
 Yuck.  One monolith that does everything but no plugin architecture...

yes, because all the networking stuff is done via netlink anyway.
it makes from the architecture view no sense to split it.

  i will. there is no work done anymore on ifconfig, even the manpage
  says to switch.
 
 Well, if toybox implements ifconfig, there will be work done on ifconfig.
 I won't be switching.  And Rob won't be.  And Android won't be.

you will: sooner or later 8-) even android must switch to make use
of the new kernel infrastructure, e.g. if you have multiple network
devices with uplink you need more than one routing-table for the
fallback. for this case, they need 'ip' or they must implement something
which speaks with the kernel.

 In other words, if you're switching, who cares?  If you want an ip command, 
 please either write it yourself or pay for it to happen. It's not on Rob's 
 agenda at present, and this argument over whether to implement it or ifconfig 
 is making no headway and impeding real progress.
 

seems you are right.


   Is there a standard on this? I'm happy to implement a standard...
  
  there is no standard, just reallive (like the mount or init-command):
 
 mount and init have specs in LSB--though it's not enough.

i poked on POSIX, which does not define it.

http://www.linuxbase.org/navigator/browse/command.php
where is 'init' defined?

 Landley's point is that toybox aims to be standards-conformant, not to copy 
 every command in every detail. And if you can point to a standard (POSIX, 
 LSB, or similar, not consensus among a subset of distros which would also 
 mandate avahi for zeroconf and pulse for audio) that says use ip, then that 
 will mandate implementing ip.


the other question is: which distro has not 'iproute2' and when is the
point they are all switching. in 2 years? in 5 years? lets see.

  every developer in the network world has realized, that doing the
  'ifconfg/route/arp/netstat'-thingy was a dead-end-street.
 
 As far as I can tell, that problem is only with the net-tools implementation 
 of ifconfig. BSD still uses ifconfig, and so does Android.

yes, correct.

thanks for the discussion to all - bye, bastian

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Bastian Bittorf
* Isaac Dunham idun...@lavabit.com [04.04.2013 17:51]:
 mount and init have specs in LSB--though it's not enough.

fun fact: they even define 'mailx', 'perl' and 'awk' 8-)

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Rob Landley

On 04/04/2013 03:09:39 AM, Bastian Bittorf wrote:

* Rob Landley r...@landley.net [04.04.2013 10:03]:
 $ man ip | wc -l
 1853
 $ man ifconfig | wc -l
 185

here:
bastian@box:~$ for F in ifconfig arp netstat route; do man $F; done |  
wc -l

756


Ok.


bastian@box:~$ man ip | wc -l
150

bastian@box:~$ lsb_release  -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:Ubuntu Raring Ringtail (development branch)
Release:13.04
Codename:   raring


You're aware that this man page is available online, right?

  http://manpages.ubuntu.com/manpages/precise/en/man8/ip.8.html

That's a lot more than 150 lines. Would you like to explain what page  
you were actually looking at that's 150 lines?


Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Rob Landley

On 04/04/2013 03:17:17 AM, Bastian Bittorf wrote:

* Rob Landley r...@landley.net [04.04.2013 10:03]:
 I've used ip a couple times. I mostly use ifconfig, because it's
 there and I see no upside in using ip. I also use iwlist and

iwlist is also dead since a long time, the successor is 'iw'
which shares/imitates to 'ip' syntax


For a definition of dead that's installed by default on current  
ubuntu LTS.



 ifenslave and tunctl and various other tools. Does ip have some kind
 of plugin architecture to suck all that into one big monolithic
 command?

there is not plugin-arch, just one command which simply
manipulates the kernels netlink-interface.


A very large, very complicated command in the mold of systemd.

Busybox was not simpler than 20-something other packages because it  
implemented everything they did in a single binary. It was simpler in  
SPITE of that. This is something the  
http://www.freebsd.org/cgi/man.cgi?query=crunchgensektion=1 people  
never quite understood.



 if you are
 really using 'ifconfig', you should better switch now. the
 pain will be much worse if you wait again 2 years...

 In what way? I vaguely recall first hearing about ip back under  
Red

 Hat 9, which shipped in 2003. So I've been successfully largely
 ignoring it for 10 years now. What's queued up to change in the near
 future?

i will. there is no work done anymore on ifconfig, even the manpage
says to switch.


You keep saying that, but like so many other things you've said you  
don't back it up, and what I can see disagrees with what you say.


Giving you the benefit of the doubt of using the version of ubuntu  
you're using (which is newer than the LTS I'm using), here is the man  
page for ifconfig:


  http://manpages.ubuntu.com/manpages/precise/en/man8/ifconfig.8.html

Please point me to the text you were referring to. I can't find it.

Note: if you mean _ip_ command's man page says that ifconfig is  
obsolete, this is exactly as convincing to me as Microsoft saying Linux  
is obsolete. You'll notice I'm not claiming that busybox is obsolete  
and everyone should stop using it, because that would be a seriously  
dick move. People are free to continue using that as long as they like,  
it's a free country. If toybox isn't better enough to convince them to  
switch on their own, obviously I still have work to do.



 Is there a standard on this? I'm happy to implement a standard...

there is no standard, just reallive (like the mount or init-command):
every developer in the network world has realized, that doing the
'ifconfg/route/arp/netstat'-thingy was a dead-end-street.


Hmmm, it's not http://en.wikipedia.org/wiki/Argumentum_ad_populum when  
they're invisible, I think it's  
http://barb.velvet.com/humor/lurkers.html except you're claiming  
_every_ eveloper thinks the same way as you do. That there are none who  
don't.


I'm not a developer in the network world, apparently. Neither are the  
people who do android. Neither are any of the other developers I've  
seen piping up in this thread. Neither are the (multiple) developers  
who sent me an ifconfig implementation. Neither is cray, my current  
employer, which bolted an an arp implementation on to klibc for use  
in initramfs. (I could go on...)


As far as I can tell you've been repeatedly factually wrong without  
acknowledging or correcting one instance of it that I've noticed so  
far. I'm trying not to hold this _against_ the ip command, but it's  
not giving me warm fuzzies so far.


Look: fconfig and friends are not coming out. Android toolbox has  
ifconfig, thus toybox needs ifconfig. The question is whether or not it  
needs ip on top of that, and I must admit you're not doing the best  
job of advocacy I've seen recently.



bye, bastian


Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Rob Landley

On 04/04/2013 04:25:03 AM, Bastian Bittorf wrote:

* Rob Landley r...@landley.net [04.04.2013 10:03]:
 Yup, just pulled up my old Red Hat 9 image under qemu and did
 ifconfig eth0 10.0.2.15/31 and it worked fine.

you are right, shame on me.


Sorry for complaining about it in the last email then. (Reading 'em as  
I see 'em...)



 Heh, it's still up at http://busybox.net/downloads/qemu/ if you'd
 like to try that yourself.

 - aliases + multiple IP's on one interface

 I did aliases with ifconfig in 2002, there's a colon number syntax  
or

 some such...

ip address add 9.8.7.6/32 dev lo label lo:commentXY
are labels supported via ifconfig?


There's a label tool somewhere. I haven't bothered with it, I assume  
people will submit one if they need it. I looked into the low level API  
so I could build the functionality into mdev, actually...


(Looking down in this very email, it's apparently nameif.)


 - correct output of aliases

 Define correct.

 sudo ifconfig lo:0 10.255.255.1/31
 ifconfig

 loLink encap:Local Loopback
   inet addr:127.0.0.1  Mask:255.0.0.0
   inet6 addr: ::1/128 Scope:Host
   UP LOOPBACK RUNNING  MTU:16436  Metric:1
   RX packets:5708561 errors:0 dropped:0 overruns:0 frame:0
   TX packets:5708561 errors:0 dropped:0 overruns:0 carrier:0
   collisions:0 txqueuelen:0
   RX bytes:3736486922 (3.7 GB)  TX bytes:3736486922 (3.7 GB)

 lo:0  Link encap:Local Loopback
   inet addr:10.255.255.1  Mask:255.255.255.254
   UP LOOPBACK RUNNING  MTU:16436  Metric:1

this is wrong:
lo:0 is no interface, so why does it show an extra interface?


I note that technically lo isn't an ethernet interface in the first  
place, so you could make the same argument there...



 - more than one routing table (policy routing)

 Never tried, but I've done some fun stuff with iptables and some

so, because you never tried - it's not needed? 8-)


No, I'm saying I'm scratching my own itch and you complaining about  
ifconfig does not trump other people submitting code to me and  
complaining in email that they would be very confused if it was  
removed because it's part of their patched version of toybox that  
they're already using in a product.



 other fun stuff with containers. http://landley.net/lxc/

 - preparing traffic control

 man tc

tc belongs to 'ip'.
so how to you set up an 'ip rule' with ifconfig. 8-)


I don't care.

This is the difference between you and me here. If I implemented ip,  
it wouldn't use code from iptools. If I implement rotue it won't use  
code from net-tools. Your complaints about horrible infrastructure are  
mind-bogglingly irrelevant, it's gonna be a fresh implementation. (At  
least when I get done with it...)


You like the ip command being its own swiss-army-knife that sucks in  
route and arp and such, but then tc is an external command rather than  
a flag to the ip monolith and that also makes it better. Right. Fine.  
I'm sure it makes sense to somebody.


 - better parseable output (if needed, e.g. ip -oneline link show  
tun0)


 Look, I'm not saying that providing an alternate interface to the
 same functionality for people who are used to and expect the other
 interface is a bad thing, especially if it's easy to do. But that
 cuts _against_ your complaints about ifconfig. You're claiming
 ifconfig is an incapable relic, and so far not showing things that
 actually require ip. The point of this thread is you said that we
 should NOT implement ifconfig and friends.

the idea behind it is:
dont encourage people to use such old, incomplete, inconsistent tools.


1) cat's older
2) this should (eventually) be a fresh implementation
3) we can add stuff until it's not incomplete
4) you've never explained inconsistent, just asserted it. (No, I'm not  
interested in hearing it at the moment. I'm experiencing topic  
exhaustion.)



especially if you make something new, this is the chance to enforce
people to use/learn the new interface.


No. No it isn't. There are existing users. I'm trying to serve the  
userbase.



sooner or later they need to learn ip anyway,


No, they don't. You keep saying that, and I see no reason it would ever  
be true.



so why not doing it right? is there any distro
not shipping 'ip' (iproutw2)?


People made this argument for udev. I wrote mdev. This is the same  
argument people are making right now for systemd. I'm not doing that  
one.



 - you can rename interfaces

 man nameif

 - multicast working

 I'm fairly certain multicast was around in the 90's. I remember
 people bemoaning its failure even then. (How is the mbone doing?
 Netflix streaming making extensive use of that, then? Skype?
 Youtube?)

multicast makes more sense in the ipv6 world


No it doesn't. I was working for a set top box manufacturer in 2001, we  
were doing movies on demand and DVR and all that long before there was  
a _market_ for it. (It never shipped because the rights were 

Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Rob Landley

On 04/04/2013 04:42:00 AM, Bastian Bittorf wrote:

* David Seikel onef...@gmail.com [04.04.2013 11:25]:
 My copy of the ifconfig man page does not mention the ip command,  
and

 certainly does not say to switch.

http://linux.die.net/man/8/ifconfig


So a third random guy has an opinion, on the internet.


http://www.linuxfoundation.org/collaborate/workgroups/networking/net-tools


So they don't include network configuration in LSB, and half of LSB is  
reverting posix-2008 to posix-2001, and they've gone through _5_  
not-android embedded distributions (Maemo, Moblin, Meego, Tizen,  
Yocto), and they specified RPM as part of LSB which pissed off Ubuntu  
to no end...


And they think that this thing that they don't standardize is obsoleted  
by this other thing they don't standardize.



(seems in debian this note on top is missing). debian is very
conservative. arch linux is the other way around.


55% of the linux workstation market last I checked. I'm not saying they  
have good technical judgement (/bin/sh-dash), but declaring normal by  
pointing at a minority is weird.


Arch, meanwhile, declared static linking to be obsolete:

  http://comments.gmane.org/gmane.linux.arch.devel/19143

(Meaning aboriginal linux's default configuration won't build on it.)  
And they went to systemd. Those guys are _nuts_.



 happily with each other.  If something we want to be a drop in
 replacement for requires the ip command, we can do both with some
 shared code.

shared code makes sense. sad: a lot of code (the commandline parser)
cannot share. but you are right: one can simply disable X or Z.

 disable it when you build it.  The rest of the arguments seem pretty
 pointless and annoying.

is always the same with people which are used to CVS and very
annoyed if somebody reveals that there is now git/mercurial.


I completely reject that analogy. I've used cvs, svn, git, and  
mercurial. I've also used ifconfig and ip. The cases are nothing like  
each other.


You have an irrational hatred of ifconfig, but haven't said what's  
wrong with it. Just taken it for granted that everybody knows that ip  
is infinitely superior. It's like Jorg Schilling and Solaris vs Linux,  
or Glen Beck and gold vs the dollar.



nobody should be annoyed:


You. You are annoyed. This entire thread is you being annoyed. That's  
why you started it, that's why it continues. You have established  
nothing but that you are annoyed.



i just encourage you to cut off old braids.


And switch to plan 9?

  http://plan9.bell-labs.com/magic/man2html/8/ipconfig

They don't use this ip thing either.

You've never said what's _wrong_ with ifconfig. You've just gone ew.

Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Rob Landley

On 04/04/2013 09:52:47 AM, Isaac Dunham wrote:

On Thu, 4 Apr 2013 10:17:17 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:
  if you are
  really using 'ifconfig', you should better switch now. the
  pain will be much worse if you wait again 2 years...
 
  In what way? I vaguely recall first hearing about ip back under  
Red

  Hat 9, which shipped in 2003. So I've been successfully largely
  ignoring it for 10 years now. What's queued up to change in the  
near

  future?

 i will. there is no work done anymore on ifconfig, even the manpage
 says to switch.


Noting, in passing, that he once again didn't answer my actual  
question. Unless i will is an answer to what's queued up to change  
in the near future? But this entire thread has been like that...


Well, if toybox implements ifconfig, there will be work done on  
ifconfig.

I won't be switching.  And Rob won't be.  And Android won't be.

In other words, if you're switching, who cares?  If you want an ip  
command,
please either write it yourself or pay for it to happen. It's not on  
Rob's
agenda at present, and this argument over whether to implement it or  
ifconfig

is making no headway and impeding real progress.


This is what I popped in to answer, in a thread I've otherwise largely  
lost interest in.


It was never about ifconfig _or_ ip. It was about implementing an ip  
interface in addition to the ifconfig that somebody already submitted  
and that toolbox already has.


Support for ifconfig was in the first version of the roadmap I checked  
in a year ago:


  http://landley.net/hg/toybox/rev/639

Support for ip still isn't. And nobody other than Bastian's ever  
asked for it. (They've asked for things like freeramdisk and  
readahead, but not that.)



 every developer in the network world has realized, that doing the
 'ifconfg/route/arp/netstat'-thingy was a dead-end-street.

As far as I can tell, that problem is only with the net-tools  
implementation of

ifconfig. BSD still uses ifconfig, and so does Android.


What exactly is the _problem_? The existing ifconfig works fine. This  
is like saying http://nc110.sourceforge.net/ is useless because 1.10  
came out in 1996, and it's SO useless that I shouldn't have written a  
new implementation of for busybox. Which Denys then _replaced_ with the  
1.10 version from 1996 as the default, back before I relaunched  
toybox...


  http://lists.uclibc.org/pipermail/busybox/2010-June/072734.html

And I can see why he did it. (I don't agree, but I see why. I would  
have extended my version to have the features and optionally the user  
interface the other one had. But I wasn't really around for him to  
delegate that to, was I?)


But this Oh no, the code is old! Code RUSTS! I don't get it. Linux  
2.4 doesn't support modern hardware, containers, tickless operation,  
sucks at threading and SMP. But if it had decent arm support I expect  
android would have been based on it because it ran in a quarter the  
memory the current one needs.


Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-04 Thread Isaac Dunham
On Thu, 4 Apr 2013 11:42:00 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:

 
 * David Seikel onef...@gmail.com [04.04.2013 11:25]:
  My copy of the ifconfig man page does not mention the ip command, and
  certainly does not say to switch.
 
 http://linux.die.net/man/8/ifconfig
 http://www.linuxfoundation.org/collaborate/workgroups/networking/net-tools
 
 (seems in debian this note on top is missing). debian is very
 conservative. arch linux is the other way around.

Because that note is not in the original man page; meaning that it was 
deprecated by a third party (though there is a note under BUGS at the end, 
saying please use ip link for showing full address information on 
Infiniband--but then, is anyone planning to use infiniband with toybox? And do 
we have to be bug-for-bug compatible?).
See:
http://net-tools.git.sourceforge.net/git/gitweb.cgi?p=net-tools/net-tools;a=blob;f=man/en_US/ifconfig.8

Digging that up indicates that net-tools is very much alive, with at least 5 
regular contributors within the past year or two and several 6 weeks ago.

So this sounds more and more like plain, unadulterated, FUD.
-- 
Isaac Dunham idun...@lavabit.com

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


[Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Bastian Bittorf
it needed some days to find the right arguments, but i try to make it short:

dont implement 'ifconfig'. it's totally obsolete since nearly 10 years.
nobody uses it anymore, even the manpage of 'ifconfig' shows this in
big letters, it's so much restricted and doesnt know much about networking,
it's a relict if the 1990's and must die.

better make a stub of 'ip' and implement:

ip link add/del/show
ip address add/del/show
ip route add/del/show
ip neigh add/del/show

ifconfig is so fundamentally wrong in architecture, thats
not worth the work. for greybeards you can add a wrapper
which translates every call to ifconfig/route/arp with a
stderr output of deprecated: use 'ip address show blabla...'.

sorry for the hard words, but someone must say it 8-)

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Bastian Bittorf
* Roy Tam roy...@gmail.com [03.04.2013 16:23]:
 nope. many script does use ifconfig. for example:
 http://www.linuxquestions.org/questions/linux-networking-3/how-can-i-use-udhcpc-800236/

so if you are using scripts/infrastructure which are older
than 10 years maybe toybox is not for you 8-)

seriously: udhcpc needs a switch to modern tools
and with the wrapper i proposed it will not be a prob.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Isaac Dunham
On Wed, 3 Apr 2013 16:05:26 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:

 it needed some days to find the right arguments, but i try to make it short:
 
 dont implement 'ifconfig'. it's totally obsolete since nearly 10 years.
 nobody uses it anymore, even the manpage of 'ifconfig' shows this in
 big letters, it's so much restricted and doesnt know much about networking,
 it's a relict if the 1990's and must die.

One data point:
I learned Linux in 2006, and use ifconfig all the time.  
It's much more informative, much more obvious to use 
(look at the output of ifconfig, then that of ip, and tell me how on earth 
you're going to figure out how to troubleshoot a network connection given a 
rescue/install environment without a manpage or reference), and has clearer 
output.
ip suffers from UI design failure: it may be more capable, but try using it 
when you don't know how already and you will be lost.
I knew some people who stopped using Arch when ifconfig stopped being installed 
by default.
 
 better make a stub of 'ip' and implement:
 
 ip link add/del/show
 ip address add/del/show
 ip route add/del/show
 ip neigh add/del/show
 
 ifconfig is so fundamentally wrong in architecture, thats
 not worth the work. for greybeards you can add a wrapper
 which translates every call to ifconfig/route/arp with a
 stderr output of deprecated: use 'ip address show blabla...'.

-- 
Isaac Dunham idun...@lavabit.com

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Isaac Dunham
On Wed, 3 Apr 2013 17:28:00 +0200
Bastian Bittorf bitt...@bluebottle.com wrote:

 * Isaac Dunham idun...@lavabit.com [03.04.2013 17:16]:
  I learned Linux in 2006, and use ifconfig all the time.  
  It's much more informative, much more obvious to use 
 
 ofcourse this is always, from which side you are looking. 
   

 
 if you are used to 'ifconfig' and never used 'ip' than you
   

 have to read something about it. same vica versa. if you are  
   

 really using 'ifconfig', you should better switch now. the
   

 pain will be much worse if you wait again 2 years...   

If you would read the first _four_ lines instead of the first three, you would 
see that your response fails to address what I was saying
(NOTE: there's more information after this quote):

 (look at the output of ifconfig, then that of ip, and tell 
 me how on earth you're going to figure out how to troubleshoot 
 a network connection given a rescue/install environment without
 a manpage or reference),

Such situations _do_ occur--I've ended up in them several times.
The people who stopped using Arch because of the switch did so because they 
couldn't get networking in the installer.

If you know the command to use, ifconfig is already useful. 
And the --help is informative enough to start using it.
ip just tries to give you a help message; I say tries because it fails to 
actually provide any information for someone who just knows use ip.

 PS:
 ip address add 192.168.1.2/24 dev eth0
   

 ip address show   
   

 ip route list exact 0/0 table
mytable
 ip route get
10.63.12.4
 ip neigh show

Thanks for the examples.
And just to add one essential example:
ip link set eth0 up = ifconfig eth0 up

-- 
Isaac Dunham idun...@lavabit.com

___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Bastian Bittorf
* Isaac Dunham idun...@lavabit.com [03.04.2013 20:18]:
 If you would read the first _four_ lines instead of the first three, you 
 would see that your response fails to address what I was saying
 (NOTE: there's more information after this quote):

ofcourse i understand your arguments:
- you are not used to the syntax of 'ip'
- you are not used to the output of 'ip'

both arguments are valid and invalid, regarding
the point of view: a user which has experience
with 'ip' and is unfamiliar with 'ifconfig' has
the same problems: he needs help using this tool, but:

ifconfig/route/arp are 3 tools which are doing the same
(manipulating network) but have different commandlines
und concepts. 'ip' is a round figure where everything
fits together, so easier to understand:

ifconfig eth0 up
=
ip link set dev eth0 up

ifconfig
=
ip address show (or 'ip a', because you can always abbreviate)

maybe it hurts, but especially regarding IPv6 (it coming!)
you want to have CIDR-notation which ifconfig does not know.
and there are 999 examples more...

http://inai.de/2008/02/19
http://techblog.rosedu.org/ifconfig-vs-iproute.html
http://members.ferrara.linux.it/pioppo/howto/iproute2tunnel-en.html

again, think about it:
the ifconfig/route/arp-tools are totally obsolete and only
because the people know the syntax of 'sccs' nobody cares
about it, because there are better tools.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Rob Landley

On 04/03/2013 09:05:26 AM, Bastian Bittorf wrote:
it needed some days to find the right arguments, but i try to make it  
short:


dont implement 'ifconfig'.


I didn't. A third party submitted it, because they use it. Nobody's  
ever bothered to submit ip.



it's totally obsolete since nearly 10 years. nobody uses it anymore,


*shrug* I use it. So did the people who submitted their implementation  
of it. It's in the $PATH on ubuntu LTS without me having to install a  
package to get it.


Could you be a bit more specific about what's wrong with it? So far  
you've said ew, which isn't really an argument.



even the manpage of 'ifconfig' shows this in
big letters, it's so much restricted and doesnt know much about  
networking,


Are you saying it's simple and minimal, just enough to get the job done?

This is a bad thing?


it's a relict if the 1990's and must die.


Um, cat and ls are relics of the 1970's, are they on the hit list  
too?



better make a stub of 'ip' and implement:

ip link add/del/show
ip address add/del/show
ip route add/del/show
ip neigh add/del/show


What can you do with ip that you can't do with ifconfig/route?


ifconfig is so fundamentally wrong in architecture, thats
not worth the work.


I didn't do the work. I need to do the _cleanup_ work, but that tends  
to be true of most external submissions. (I'm picky. I'm also  
apparently unusually good at the programming equivalent of haiku.)



for greybeards you can add a wrapper
which translates every call to ifconfig/route/arp with a
stderr output of deprecated: use 'ip address show blabla...'.


I was planning on simplifying the underlying infrastructure rather a  
lot, yes.



sorry for the hard words, but someone must say it 8-)


Why must someone say it? Neither is specified by Posix _or_ LSB. (I'd  
very much like it if somebody could point me to a standard for this  
crud. The closest I've got is man pages.)


I'm willing to be convinced, but that wasn't it.

Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Bastian Bittorf
* Rob Landley r...@landley.net [03.04.2013 21:44]:
 it's totally obsolete since nearly 10 years. nobody uses it anymore,
 
 *shrug* I use it. So did the people who submitted their
 implementation of it. It's in the $PATH on ubuntu LTS without me
 having to install a package to get it.

8-) ofcourse i overdraw and provoked.

 even the manpage of 'ifconfig' shows this in
 big letters, it's so much restricted and doesnt know much about
 networking,
 
 Are you saying it's simple and minimal, just enough to get the job done?
 
 This is a bad thing?

if it _would_ be simple, minimal and useful then nobody would use 'ip'

 it's a relict if the 1990's and must die.
 
 Um, cat and ls are relics of the 1970's, are they on the hit list
 too?

cat makes sense, ls is useful enough that we all can live with it's
errors. (i dont know a better tool to do this job).

 better make a stub of 'ip' and implement:
 
 ip link add/del/show
 ip address add/del/show
 ip route add/del/show
 ip neigh add/del/show
 
 What can you do with ip that you can't do with ifconfig/route?

- all the IPv6 stuff
- CIDR-notation
- aliases + multiple IP's on one interface
- correct output of aliases
- tunnels
- more than one routing table (policy routing)
- preparing traffic control
- better readable scripts (!)
  e.g. get the default route: 'ip route list exact 0/0'
- better parseable output (if needed, e.g. ip -oneline link show tun0)
- you can rename interfaces
- multicast working
- fine control over all netlink-params (e.g. txqueuelen)
- http://inai.de/2008/02/19
- 
http://www.reddit.com/r/networking/comments/1a7z6z/the_missing_man_page_for_ifconfig_xpost_from/

ofcourse i'am fine with both implementations, but IMHO
it's better to let 'ifconfig' die, than to enforce people
to learn the syntax for 4 tools (ifconfig, route, arp,
netstat - which are doing the same (manipulating network-stack) but
inconsitently), instead of 1 tool which has the same clean
syntax everywhere.

bye, bastian
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Rob Landley

On 04/03/2013 10:28:00 AM, Bastian Bittorf wrote:

* Isaac Dunham idun...@lavabit.com [03.04.2013 17:16]:
 I learned Linux in 2006, and use ifconfig all the time.
 It's much more informative, much more obvious to use

ofcourse this is always, from which side you are looking.

if you are used to 'ifconfig' and never used 'ip' than you
have to read something about it. same vica versa.


I've used ip a couple times. I mostly use ifconfig, because it's  
there and I see no upside in using ip. I also use iwlist and  
ifenslave and tunctl and various other tools. Does ip have some kind of  
plugin architecture to suck all that into one big monolithic command?



if you are
really using 'ifconfig', you should better switch now. the
pain will be much worse if you wait again 2 years...


In what way? I vaguely recall first hearing about ip back under Red  
Hat 9, which shipped in 2003. So I've been successfully largely  
ignoring it for 10 years now. What's queued up to change in the near  
future?


Is there a standard on this? I'm happy to implement a standard...


bye, bastian

PS:
ip address add 192.168.1.2/24 dev eth0
ip address show
ip route list exact 0/0 table mytable
ip route get 10.63.12.4
ip neigh show


Can use the ip command to manipulate the arp cache too? [checks] Of  
course you can. So for me to implement ip is as much code as for me  
to implement _how_ many other commands? Does it have code for moving  
interfaces into and out of containers too?


$ man ip | wc -l
1853
$ man ifconfig | wc -l
185

Oh yes, obviously a much simpler command than ifconfig. Obvious choice,  
really. (How do I trigger the built in dhcp client, I'm not finding it  
in the man page. Did ubuntu not compile that in? I vaguely remember  
using it once...)


$ man bash | wc -l
5459

I suppose I can take solace that the bash man page is almost 3 times as  
long as the ip man page...


Rob
___
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net


Re: [Toybox] complaining about 'ifconfig' - better use 'ip'

2013-04-03 Thread Rob Landley

On 04/03/2013 03:21:17 PM, Bastian Bittorf wrote:

* Rob Landley r...@landley.net [03.04.2013 21:44]:
 it's totally obsolete since nearly 10 years. nobody uses it  
anymore,


 *shrug* I use it. So did the people who submitted their
 implementation of it. It's in the $PATH on ubuntu LTS without me
 having to install a package to get it.

8-) ofcourse i overdraw and provoked.

 even the manpage of 'ifconfig' shows this in
 big letters, it's so much restricted and doesnt know much about
 networking,

 Are you saying it's simple and minimal, just enough to get the job  
done?


 This is a bad thing?

if it _would_ be simple, minimal and useful then nobody would use 'ip'

 it's a relict if the 1990's and must die.

 Um, cat and ls are relics of the 1970's, are they on the hit  
list

 too?

cat makes sense, ls is useful enough that we all can live with it's
errors. (i dont know a better tool to do this job).

 better make a stub of 'ip' and implement:
 
 ip link add/del/show
 ip address add/del/show
 ip route add/del/show
 ip neigh add/del/show

 What can you do with ip that you can't do with ifconfig/route?

- all the IPv6 stuff


Toolbox ifconfig does that.


- CIDR-notation


I dunno what that is. Google...

http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing

Oh, you mean being able to say /30 at the end of an address without it  
being a class A/B/C address? I think that started working in ifconfig  
around... Red Hat 7? In 2000 or so? (I used it in the administration  
scripts for the WebOffice iLand gateway, that can't have been later  
than 2002.) I'm pretty sure I did that on Red Hat 9 in 2003...


Yup, just pulled up my old Red Hat 9 image under qemu and did ifconfig  
eth0 10.0.2.15/31 and it worked fine.


Heh, it's still up at http://busybox.net/downloads/qemu/ if you'd like  
to try that yourself.



- aliases + multiple IP's on one interface


I did aliases with ifconfig in 2002, there's a colon number syntax or  
some such...



- correct output of aliases


Define correct.

sudo ifconfig lo:0 10.255.255.1/31
ifconfig

loLink encap:Local Loopback
  inet addr:127.0.0.1  Mask:255.0.0.0
  inet6 addr: ::1/128 Scope:Host
  UP LOOPBACK RUNNING  MTU:16436  Metric:1
  RX packets:5708561 errors:0 dropped:0 overruns:0 frame:0
  TX packets:5708561 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:0
  RX bytes:3736486922 (3.7 GB)  TX bytes:3736486922 (3.7 GB)

lo:0  Link encap:Local Loopback
  inet addr:10.255.255.1  Mask:255.255.255.254
  UP LOOPBACK RUNNING  MTU:16436  Metric:1


- tunnels


There's an iptunnel command in net-tools.


- more than one routing table (policy routing)


Never tried, but I've done some fun stuff with iptables and some other  
fun stuff with containers. http://landley.net/lxc/



- preparing traffic control


man tc


- better readable scripts (!)


Matter of opinion.


  e.g. get the default route: 'ip route list exact 0/0'


There's probably a cleaner way than route -n | grep UG | awk '{print  
$2}' but I didn't bother to check the man page because I know that one  
off the top of my head.



- better parseable output (if needed, e.g. ip -oneline link show tun0)


Look, I'm not saying that providing an alternate interface to the same  
functionality for people who are used to and expect the other interface  
is a bad thing, especially if it's easy to do. But that cuts _against_  
your complaints about ifconfig. You're claiming ifconfig is an  
incapable relic, and so far not showing things that actually require  
ip. The point of this thread is you said that we should NOT implement  
ifconfig and friends.



- you can rename interfaces


man nameif


- multicast working


I'm fairly certain multicast was around in the 90's. I remember people  
bemoaning its failure even then. (How is the mbone doing? Netflix  
streaming making extensive use of that, then? Skype? Youtube?)



- fine control over all netlink-params (e.g. txqueuelen)


There's a txqueuelen option the ubuntu 12.04 ifconfig man page.


- http://inai.de/2008/02/19


Somebody in germany had an opinion in a blog post 5 years ago.

-  
http://www.reddit.com/r/networking/comments/1a7z6z/the_missing_man_page_for_ifconfig_xpost_from/


The page this points to disproves your own arguments about ipv6 and  
txqueuelen, it documents how ifconfig supports modern features, did you  
bother to read...


Oh, I see, you wanted me to see the reddit comments where somebody  
posted a good ifconfig resource and youtube commenters attacked them  
saying that systemd is the one true way and resistance is futile.


Look, I asked What can you do with ip that you can't do with  
ifconfig/route? You didn't come up with anything actually _requiring_  
ip yet, that I've noticed.



ofcourse i'am fine with both implementations,


I... hnh... wh...?

Let me quote your first message in this thread: