domingo, mayo 30, 2004

Alternaticas a autoconf

Hace poco encontré un pequeño artículo sobre alternativas autoconf. Con el paso del tiempo me he convencido que su uso es anticuado. Que sea una estandar en los paquetes de software libre, no creo que lo hagan cómodo o rápido: perder el tiempo comprobando si existe o no stdlib.h, stdio.h o cualquiera de las cabeceras y librerias de POSIX, es tener un entorno tan poco estandar de desarrollo como raro.

Además, muchos de los ficheros de configuración generados no comprueban la existencia de varias versiones de productos (por ejemplo hace poco compilando un paquete de SNMP para Python me di cuenta que si tenias dos versiones de Python, te detecta la primera y no la segunda, sin ningún tipo de parámetro extra para indicar que versión quieres usar).

miércoles, mayo 26, 2004

RFC 1918 y los servidores de nombres raiz (root name server)

Leyendo full-disclosure he encontrado un dato curiosisimo: más del 30% de las queries que llegan a los servidores de nombres raíz proceden de direcciones reservadas para redes privadas (ver RFC1918), caunsando un problema de carga en la infraestructura de red. Todo el que tenga una red con estos rangos de direcciones y que acceda a Internet a través de una traducción de direccions (del inglés NAT, Network Addresss Traslation), debería asegurarse que ninguna dirección del rango privado sale sin traducir. Una simple ACL en los routers, quitaría de muchos problemas.

Perl hash howto

Acabo de encontrar este tutorial sobre el uso de hash en Perl (realmente prefiero python como lenguaje de script, pero de momento, nada puede compararse con la cantidad de módulos de perl que existen en CPAN)

martes, mayo 25, 2004

Tablas SNMP

Una de las cosas más curiosas que tiene el SNMP es como obtener la información de las MIB - management information base - que hace referencia a las tablas. La información de las mismas se obtiene en orden columna fila, frente al orden lexicográfico al que estamos acostumbrados de los identificadores. Aunque realmente si devuelve el orden lexicográfico de los oid, identificadores de objectos
14
25
36
Para más información, la sección 25.6 del maravilloso TCP/IP Illustrated Volumen 1

sábado, mayo 22, 2004

Pequeñas utilidades: read-edid

Durante mucho tiempo configurara las XFree86 en Linux, ha sido una tarea bastante laboriosa, en especial si no se tenia a mano las especificaciones exactas del monitor, en especial con monitores clónicos que no aparecian en las listas de configuración de las distribuciones Linux. A partir del año 1996, la mayoría de los monitores y tarjetas empezaron a soportar PnP, para una mejor autoconfiguración. Sin embargo, a pesar de que la versión 4.x de las XFree86 puede leer en ciertas tarjetas de video esta información, no siempre es posible. Por eso John Fremlin escribió read-edid, un programa para poder obtener toda esa información y que vuelcalas líneas necesarias para configurar el monitor. Gracias al mismo, pude conseguiir el modeline para mi Presario X1005AE.

jueves, mayo 20, 2004

Como obtener una copia completa del IE6SP1 en Windows 2000

Microsoft capó el instalador del Internet Explorer 6SP1 en Windows 2000 para que no pudiese bajarse toda la instalación, lo cual causa algún que otro dolor de cabeza. Hay una manera muy sencilla de poder hacer el cambio:
  • Bajarse el fichero de instalación del Internet Explorer 6SP1, ie6setup.exe
  • Descomprimirlo, con ie6setup.exe /c. Preguntará una carperta donde pondrá los ficheros que extrae.
  • Ejecutar el fichero ie6wzd.exe /d:1. Eso bajará todos los componentes del Explorer para todas las plataformas que soporta.
  • Copiar el fichero ie6setup.exe a la carpeta donde nos hayamos bajado los ficheros del explorer.
Ya tenemos todo lo necesario para ir instalando el Internet Explorer en varios ordenadores y ahorrando ancho de banda.

miércoles, mayo 19, 2004

Cuando los retornos de carro son un problema

En MSDOS las líneas de texto están delimitadas por los caracteres ASCII 10(LF) 13(CR). En Unix se usa CR. Esto crea un curioso problema cuando generas un fichero en MSDOS y quieres usarlo en una aplicación en Unix. Hace poco me enfrenté con este problema al instalar un jboss en Unix y desplegar un fichero .war de aplicación realizado en Windows. El resultado es que no se enteraba excesivamente bien del final de línea en el Unix, con los consiguientes problemas.

sábado, mayo 15, 2004

Gusano Dabber

dabber no sería más que otros de los gusanos que pueblan Internet, sino fuera porque utiliza una vulnerabilidad en el sasser para propagarse - concretamente un buffer overflow en el servidor ftp que lleva - . Que se empiece a tener noticias de la propagación de Dabber da una idea de los millones de máquinas infectados con Sasser. No deja de ser curioso que los escritores de virus empiecen a tener por objetivos estos troyanos. Me pregunto si en el futuro tendremos virus que actúan como vacunas contra otros virus.

viernes, mayo 14, 2004

Permisos en Unix

He escrito un pequeño documento explicando como son los permisos en un sistema de ficheros tipo Unix. Se aceptan sugerencias :)

miércoles, mayo 12, 2004

Practical File System Design with the Be File System

Dominic Giampaolo ha publicado en formato PDF su libro sobre diseño de sistemas de ficheros. Existe una reseña del mismo en Slashdot. Algunas de las características interesantes que tiene el BeFS son metadatos arbitrarios, índices, y consultas por atributos.

viernes, mayo 07, 2004

ASP, vbscript y control de errores

El control de errores en vbscript es sencillamente horroroso. Puedes deshabilitarlo usando la instrucción on error resume next, y comprobar si se ha producido algún error a través de Err.Number, siendo distinto de cero en caso de error. Puede activarse el control de errores de nuevo con on error goto 0. Incluso el on error goto linea de los antiguos BASIC, da más control del que ofrece vbscript. Si encima has usado lenguajes como Python con un estupendo control de errores a través de excepciones, ya es para volverse loco. Y dudo mucho que Microsoft quiera variar esto, en especial cuando está promocionando la plataforma .NET Algunos ejemplos del código espagueti que se genera: on error resume next file.WriteLine("...") if Err.Number=0 then file.WriteLine("...") end if if Err.Number=0 then file.WriteLie("...") end if on error goto 0

miércoles, mayo 05, 2004

Pequeño artículo sobre WiX

WiX es un software para generar paquetes de instalación de Microsoft. En la web de O'Reilly hay un artículo mostrando su uso a través de un pequeño ejemplo.

martes, mayo 04, 2004

iTunes 4.5

Aunque todavía no he probado a fondo la última versión de iTunes, hay algo que si he notado: la velocidad de carga es muy superior a la de la versión anterior. Sólo por eso, merece la pena actualizarse. Eso sí, con ciertos cambios en el esquema DRM que no le gustan a todo el mundo.