nanog mailing list archives
Re: Regular Expression for IPv6 addresses
From: Mark Andrews <marka () isc org>
Date: Wed, 10 Feb 2010 09:12:11 +1100
In message <alpine.DEB.1.10.1002091548170.25663 () red crap retrofitta se>, Thomas Habets writes:
On Fri, 5 Feb 2010, Mark Andrews wrote:And now for the trick question. Is ::ffff:077.077.077.077 a legal mapped address and if it, does it match 077.077.077.077?Forget IPv6. The first question is does 077.077.077.077 match 077.077.077.077 in IPv4?
I think you meant "does 077.077.077.077 match 77.77.77.77 in IPv4".
The answer is a long one full of different answers depending on who's doing the parsing (gethostbyname(), inet_aton(), inet_net_pton(), etc..) and on what OS. And also on many bugs.
Indeed. It's a minefield out there for application developers that want consistancy. Even when you develop your own some OS vendor will go and stuff it up on you.
And don't count on the documentation being right either, or parsers respecting standards (single unix or RFCs, or which one when they conflict). And don't expect an error code if you feed 080.080.080.080 into a parser, even one that *does* read it as octal. Don't prefix IP (v4) address octets with zero wether you expect it to be treated as octal or not. Just don't. World of hurt and all that. E.g.: http://kerneltrap.org/mailarchive/openbsd-bugs/2009/6/6/5882713/thread We should all do like one vendor I've seen where you enter the IP (v4) address in binary... and then pad with zeroes to whatever size html form wanted. Yes, this decade. --------- typedef struct me_s { char name[] = { "Thomas Habets" }; char email[] = { "thomas () habets pp se" }; char kernel[] = { "Linux" }; char *pgpKey[] = { "http://www.habets.pp.se/pubkey.txt" }; char pgp[] = { "A8A3 D1DD 4AE0 8467 7FDE 0945 286A E90A AD48 E854" }; char coolcmd[] = { "echo '. ./_&. ./_'>_;. ./_" }; } me_t;
-- Mark Andrews, ISC 1 Seymour St., Dundas Valley, NSW 2117, Australia PHONE: +61 2 9871 4742 INTERNET: marka () isc org
Current thread:
- Regular Expression for IPv6 addresses Richard E. Brown (Feb 04)
- Re: Regular Expression for IPv6 addresses Jeroen Massar (Feb 04)
- Re: Regular Expression for IPv6 addresses Mark Andrews (Feb 04)
- Re: Regular Expression for IPv6 addresses Jeroen Massar (Feb 04)
- Re: Regular Expression for IPv6 addresses Mark Andrews (Feb 04)
- Re: Regular Expression for IPv6 addresses sthaug (Feb 04)
- Re: Regular Expression for IPv6 addresses James Hess (Feb 06)
- Re: Regular Expression for IPv6 addresses Mark Andrews (Feb 06)
- Re: Regular Expression for IPv6 addresses Mark Andrews (Feb 04)
- Re: Regular Expression for IPv6 addresses isabel dias (Feb 05)
- Re: Regular Expression for IPv6 addresses Jeroen Massar (Feb 04)
- Re: Regular Expression for IPv6 addresses Thomas Habets (Feb 09)
- Re: Regular Expression for IPv6 addresses Mark Andrews (Feb 09)
- Re: Regular Expression for IPv6 addresses Valdis . Kletnieks (Feb 09)
- <Possible follow-ups>
- Re: Regular Expression for IPv6 addresses Richard E. Brown (Feb 06)