Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Network services are defined by the presence, in a directory watched by listen, of executable files whose name is of the form <protocol><port>.

That seems a bit silly to me as it means something like rot1376 is tricky to parse correctly. I'd think it would make sense for the protocol to need to be separated from the port by a non-numeric character, like a hyphen. Like that it would be trivial to parse: just grab all the numeric characters from the end until we find the non-numeric character.



Rot13 is not a protocol. If you want to make a rot13 over tcp on port 13, your executable would be named tcp13. I thought the same mistake at first too.


Honesty, that’s trivial to parse, even if you don’t want to use or don’t have regex available: In C, e.g., just treat the name as a string and walk backwards from the last character until you find a non-digit; adjust for indexing, and you now know where the protocol ends and port begins.


I believe GP meant that you can't have protocols containing numbers, using rot13 as the example protocol on port 76. Though, as msk-lywenn said, rot13 isn't a real protocol, which don't really have numbers in their names.


rotthirteen76 would work


rotthirteen would "work", but it's not a protocol.

Actual protocols include tcp, udp, dccp, sctp, etc.


That explicitly wouldn't work in the example you're responding to


Exactly, it should use a separator. Consider a more realistic example, like http280 or h3443. Totally ambiguous.


True, and noted, but realistically, the only implemented protocol now is tcp, and the next one will be udp.

Historically, Plan 9 had IL as well.

Which transport protocol has a number in its name ?

If I implement one someday I'll add a separator.


l2tp

mic drop




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: