ifconfig refactoring for FreeBSD
Dan writes "Based on Sam Leffer's suggestion, Bruce Simpson has been working on refactoring ifconfig(8). ifconfig is a FreeBSD unix utility used to assign an address to a network interface and/or configure network interface parameters. Bruce says that ifconfig has grown increasingly large and become unwieldy. Part of the effort has been to get a handle on all of the options that are currently supported so he has written a YACC grammar for it. He has uploaded some grammer, created a design document and also generated a PDF file you can view which shows you syntax diagrams for each part of the parse tree."
eye lub j00 4ll!!
[ed. note: in the following text, former FreeBSD developer Mike Smith gives his reasons for abandoning FreeBSD]
When I stood for election to the FreeBSD core team nearly two years ago, many of you will recall that it was after a long series of debates during which I maintained that too much organisation, too many rules and too much formality would be a bad thing for the project.
Today, as I read the latest discussions on the future of the FreeBSD project, I see the same problem; a few new faces and many of the old going over the same tired arguments and suggesting variations on the same worthless schemes. Frankly I'm sick of it.
FreeBSD used to be fun. It used to be about doing things the right way. It used to be something that you could sink your teeth into when the mundane chores of programming for a living got you down. It was something cool and exciting; a way to spend your spare time on an endeavour you loved that was at the same time wholesome and worthwhile.
It's not anymore. It's about bylaws and committees and reports and milestones, telling others what to do and doing what you're told. It's about who can rant the longest or shout the loudest or mislead the most people into a bloc in order to legitimise doing what they think is best. Individuals notwithstanding, the project as a whole has lost track of where it's going, and has instead become obsessed with process and mechanics.
So I'm leaving core. I don't want to feel like I should be "doing something" about a project that has lost interest in having something done for it. I don't have the energy to fight what has clearly become a losing battle; I have a life to live and a job to keep, and I won't achieve any of the goals I personally consider worthwhile if I remain obligated to care for the project.
Discussion
I'm sure that I've offended some people already; I'm sure that by the time I'm done here, I'll have offended more. If you feel a need to play to the crowd in your replies rather than make a sincere effort to address the problems I'm discussing here, please do us the courtesy of playing your politics openly.
From a technical perspective, the project faces a set of challenges that significantly outstrips our ability to deliver. Some of the resources that we need to address these challenges are tied up in the fruitless metadiscussions that have raged since we made the mistake of electing officers. Others have left in disgust, or been driven out by the culture of abuse and distraction that has grown up since then. More may well remain available to recruitment, but while the project is busy infighting our chances for successful outreach are sorely diminished.
There's no simple solution to this. For the project to move forward, one or the other of the warring philosophies must win out; either the project returns to its laid-back roots and gets on with the work, or it transforms into a super-organised engineering project and executes a brilliant plan to deliver what, ultimately, we all know we want.
Whatever path is chosen, whatever balance is struck, the choosing and the striking are the important parts. The current indecision and endless conflict are incompatible with any sort of progress.
Trying to dissect the above is far beyond the scope of any parting shot, no matter how distended. All I can really ask of you all is to let go of the minutiae for a moment and take a look at the big picture. What is the ultimate goal here? How can we get there with as little overhead as possible? How would you like to be treated by your fellow travellers?
Shouts
To the Slashdot "BSD is dying" crowd - big deal. Death is part of the cycle; take a look at your soft, pallid bodies and consider that right this very moment, parts of you are dying. See? It's not so bad.
To the bulk of the FreeBSD committerbase and the developer community at large - keep your eyes on the real goals. I
Simpsons, meet the Simpsons, they're the modern avr'age familyyyy... From the, town of Springfield...
While they are at it, they should add something to parse /etc/rc.conf and reconfigure all interfaces while the system is running. This is one area where Linux has an advantage.
For those of you who do not know what YACC is all about
Its good to see something like this happening as ifconfig is not only used on FreeBSD but also on most (all?) Linux distros.
Ifconfig is just one of the many contributions the BSD projects have given to the Linux and UNIX community.
PS: To all those "bsd is dying" trolls, things like this show its not. Without the work of the BSD projects you wouldn't have some of the many tools you use each day.
(\(\
(^.^)
(")")
*This is the cute bunny virus, please copy this into your sig so it can spread
Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.
The numbers continue to decline for *BSD but FreeBSD may be hurting the most. Look at the numbers. The loss of user base for FreeBSD continues in a head spinning downward spiral. In truth, for all practical purposes FreeBSD is already dead. It is a dead man walking. It's a fact: FreeBSD is dying.
And NO I will not grease myself up and go up your ass. I am a heterosexual jedi. Liv tyler is waiting for me to plug her in the ass with my "lightsaber" (wink wink). Gosh, moderators have no sense of humor. And no, BSD is not dea...*slump*
As a transplant cadaver, it has had somewhat more success.
Starting with FreeBSD 4.x, ifconfig with no arguments simply lists all interfaces the kernel has found, and their configuration details.
(the actual output has tabs to make the formatting a little prettier)Refactoring is meant to be about improving the design of existing code, in small controlled ways. This doesn't look like refactoring, just a rewrite of a section of it.
Either way I find it hard to appreciate why this is news.
We have no plans to move away from FreeBSD, look forward to 5.2 Currently our FreeBSD servers handle over 2 Terabytes of web traffic per month, trouble free.
There is no "GNU ifconfig". Linux has it's own version which is probably based on an old BSD version, or, maybe written from scratch.
% ifconfig -V
net-tools 1.60
ifconfig 1.42 (2001-04-13)
You can tell it's not GNU because it doesn't spout on about the GPL everytime you run it.
The driver of the bus was negotiating a bend in the road when he lost control of the vehicle which skidded and crashed into a gorge, nearly 200 feet below. Residents of nearby villages and authorities found 22 bodies. BSD was among the dead. The corpse has gone unclaimed, leading to speculation that BSD was indeed an orphan. Calls to former spouse Wind River went unreturned.
Just checking. ;>
It's dead, Jim
A full grown stallion's cock, when fully erect, will measure some two to
three feet long. It can be three to six inches thick at the base, to about
two inches thick at the head. Horses are somewhat different from other
animals in the way their cock head works. When a horse is fully erect and
excited and ready to mount, his cock head is somewhat pointed and not as
thick as might be normally observed. This is to facillatate an easier
entry into the mare. After the horse has entered and reaches a climax the
head swells (though it is more spongy then hard) into a fist sized mass as
he ejacultates. It is thought that this serves as a plug to force the
semen deep into the mare rather then allowing it to leak out. A full grown
stallion can ejaculate about one cup ( 8 ounces ) of semen. It will take
quite a few spurts to accomplish this. Each time his tail will raise and
lower in a brief flick. The first few jets are of a thin to average
consistency of cum. The final few jets are of a thick gelatinous
substance... it is thought that this serves to "seal" the mares pussy so
that the semen has time to do it's thing before leaking out. Horse semen
is extremely viscous, if you touch your finger to a pool of it you can draw
a thin string of it five to six feet long! Horse cum has a nice flat taste
to it...not at all bitter like man's cum. You can easily drink cups of it
with no discomfort.
The Mare - how to do it.
Mares can be quite satisfactory for the average well endowed male. If you
are somewhat less developed you might find better pleasure with a pony or
Miniature Horse. These are also better as they are lower to the ground. A
pony you can fuck standing up. A miniature horse on your knees or
squatting depending on the size. A mare will require something to stand on
or "platform shoes"...(IE mini stilts to raise you a foot off the ground)
so that you can reach her pussy.
Fucking any horse will depend on the horse. Some will be ready right
away...some will take coaxing. Pet the animal, talk to it softly, spend
time with it gaining it's trust. If something you are doing upsets it then
don't force it. Talk to it and calm it. If you work slowly you can make
an animal accept anything. It is just a question of helping it overcome
it's fears. All animals fear man if raised in the wild. How any animal
reacts will depend on it's own experiences. If you haved raised the animal
yourself in a loving enviroment, then you should have no problem
associating with it, if it is a strange animal that you have met in the
wild then you will have to go through an extended "courtship" to learn how
to respond to the beast.
MARES - TRAINING YOUR OWN
When the filly reaches weaning age, seperate her from her dam. If you have
limited time to spend then she should be put to pasture. If you have
plenty of time then you should keep her in a stall. Spend time with her
during the day petting and grooming her and allow her some time to run
free. Limit her access to other horses though and see that she spends at
least 8-12 hours a day in the stall. (Start with more free time and as she
approaches her first birthday confine her more...she is now at the right
age and her confinement will have made her so bored that she is amenable to
any new experience so long as it is not unpleasant)Young fillys have no
objection to someone playing with their pussy's. I have walked up on a pen
full of strange fillys at night and they came right up to me and I petted
them and felt up their pussys and they just lifted their tales and seemed
to enjoy it. These fillys didn't even know me but they were young,
inexperienced and bored...also since they were penned they were used to the
presence of people and did not fear me. Most horses in a large pasture
will run when they scent a strange human in their pasture at night.
If you sit on the ground and wait patiently, they will get downwind of you
and s
It is clear that *BSD is dying, however most *BSD users can not accept that fact that their operating system is on the virge of extinction. Wind River, *BSDs biggest support has turned their back on *BSD, as they now see that *BSD is not at all successful. I quote from this article
"It should be noted that this is not an entirely new approach for Wind River. Back in 2001, the company acquired BSDi with the intention that BSD UNIX would provide a solution to the "Linux problem" and round out the company's OS offerings.
"Wind River's strategy with BSD was to provide Linux-like OS -- an open source, UNIX API," notes Genard, who says the company felt that with BSD UNIX, they could "provide something close to Linux's attributes -- a good solution for the customers."
"We [subsequently] realized that our strategy around BSD was wrong, it wasn't sufficient, so we [eventually] dropped BSD," Genard says. "It wasn't clear what the market was looking for -- it [BSD] was too niched to be successful."
"We [then] realized we needed to endorse and embrace Linux, find a way to build a business that provides value and a revenue stream," he adds.
"The Wind River BSD product is now 'end-of-lifed' and we have disengaged from BSD completely," says Genard.
The purging of BSD from Wind River's product line was accomplished quietly, and without a formal announcement."
Now I don't know about you, but this seems like a pretty good indication on where exactly, *BSD is headed, straight to the graveyard. Even Slashdot has no confidence in *BSDs survival. When this article was published, it was from the "sizing-each-other-up dept." This is clearly a metaphor for sizing *BSD for a suit, for when it meets it ultimate demise. Now, if you can't figure out the message of this post, and need some more help, look at this:
*BSD IS DYING
Mares can be quite satisfactory for the average well endowed male. If you are somewhat less developed you might find better pleasure with a pony or Miniature Horse.
11001001011000010000001100001011011100110010000100 00001110111011010010111010001101000011011110111010 10111010000100000011000010010000001100110011011110 11100100110110101100001011011000010000001100001011 01110011011100110111101110101011011100110001101100 10101101101011001010110111001110100001011100010001 00000110100001010000011010000101001001110011011110 11101110010000001001001001000000110010001101111011 01110001001110111010000100000011010110110111001101 11101110111001000000110000101100010011011110111010 10111010000100000011110010110111101110101001011000 01000000110001001110101011101000010000001110100011 01000011010010111001100100000011100110110010101100 10101101101011100110010000001101100011010010110101 10110010100100000011000010010000001110000011100100 11001010111010001110100011110010010000001100111011 01111011011110110010000100000011010010110111001100 10001101001011000110110000101110100011010010110111 10110111000100000011011110110111000100000011101110 11010000110010101110010011001010010000001100101011 11000011000010110001101110100011011000111100100101 10000100000001010100100001001010011010001000010000 00110100101110011001000000110100001100101011000010 11001000110010101100100001011000010000001110011011 10100011100100110000101101001011001110110100001110 10000100000011101000110111100100000011101000110100 00110010100100000011001110111001001100001011101100 11001010111100101100001011100100110010000101110001 00000010001010111011001100101011011100010000001010 01101101100011000010111001101101000011001000110111 10111010000100000011010000110000101110011001000000 11011100110111100100000011000110110111101101110011 00110011010010110010001100101011011100110001101100 10100100000011010010110111000100000001010100100001 00101001101000100011100110010000001110011011101010 11100100111011001101001011101100110000101101100001 01110001000000101011101101000011001010110111000100 00001110100011010000110100101110011001000000110000 10111001001110100011010010110001101101100011001010 01000000111011101100001011100110010000001110000011 10101011000100110110001101001011100110110100001100 10101100100001011000010000001101001011101000010000 00111011101100001011100110010000001100110011100100 11011110110110100100000011101000110100001100101001 00000001000100111001101101001011110100110100101101 11001100111001011010110010101100001011000110110100 00010110101101111011101000110100001100101011100100 01011010111010101110000001000000110010001100101011 10000011101000010111000100010001000000101010001101 00001101001011100110010000001101001011100110010000 00110001101101100011001010110000101110010011011000 11110010010000001100001001000000110110101100101011 10100011000010111000001101000011011110111001000100 00001100110011011110111001000100000011100110110100 10111101001101001011011100110011100100000001010100 10000100101001101000100001000000110011001101111011 10010001000000110000100100000011100110111010101101 00101110100001011000010000001100110011011110111001 000100000011101110110100001100101011
Young fillys have no objection to someone playing with their pussy's.
Horse cum has a nice flat taste to it...not at all bitter like man's cum. You can easily drink cups of it with no discomfort.
After the horse has entered and reaches a climax the head swells (though it is more spongy then hard) into a fist sized mass as he ejacultates.
Stallions are aroused by the smell of horse pussy above all else. If you have access to a mare, then gentle her till she will let you finger her...then coat your fingers with her juice
A full grown stallion can ejaculate about one cup ( 8 ounces ) of semen. It will take quite a few spurts to accomplish this. Each time his tail will raise and lower in a brief flick. The first few jets are of a thin to average consistency of cum. The final few jets are of a thick gelatinous substance
Fucking any horse will depend on the horse. Some will be ready right away...some will take coaxing
When a horse is fully erect and excited and ready to mount, his cock head is somewhat pointed and not as thick as might be normally observed
Horse semen is extremely viscous, if you touch your finger to a pool of it you can draw a thin string of it five to six feet long!
A yacc grammar? That makes it official, ifconfig is now a contender for the ls Memorial Too Damn Many Options award. Other known entrants include ld, most X applications, and the ever-popular gcc.
A full grown stallion's cock, when fully erect, will measure some two to three feet long. It can be three to six inches thick at the base, to about two inches thick at the head
- system("/usr/sbin/arp
...")
and you will see pretty quickly that it's much more complicated than any ioctl()Conceptually, ARP table entries as routing table entries is great but the API is in need of some serious re-working or a library to hide the complexity.
Horse cum has a nice flat taste to it...not at all bitter like man's cum. You can easily drink cups of it with no discomfort
Rubbing some hot mare piss on a stallions nose will make him horny as hell! He will be all over you!
NOONE SHOULD ATTEMPT VAGINAL OR ANAL INTERCOURSE WITH A STALLION unless they have are experienced in fist fucking or have taken a large dog in to the max ( IE knot and all).
If you rub his belly and sheath slowly and gently and let him smell some horse pussy juice then he will erect
By coming repeatedly to a horse and arousing him he will become trained to see you as a sexual object. Soon just your presence will give him a throbbing hard-on.
A full grown stallion can ejaculate about one cup ( 8 ounces ) of semen.
Horses are somewhat different from other animals in the way their cock head works. When a horse is fully erect and excited and ready to mount, his cock head is somewhat pointed and not as thick as might be normally observed.
Horse semen is extremely viscous, if you touch your finger to a pool of it you can draw a thin string of it five to six feet long!
I have walked up on a pen full of strange fillys at night and they came right up to me and I petted them and felt up their pussys and they just lifted their tales and seemed to enjoy it.
it is thought that this serves to "seal" the mares pussy so that the semen has time to do it's thing before leaking out
What We Can Learn From BSD
By Chinese Karma Whore, Version 1.0
Everyone knows about BSD's failure and imminent demise. As we pore over the history of BSD, we'll uncover a story of fatal mistakes, poor priorities, and personal rivalry, and we'll learn what mistakes to avoid so as to save Linux from a similarly grisly fate.
Let's not be overly morbid and give BSD credit for its early successes. In the 1970s, Ken Thompson and Bill Joy both made significant contributions to the computing world on the BSD platform. In the 80s, DARPA saw BSD as the premiere open platform, and, after initial successes with the 4.1BSD product, gave the BSD company a 2 year contract.
These early triumphs would soon be forgotten in a series of internal conflicts that would mar BSD's progress. In 1992, AT&T filed suit against Berkeley Software, claiming that proprietary code agreements had been haphazardly violated. In the same year, BSD filed countersuit, reciprocating bad intentions and fueling internal rivalry. While AT&T and Berkeley Software lawyers battled in court, lead developers of various BSD distributions quarreled on Usenet. In 1995, Theo de Raadt, one of the founders of the NetBSD project, formed his own rival distribution, OpenBSD, as the result of a quarrel that he documents on his website. Mr. de Raadt's stubborn arrogance was later seen in his clash with Darren Reed, which resulted in the expulsion of IPF from the OpenBSD distribution.
As personal rivalries took precedence over a quality product, BSD's codebase became worse and worse. As we all know, incompatibilities between each BSD distribution make code sharing an arduous task. Research conducted at MIT found BSD's filesystem implementation to be "very poorly performing." Even BSD's acclaimed TCP/IP stack has lagged behind, according to this study.
Problems with BSD's codebase were compounded by fundamental flaws in the BSD design approach. As argued by Eric Raymond in his watershed essay, The Cathedral and the Bazaar, rapid, decentralized development models are inherently superior to slow, centralized ones in software development. BSD developers never heeded Mr. Raymond's lesson and insisted that centralized models lead to 'cleaner code.' Don't believe their hype - BSD's development model has significantly impaired its progress. Any achievements that BSD managed to make were nullified by the BSD license, which allows corporations and coders alike to reap profits without reciprocating the goodwill of open-source. Fortunately, Linux is not prone to this exploitation, as it is licensed under the GPL.
The failure of BSD culminated in the resignation of Jordan Hubbard and Michael Smith from the FreeBSD core team. They both believed that FreeBSD had long lost its earlier vitality. Like an empire in decline, BSD had become bureaucratic and stagnant. As Linux gains market share and as BSD sinks deeper into the mire of decay, their parting addresses will resound as fitting eulogies to BSD's demise.
5.2 coming out soon will rock!
btw, i got bashed by some bsd troll, cause we linux users tend to use the ip command, from the iproute package, nowadays... :)
nice to see that freebsd is moving along...
Even better, I use two realtek for internal interfaces and one 3com for the cable connection.
The 3coms don't like it when there's more than one in my firewall, the realteks work just fine. Only setting the macaddress didn't go well, so that's why the 3com on the outside.
home
BSD is a walking corpse, putrefying on the hoof.
We use it all our web servers. Just look at Netcraft for longest uptime, every single machine runs on BSD. Who are these wierdos claiming BSD is dead? Stupid fools!
yhl hand
Just because I don't love your fucking OS doesn't mean that it isn't dying.
Note to Slashdot: your stupid ip banning for posting 'lowly rated' posts is gay.
Uptime isn't a measure of penis size or intelligence.
ifconfig is just the older, more compatible way to config the interfaces for those who grew up using older Linuxes and other Unices. You can do everything ifconfig + iptables using ip + tc and more.
So before anyone claims that Linux's ifconfig sucks and is too complicated, they've already made a better replacement for it, just needs more documentation and exposure.
BSD blows away Windows and Linux, Mac OS X is based on BSD. BSD is the most stable OS out there today, just look at Netcraft's longest up times! Face the facts you pathetic freaks, BSD is here to stay!
.... can't accept BSD is a superior OS!
I keep thinking that /. will eventually start doing some housekeeping.
Notice how the trolls don't hit other BSD sites or the BSD mailing lists?
Here they can keep posting the same crap over and over and nothing is done.
More of the "Open Source is great so long as it is Linux" attitude. *sigh*
A full grown stallion can ejaculate about one cup ( 8 ounces ) of semen. It will take quite a few spurts to accomplish this.
It is a rhythm as old as life itself, and is an integral part of the evolutionary process.
The classical symptoms of a species in crisis include:
- Increased aggression
- Sexual dysfunction
-
And disease.
It is a fact: *BSD is dyingLet's not give the GNU guys any ideas. ;)
-
And the Angel said unto me, "These are the cries of the carrots! The cries of the carrots!"
G5 BigMac supercomputer, biggest bang for the buck out of all supercomputers running on BSD based OS. Freaks in denial pulling their hair out!
Linux is for dummies!
_d8b____________________d8b
d 888b,8 b,_ `?8b8 88P'
_?88____________________88P
__88b__________________d88
__888888b__.d888b,_d888888
__88P_`?8b_?8b,___d8P'_?88
_d88,__d88___`?8b_88b__,88b
d88'`?88P'`?888P'_`?88P'`88b
_d8b_______d8b
_?88_______88P
__88b_____d88
__888888b_888___d8888b__?88___d8P__d8P_.d888b,
__88P_`?8b?88__d8P'_?88_d88__d8P'_d8P'_?8b,
_d88,__d88_88b_88b__d88_?8b_,88b_,88'____`?8b
d88'`?88P'__88b`?8888P'_`?888P'888P'__`?888P'
________d8b__________________________d8b
________?88__________________________?88
_________88b__________________________88b
_d8888b__888888b_?88___d8P__88bd88b___888__d88'_.
d8P'_`P__88P_`?8bd88___88___88P'_?8b__888bd8P'__?
88b_____d88___88P?8(__d88__d88___88P_d88888b_____
`?888P'd88'___88b`?88P'?8bd88'___88bd88'_`?88b,`?
YHBRT! YHL! FOAD! HASD!
Bwahahahah, you Lunix fuck!
You were double-reverse trolled, BSD fucktard!
Fact: You are dying.
But only God could revive *BSD. Since we agree God does not exist, we can therefore conclude that *BSD is dead.
The Year of Our Lord 2003 has been a particularly bad year for the "B"s,
- Bob Hope
- Buddy Ebsen
- Buddy Hackett
- Barry White
- BSD
This honored list of dead is but a small token of adieu from the many fans of the deceased.These dead were truly some American Icons. They will be missed.
Now, Apache uses a BSD style license but they have an open development model which allows them to take advantage of a very large developer pool in order to stay ahead of their competition. In fact although proprietary versions of Apache exist which perform better than the official releases, SGI has put out some open source patches which generate even larger performance boosts. This is the reason why they have such a strong showing in terms of market share.
BSD once had potential but the procedural problems they are experiencing hurt it when it comes to the market. I suspect that this is probably in part because the BSD teams are not interested in such things, and that is a shame... In fact, although I labeled it as an inferior OS, this is not due to lack of progress within BSD -- it has been progressing somewhat, but rather because all the improvements they make tend to be quickly copied by their competitors AND they lack the developer pool to stay ahead of this game (a problem which does not exist in the Linux or Apache communities, though for somewhat different reasons).
I don't think that there is enough widespread support for BSD to save the operating system. What must be done is an opening up of the development process OR a GPL-style restriction on redistribution. In many ways I favor the former.
Even in a worst case scenario, I don't see BSD completely dying. I think the developers are less into competition and more into a sort of idealized cooperation. As a result, even if BSD becomes more marginalized, I don't think that it will die outright. It will most likely outlive Netware, for example.
If you need yacc to parse a command line,
something is seriously wrong.
The ifconfig on Linux is a compatibility
wrapper. Native commands, like "ip" and
"ethtool", are more powerful and easier to
use as well. Through ifconfig, you can only
see an approximation of the true and correct
status of your network config. All the
advanced Linux concepts get brutally mapped
to BSD-style concepts. For example, Linux
lets you assign multiple IP addresses to a
single interface without using aliases.
Routing is different as well; the default
route, broadcast, and gateway are not what
you'd deal with in the native interface.
So a Linux user may as well delete ifconfig.
Using the native tools is much more sensible.