La broma del sizeof(mac)

Iniciado por Kaxperday, 3 Octubre 2015, 13:47 PM

0 Miembros y 1 Visitante están viendo este tema.

Kaxperday

#10
Entiendo lo que dices, pero una capa extra adicional no creo que venga mal, pues aunque no falla al pasar los datos a la función si se altera el entorno puede fallar el valor pasado y lo copiaría como mac algo que no sería una mac y todo fallaría y sería muy cantoso, antes de guardar una víctima tengo que asegurarme bien de que al menos los datos tienen las dimensiones esperadas (siempre y cuando no generemos errores al tratarlo de remediar).

Cuando incluyo una victima a la lista (ip,mac):

Código (cpp) [Seleccionar]
void lista_victimas::añadir_victima(victima v)
{
if (strlen((char*)v.ip) >= sizeof(u_char)* 4 &&
strlen((char*)v.mac) >= sizeof(u_char)* 6)
victimas.push_back(v);
}


Así aseguro las dimensiones, una capa de seguridad adicional.
Cuando el poder económico parasita al político ningún partido ni dictador podrá liberarnos de él. Se reserva el 99% ese poder.

ivancea96

Y si se altera el entorno, podría cambiar solo el mac, y dejar un mac sin sentido.
Si se altera el entorno, las funciones podrían fallar.

La mac SIEMPRE va a tener 6 elementos, SALVO que tú le hayas puesto algo erroneo. Si ese no es el caso, entonces tendrá 6 elementos.

Otra cosa, es que quieras usar una clase o estructura.