1. C++ / Говнокод #18074

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    static const char *
    inet_ntop4(src, dst, size)
      const u_char *src;
      char *dst;
      size_t size;
    {
      static const char fmt[] = "%u.%u.%u.%u";
      char tmp[sizeof "255.255.255.255"];
    
      if (SPRINTF((tmp, fmt, src[0], src[1], src[2], src[3])) > size) {
        errno = ENOSPC;
        return (NULL);
      }
      strcpy(dst, tmp);
      return (dst);
    }

    Запостил: blackhearted, 28 Апреля 2015

    Комментарии (3) RSS

    • Где здесь C++, blackhearted?
      Ответить
    • u_char src[4] = { 0, 0, 0, 0 };
      char dst[7];
      inet_ntop(src, dst, sizeof(dst)); // вылет за границу массива
      Ответить

    Добавить комментарий