• [^] # Re: Vive les timestamp

    Posté par . En réponse au journal Le premier journal du vendredi de l'année (Le Zune plante). Évalué à 2.

    Evidemment qu'il s'agit de mauvaise programmation, mais tu connais des gens qui ne font jamais d'erreurs ? La mauvaise programmation comme tu l'appelles, c'est un truc avec lequel il faut vivre, si demain ton kernel arrete de fonctionner a cause d'un bug, mauvaise programmation ou pas, tu l'auras profond.

    Et le probleme c'est que ce genre de bugs se produit regulierement.

    cf. http://74.125.95.132/search?q=cache:7hxjPe0AUdYJ:www.irbs.ne(...)

    pour un exemple deja rapporte.

    Et plus important : http://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/usr.sbin(...)

    for (res = res0, s = -1; res != NULL; res = res->ai_next) {
    s = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
    if (s < 0) {
    emsg = "socket";
    continue;
    }

    if (connect(s, res->ai_addr, res->ai_addrlen)) {
    close(s);
    s = -1;
    emsg = "connect";
    continue;
    }

    break;
    }
    if (s < 0)
    err(1, "%s", emsg);

    if (read(s, &tim, sizeof(time_t)) != sizeof(time_t))
    err(1, "Could not read data");


    Voila un cas qui clairement posera probleme, et c'est du code en utilisation aujourd'hui donc.
    J'ai mis 5 minutes avec Google a trouver 2 exemples ou il y a un probleme, tu imagines bien qu'il y a en a beaucoup d'autres.