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

wait, really? padding with zeros maps to a different IP address than the non-padded version? Is that because a leading zero causes it to be interpreted as an octal number?


Yes.

    In [2]: socket.inet_aton('226.000.000.037')
    Out[2]: b'\xe2\x00\x00\x1f'

    In [3]: socket.inet_aton('226.000.000.37')
    Out[3]: b'\xe2\x00\x00%'

    In [4]: socket.inet_ntoa(b'\xe2\x00\x00\x1f')
    Out[4]: '226.0.0.31'

    In [5]: socket.inet_ntoa(b'\xe2\x00\x00%')
    Out[5]: '226.0.0.37'


Oh, wow.

I.. wow.

No words come to me!

Learn something new everyday!




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

Search: