Acabo de revisar mi correo electrónico, y me encuentro con que mis dominios de no-ip.com (DNS Dinámico), estaban por expirar por no usarlos… es cuando me doy cuenta que no tenia el cliente para actualizar dichos dominios.
Con las advertencia de caducar el registro, bajé el tarball desde el sitio oficial, en su versión 2.1.4 (al 20 de febrero), lo descomprimí, y cuando realizé el ‘make’ para compilar el código… ¡¡horror!!, el código tiene advertencias!!
metano:~/noip-2.1.4 # make
gcc -Wall -g -O2 -Dlinux -DPREFIX=\"/usr/local\" noip2.c -o noip2
noip2.c: In function ‘get_all_device_names’:
noip2.c:2153: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 2 of ‘__builtin_strcmp’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 2 of ‘__builtin_strcmp’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 2 of ‘__builtin_strcmp’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 2 of ‘__builtin_strcmp’ differ in signedness
noip2.c:2153: warning: pointer targets in passing argument 2 of ‘strncmp’ differ in signedness
noip2.c:2155: warning: pointer targets in passing argument 1 of ‘__builtin_strchr’ differ in signedness
Decepcionado el código, voy a la linea 2155 del archivo noip2.c, y realizo el cambio respectivo para que todo compile sin advertencias. Pero me llevo una segunda sorpresa, al volver a ejecutar ‘make’.
metano:~/noip-2.1.4 # make
gcc -Wall -g -O2 -Dlinux -DPREFIX=\"/usr/local\" noip2.c -o noip2
noip2.c: In function ‘get_all_device_names’:
noip2.c:2155: warning: pointer targets in passing argument 1 of ‘__builtin_strchr’ differ in signedness
En este punto, fue cuando pensé… “la tercera es la vencida”, pero uff… me salvé… luego de eso, la compilación fue limpia.
Luego, el ‘make install’ corrio con éxito y la configuración fue escrita… actualizando mis DDNS y evitando que estos caducaran por inactividad.
PD: Si, no estoy tan loco como para asustarme con esto… pero si me reí mucho… y apropósito… acá les dejo el patch del archivo noip2.c.
PD2: ¿No tiene sentido el post?, claro!. Lo que pasa es que estoy apurado ahora! 🙂