<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<feed xmlns="http://www.w3.org/2005/Atom">

	<title>Planet FOSDEM</title>
	<!--<link rel="self" type="text/atom" href=""/>-->
	<link rel="alternate" type="text/html" href="http://planet.fosdem.org/"/>
	<id></id>
	<updated>2008-08-21T04:31:32+00:00</updated>
	<generator uri="http://www.planetplanet.org/">http://intertwingly.net/code/venus/</generator>

	<entry>
		<title>Philip Paeps: French code</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/french_code.html"/>
		<id>http://www.paeps.cx/weblog/code/french_code.html</id>
		<updated>2008-08-20T17:12:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;An application I've recently inherited is making my eyes bleed.  Its authors
felt it would be a good idea to write the application in &quot;French C&quot;.  All the
comments are in French, and there are wrapper functions (like &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;boucle&lt;/span&gt;&lt;/tt&gt;) for
for &quot;English&quot; C constructions.&lt;/p&gt;
&lt;p&gt;I've said it before: localization sucks.  French is a very nice language but
not for software.  Software is written in C and C looks a bit like English.&lt;/p&gt;
&lt;p&gt;Live with it.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=1qOt1K&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=1qOt1K&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=JVp6Ak&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=JVp6Ak&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=GU0IJK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=GU0IJK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: The travel adapted sausage</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/the_travel_adapted_sausage.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/the_travel_adapted_sausage.html</id>
		<updated>2008-08-17T11:54:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;&lt;em&gt;12:54 BST&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Our little devsummit in Cambridge is proceeding well.  Excellent dinner last
night, gracefully paid for by a large FreeBSD-using company.  Mark Murray
showed up too, it was good to finally meet in person.&lt;/p&gt;
&lt;p&gt;King's College is having it's so-called &quot;wedding season&quot;.  I learned that
graduates are allowed to get married there and many seem to take the
opportunity.  There was quite some drunken ritual chanting going on until
very, very late last night and when I checked out this morning, there were a
number of very hungover people queueing in front of me (Brits will queue for
anything?).&lt;/p&gt;
&lt;p&gt;This morning, we went punting on the Cam.  The weather was a bit drab earlier,
but the skies cleared and it was a very nice trip.  After punting, &lt;a href=&quot;http://maycontaintracesofbolts.blogspot.com/&quot; class=&quot;reference&quot;&gt;Dag-Erling&lt;/a&gt;
somehow managed to leave a travel adapter at a sausage place, which gave rise
to an interesting wordgame between me and Ollivier.&lt;/p&gt;
&lt;p&gt;I'm travelling back to Heathrow and Brussels later today.  Pity I'll be
missing the piss-up at Mark's place which appears to be scheduled this
evening, but that can't be helped.  Turns out that David is flying out from
Gatwick around the same time as I'm flying from Heathrow, so that should make
the train ride a bit less dull.&lt;/p&gt;
&lt;p&gt;Quite a lot of vimage work got done at this devsummit and I got a number of
interesting things done too.  I think I've found a way to unbreak the bridge
mayhem I caused, but I'll need a bit more thought.  I also volunteered to
mentor &lt;a href=&quot;http://www.links.org/&quot; class=&quot;reference&quot;&gt;Ben Laurie&lt;/a&gt; for a &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;src&lt;/span&gt;&lt;/tt&gt; commit bit.  He'll be working on OpenSSL
and with a bit of luck, we can get trick him into taking crypto(9) and
crypto(4) duty too. :-)&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=0cKAOK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=0cKAOK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=5xoh8k&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=5xoh8k&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=4A7daK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=4A7daK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Productive devsummit so far</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/productive_devsummit_so_far.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/productive_devsummit_so_far.html</id>
		<updated>2008-08-15T23:07:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;&lt;em&gt;00:07 BST&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Our developer summit here in Cambridge started off rather well today.  Robert
decided that a brisk half hour walk from King's to the computer lab was a good
start of the day.  I happen to agree.&lt;/p&gt;
&lt;p&gt;During the &quot;trying to get organized&quot; phase of the early morning, I sent out a
core report which spawned a little &lt;em&gt;discussion&lt;/em&gt; and committed a trivial patch
adding a &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;hw.ata.ata_dma_check_80pin&lt;/span&gt;&lt;/tt&gt; &lt;a href=&quot;http://svn.freebsd.org/viewvc/base?view=revision&amp;amp;revision=181753&quot; class=&quot;reference&quot;&gt;loader tunable&lt;/a&gt; to work around bugs
in systems which don't set the &quot;pin 34 is grounded&quot; bit in the ATA config
register to indicate that speeds faster than UDMA mode 2 (UDMA33) are okay.&lt;/p&gt;
&lt;p&gt;This makes the Soekris net5501 SATA experience a much happier one.  I'm told a
number of laptops and even blade servers have issues like this too.&lt;/p&gt;
&lt;p&gt;Just before committing the patch, I noticed that &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;marck&lt;/span&gt;&lt;/tt&gt; had submitted a
virtually identical one as a PR about a year ago.  I need to trawl the PR
database more often...&lt;/p&gt;
&lt;p&gt;In the afternoon, attended a weekly meeting of the &quot;security group&quot;.  &lt;a href=&quot;http://en.wikipedia.org/wiki/Markus_Kuhn&quot; class=&quot;reference&quot;&gt;Markus&lt;/a&gt;
made an interesting case for providers to &quot;sell distributed attacks&quot;, which
reminded me of why I've always looked upon academia with a certain level of
caution.  &quot;Warning, the real world may be very different from the one being
discussed in this room&quot;.  Nevertheless, it was good food for thought.  Stuff
to keep in mind when dealing with ISPs...&lt;/p&gt;
&lt;p&gt;Dinner at a very nice Thai place.  Dessert was something green of which I
didn't quite catch the name.  Tasty though.  Unfortunately, the King's bar was
closed when we returned from dinner, so a subgroup headed off to The Eagle.&lt;/p&gt;
&lt;p&gt;England has not yet realized that World War I has been over for a good while,
and pubs still close at 23:00 to ensure that factory workers building
artillery are in bed in time.  Grr...&lt;/p&gt;
&lt;p&gt;I liked the &quot;please keep this bar clear for returning glasses&quot; sign.  I'm sure
the girls at Delirium would love one of those for the next FOSDEM beer event
lest they get showered by returning beer glasses again.&lt;/p&gt;
&lt;p&gt;Tomorrow, I'll be looking at unbreaking some of the damage my bridge patch
from a couple of months ago caused.  There seem to be some subtle failure
modes in ARP and PFIL(9) which need to be addressed.  I've received a patch
for the ARP issue, but PFIL needs a bit more thought.&lt;/p&gt;
&lt;p&gt;I love developer summits.  Empties my laptop of patches!&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=D4ghRK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=D4ghRK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=0lO5Mk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=0lO5Mk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=aaJI1K&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=aaJI1K&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Minding the gap</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/travel/minding_the_gap.html"/>
		<id>http://www.paeps.cx/weblog/travel/minding_the_gap.html</id>
		<updated>2008-08-14T21:53:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;&lt;em&gt;22:53 BST&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;After a fairly uneventful flight, I found my way from Brussels to Heathrow
earlier today.  From there, I took the tube and the train to Cambridge where I
found King's College.  I am trying to decide if this is the oldest building
I've stayed in.&lt;/p&gt;
&lt;p&gt;On the way here, I learned that there are fourteen treacherous gaps to be
minded along the Piccadilly line from LHR terminal 1 to King's Cross, at least
another two at King's Cross and curiously not a single one between King's
Cross and Cambridge.  I have successfully minded each of these gaps.&lt;/p&gt;
&lt;p&gt;I also discovered (yet &lt;em&gt;again&lt;/em&gt;, gods damn it!) that it is not a good idea to
put a train ticket with a magnetic stripe in the same pocket as a mobilephone
which is desperately - if unsuccessfully - trying to find a network to talk
to.  It will be the usual fun trying to get that ticket refunded...  Funny
that my credit cards do not suffer from these problems.&lt;/p&gt;
&lt;p&gt;Anyway: I have arrived at Cambridge.  I am minding the gaps.  This island must
be the most sign-posted one in the world.  I don't know why this amuses me.
It always has. I will try to take pictures of some of the more amusing signs I
find.  The best ones so far, are the ones at the airport suggesting various
types of abuse you might like to try out on Her Majesty's Customs officers
which they will not tolerate.  There were quite a few modes of abuse I would
never have thought of without those very helpful signs!&lt;/p&gt;
&lt;p&gt;English beer hasn't changed.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=xs2kvK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=xs2kvK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=Egjq8k&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=Egjq8k&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=ZZgLPK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=ZZgLPK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Webcomics</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/life/webcomics.html"/>
		<id>http://www.paeps.cx/weblog/life/webcomics.html</id>
		<updated>2008-08-14T07:47:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Damn and blast webcomics!  Especially the ones which are amazingly well-drawn
and have a brilliant storyline.  Gaaah!  I spent until 02:30 this morning
reading through the archives of &lt;a href=&quot;http://anderslovesmaria.reneengstrom.com/&quot; class=&quot;reference&quot;&gt;Anders Loves Maria&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The occasional Swedishisms are hopelessly funny.  They probably make
absolutely no sense to anyone who doesn't know a Scandinavian language, but
let this be your excuse to learn one.&lt;/p&gt;
&lt;p&gt;I will never be able to say 'bork' with a straight face again.  Not that the
opportunity to say 'bork' often presents itself, but...&lt;/p&gt;
&lt;p&gt;Anyway.  Super comic!  And one without tshirts!  My closet is safe. :-)&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=R8excK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=R8excK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=ZJnurk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=ZJnurk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=UHMAXK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=UHMAXK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Making lists</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/travel/making_lists.html"/>
		<id>http://www.paeps.cx/weblog/travel/making_lists.html</id>
		<updated>2008-08-11T09:58:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;The details for my hiking trip in the wilderness of British Columbia are
getting sorted out.  This weekend I bought a new tent.  A tunnel-type, much
lighter and quicker to set up than my aging dome-type.  I also bought some
more wilderness-proof clothing.&lt;/p&gt;
&lt;p&gt;Last night a &lt;a href=&quot;http://wanderung.ca/&quot; class=&quot;reference&quot;&gt;Wanderung&lt;/a&gt; moderator sent me map references for the area I'll be
visiting and this morning, I ordered nice large laminated copies of the maps
from &lt;a href=&quot;http://maptown.com/&quot; class=&quot;reference&quot;&gt;Map Town&lt;/a&gt;.  Tim also sent me some tips on how to deal with bears (or
rather, how to avoid dealing with bears), those should come in handy!&lt;/p&gt;
&lt;img src=&quot;http://www.paeps.cx/images/weblog/20080811/92J01.jpg&quot; alt=&quot;92J01&quot; /&gt;
&lt;img src=&quot;http://www.paeps.cx/images/weblog/20080811/92I04.jpg&quot; alt=&quot;92I04&quot; /&gt;
&lt;p&gt;This weekend I'll be in Cambridge for a FreeBSD Developer Summit, so I'll have
to do some last minute shopping next weekend.&lt;/p&gt;
&lt;p&gt;Still looking for travel companions.  I posted a planning callout to the
Wanderung list.  I hope some people are interested.&lt;/p&gt;
&lt;p&gt;Making checklists of stuff not to forget.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=HWO0qK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=HWO0qK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=vu86Wk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=vu86Wk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=VZ00NK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=VZ00NK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Committed glxsb</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/committed_glxsb.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/committed_glxsb.html</id>
		<updated>2008-08-09T19:17:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Earlier this afternoon, I committed the &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;glxsb&lt;/span&gt;&lt;/tt&gt; driver to FreeBSD-CURRENT.
This was ported from OpenBSD by Patrick Lamaizière.  This driver deals with
the security block in the AMD Geode LX application processors.&lt;/p&gt;
&lt;p&gt;I am now cooking up patches to implement &lt;a href=&quot;http://www.freebsd.org/cgi/man.cgi?query=rndtest&quot; class=&quot;reference&quot;&gt;rndtest(4)&lt;/a&gt; and have been
investigating some ways to make it perform (even) better, in particular on
parallel loads.&lt;/p&gt;
&lt;p&gt;Initial performance tests show some fun results:&lt;/p&gt;
&lt;pre class=&quot;literal-block&quot;&gt;[400] (philip@detritus)~% /usr/bin/time -h \
&amp;gt; openssl enc -e -aes-128-cbc -k abcdefghi \
&amp;gt; -nosalt -in ./crypt -out /dev/null
        1m19.48s real           1m9.08s user            3.70s sys

[401] (philip@detritus)~% /usr/bin/time -h \
&amp;gt; openssl enc -e -aes-128-cbc -k abcdefghi \
&amp;gt; -nosalt -in ./crypt -out /dev/null -engine cryptodev
engine &quot;cryptodev&quot; set.
        34.22s real             1.51s user              6.88s sys
&lt;/pre&gt;
&lt;p&gt;Not too shabby.  But I'm sure we can do even better than this. :-)&lt;/p&gt;
&lt;p&gt;In particular, I'd like to try reducing the load on the kernel.  The driver
currently busy-loops waiting for the operation to complete because the
interrupts are very very slow.  For some reason, that feels wrong to me.&lt;/p&gt;
&lt;p&gt;We'll see where this goes. :-)&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=U5QY9K&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=U5QY9K&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=DVzPUk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=DVzPUk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=QsHCxK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=QsHCxK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: One time passwords</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/one_time_passwords.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/one_time_passwords.html</id>
		<updated>2008-08-08T19:34:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Because I'm paranoid, I use &lt;a href=&quot;http://en.wikipedia.org/wiki/One_time_password&quot; class=&quot;reference&quot;&gt;one time passwords&lt;/a&gt; for logging in when I don't
have my private key (translated: my laptop) with me.  For some reason, people
look at me strangely when I log in with a one time password because they think
it's difficult to set up or something.&lt;/p&gt;
&lt;p&gt;On FreeBSD, at least, it's amazingly easy to set up:&lt;/p&gt;
&lt;pre class=&quot;literal-block&quot;&gt;[522] (philip@carrot)~% opiepasswd -c
Adding philip:
Only use this method from the console; NEVER from remote. If you are using
telnet, xterm, or a dial-in, type ^C now or exit with no password.
Then run opiepasswd without the -c parameter.
Using MD5 to compute responses.
Enter new secret pass phrase:
Again new secret pass phrase:

ID philip OTP key is 499 ca0476
HAW JUDY DUTY GUN SONG MINK
&lt;/pre&gt;
&lt;p&gt;Linux distributions will probably want to make it a bit more difficult, but I
can't imagine them making it &lt;em&gt;much&lt;/em&gt; more difficult.  You'll probably just have
to jump through hoops to install &lt;a href=&quot;http://www.inner.net/opie&quot; class=&quot;reference&quot;&gt;OPIE&lt;/a&gt; or &lt;a href=&quot;http://en.wikipedia.org/wiki/S/Key&quot; class=&quot;reference&quot;&gt;S/Key&lt;/a&gt; or something similar.&lt;/p&gt;
&lt;p&gt;Next time you need to log in without having your private key nearby, the
password prompt will ask you for a one time password:&lt;/p&gt;
&lt;pre class=&quot;literal-block&quot;&gt;otp-md5 498 ca0476 ext
Password:
&lt;/pre&gt;
&lt;p&gt;Note the 498 above.  &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;opiepasswd&lt;/span&gt;&lt;/tt&gt; only told us 499, so you'll need to
use &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;opiekey&lt;/span&gt;&lt;/tt&gt; to calculate the response to 498.  Not too difficult:&lt;/p&gt;
&lt;pre class=&quot;literal-block&quot;&gt;[756] (philip@vimes)~% opiekey 498 ca0476
Using the MD5 algorithm to compute response.
Reminder: Don't use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:
AGO SINK ROLL ROWE ENDS WORE
&lt;/pre&gt;
&lt;p&gt;I like to print out a list of twenty or so one time passwords and carry them
around with me.  Easy!&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=zJM9rK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=zJM9rK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=6pfgik&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=6pfgik&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=FwymhK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=FwymhK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Thunderbird/Enigmail: fix quoting</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/08/thunderbirdenigmail-fix-quoting.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-5807423526890700811</id>
		<updated>2008-08-07T07:53:17+00:00</updated>
		<content type="html">At some point Thunderbird/Enigmail started quoting using &quot;|&quot; instead of the standard &quot;&amp;gt;&quot;.&lt;br /&gt;Finally bothered to find a way to fix this!&lt;br /&gt;&lt;br /&gt;When you have the &lt;code&gt;about:config&lt;/code&gt; extension, &lt;a href=&quot;http://www.mozilla-enigmail.org/forum/viewtopic.php?t=12&quot;&gt;read this thread on the enigmail forum&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;When not, do it by directly editing Thunderbird's &lt;code&gt;prefs.js&lt;/code&gt;:&lt;br /&gt;&lt;div style=&quot;background: black; color: #eee; padding: 0.5em;&quot;&gt;&lt;code&gt;for f in ~/.thunderbird/*/prefs.js; do &lt;br /&gt;echo 'user_pref(&quot;mailnews.send_plaintext_flowed&quot;, false);' &amp;gt;&amp;gt;&quot;$f&quot;;&lt;br /&gt;done&lt;/code&gt;&lt;/div&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Looking for travel companions</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/travel/looking_for_travel_companions.html"/>
		<id>http://www.paeps.cx/weblog/travel/looking_for_travel_companions.html</id>
		<updated>2008-08-03T20:04:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;I have a return ticket to Vancouver leaving 29 August and returning 15
September.  I don't have any &quot;real&quot; plans for what to do there yet, but I'm
vaguely planning in the direction of exploring the &lt;a href=&quot;http://www.env.gov.bc.ca/bcparks/explore/parkpgs/stein_val/&quot; class=&quot;reference&quot;&gt;Stein Valley Nlaka'pamux
Heritage Park&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;As I'm not suicidal, I'm looking for two or three travel companions to go
hiking with me.&lt;/p&gt;
&lt;p&gt;Suggestions for sites or newsgroups for hooking up hiking geeks would be
appreciated.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=4hHU9K&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=4hHU9K&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=NcvfBk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=NcvfBk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=bvIaRK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=bvIaRK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Warning: you cannot fly!</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/freedom/warning_you_cannot_fly.html"/>
		<id>http://www.paeps.cx/weblog/freedom/warning_you_cannot_fly.html</id>
		<updated>2008-08-03T16:31:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Yes, it's that time of the year again.  There is nothing newsworthy to report,
so &lt;em&gt;other things&lt;/em&gt; are being reported.  This makes newspapers and their online
equivalents all the more interesting to read!&lt;/p&gt;
&lt;p&gt;Today, &lt;a href=&quot;http://www.demorgen.be/&quot; class=&quot;reference&quot;&gt;De Morgen&lt;/a&gt; reports on the &lt;a href=&quot;http://www.demorgen.be/dm/nl/994/Weirdo/article/detail/367923/2008/08/03/Paddogebruiker-springt-uit-raam-in-Den-Haag.dhtml&quot; class=&quot;reference&quot;&gt;untimely demise&lt;/a&gt; of a gentleman who decided
to jump out of a window after reacting badly to a &lt;a href=&quot;http://en.wikipedia.org/wiki/Paddo&quot; class=&quot;reference&quot;&gt;paddo&lt;/a&gt; dinner.  Curiously,
the man didn't expire immediately after learning that he couldn't fly.  For
some reason, the oxygen-supply in the ambulance exploded when the operators
tried to use it to keep the man alive.&lt;/p&gt;
&lt;p&gt;Interesting case of sensationalist reporting.  I bet that if they'd reported
on this as &quot;a man who jumped out of a window died after an oxygen bottle
intended to revive him exploded in the ambulance&quot;, a number of people would
make noise about the maintenance of ambulances.  Instead, many people will
just write this off as &quot;just another confused psilocybinophile&quot; taking one
trip too many.&lt;/p&gt;
&lt;p&gt;Perhaps it's time to insist on warning labels &quot;you cannot fly&quot; being added to
mushroom packaging?&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=1u75TK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=1u75TK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=3TrvJk&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=3TrvJk&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=SAWeUK&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=SAWeUK&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: ITIL v3 Foundations recommended</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/08/02/itil-v3-foundations-recommended"/>
		<id>http://christophe.vandeplas.com/101 at http://christophe.vandeplas.com</id>
		<updated>2008-08-02T13:23:00+00:00</updated>
		<content type="html">&lt;p&gt;Last week I followed a course called ITIL v3 Foundations. During three days you get an overview of the &lt;a href=&quot;http://en.wikipedia.org/wiki/ITIL&quot;&gt;ITIL&lt;/a&gt; principles and terminology.&lt;br /&gt;
If you're busy in the IT services world, I really advise you to follow the course. The things you'll see are usually logic and obvious but putting them all together give a more clear view over the whole process. Another useful extra is that you'll recognize and understand the terminology better. This terminology has become a kind of standard so it's not only 'yet new acronyms to learn' ;-)&lt;/p&gt;
&lt;p&gt;Oh, btw, if you subscribe for this course at &lt;a href=&quot;http://www.dolmen.be&quot;&gt;Dolmen&lt;/a&gt; during the summer you'll get the exam for free. &lt;a href=&quot;http://www.dolmen.be/NL/Promo/itilfoundations.htm&quot;&gt;More info here&lt;/a&gt;. Version 3 is currently given by Tom Segers, next to his daily consultancy for our customers he gives courses regularly and does a great job.&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: Hacking at Random 2009</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/31/hacking-random-2009"/>
		<id>http://christophe.vandeplas.com/100 at http://christophe.vandeplas.com</id>
		<updated>2008-07-31T20:30:21+00:00</updated>
		<content type="html">&lt;p&gt;Don't forget to reserve a week in your agenda around August 2009. After WTH and CCC2k7 &lt;a href=&quot;http://har2009.org&quot;&gt;HAR&lt;/a&gt; is coming. To stay updated don't forget to subscribe to their &lt;a href=&quot;http://har2009.org/?feed=rss2&quot;&gt;RSS feed&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;In 1989 a great tradition started with GHP (Galactic Hacker Party), which continued four years later in 1993 with HEU (Hacking at the End of the Universe), &lt;a href=&quot;http://www.hip97.nl/&quot; target=&quot;_blank&quot; title=&quot;HIP97&quot;&gt;HIP&lt;/a&gt; (Hacking In Progress) in 1997, &lt;a href=&quot;http://www.hal2001.org/&quot; target=&quot;_blank&quot; title=&quot;HAL2001&quot;&gt;HAL&lt;/a&gt; (Hacking At large) in 2001 and finally &lt;a href=&quot;http://wiki.whatthehack.org/&quot; target=&quot;_blank&quot; title=&quot;What the Hack&quot;&gt;WTH&lt;/a&gt; (What The Hack) in 2005. We want to continue this tradition in 2009 with another great outdoor hacker event.&lt;/p&gt;
&lt;p&gt;The name is HAR: Hacking At Random 2009.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://xkcd.com/221/&quot;&gt;&lt;img src=&quot;http://imgs.xkcd.com/comics/random_number.png&quot; alt=&quot;xkcd cartoon&quot; style=&quot;display: inline;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: 5 years after a change in attitude</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/31/5-years-after-change-attitude"/>
		<id>http://christophe.vandeplas.com/99 at http://christophe.vandeplas.com</id>
		<updated>2008-07-31T19:08:34+00:00</updated>
		<content type="html">&lt;p&gt;It has been approximately 5 years I finished using stolen or pirated software. I must admit: &lt;b&gt;I love it!&lt;/b&gt;&lt;br /&gt;
I love the look on the face of others when they hear I have no illegal software on my machine.&lt;br /&gt;
I love the feeling of being legit with all that software.&lt;br /&gt;
I love to help others do their first steps in this uncommon world.&lt;br /&gt;
And no, I love my money and don't spend it when it's not necessary.&lt;/p&gt;

&lt;h3&gt;It's all about the attitude.&lt;/h3&gt;
&lt;p&gt;The most difficult part is the &lt;b&gt;attitude&lt;/b&gt; that needs to change. &lt;br /&gt;My previous attitude was to look for a well known brand, download the software, crack it and play with it. If it could do what I needed it for I kept using it. But what with all the unused features? What with the price of this software? That's not important, it's &lt;i&gt;&quot;free&quot;&lt;/i&gt; &lt;small&gt;says the thief&lt;/small&gt;.&lt;/p&gt;
&lt;p&gt;Like with everything in this world there are different options you can choose from. But do we have the choice with software?&lt;/p&gt;
&lt;p&gt;Sure we have. I usually see two different options: a) use open source software or b) find an alternative that is worth it's price.&lt;br /&gt;
Many &lt;small&gt;(almost all)&lt;/small&gt; open source software packages are available for free. Many are even of a great quality, but finding the right packet is difficult. There is a great site around called &lt;a href=&quot;http://www.osalt.com/&quot;&gt;&lt;b&gt;osalt&lt;/b&gt;&lt;/a&gt;. It's a huge list with well known commercial software and their similar alternatives in the open source world. There is a short description and a list of supported operating systems. Be sure to check out &lt;a href=&quot;http://www.osalt.com/&quot;&gt;this site&lt;/a&gt; and find what you need.&lt;/p&gt;
&lt;p&gt;In the rare case it is possible that you can't find what you need, just look around for other software that is less expensive. Dare to try free beta's, usually when pre-ordering you get a reduction.&lt;/p&gt;
&lt;h3&gt;aether - Mac OS X&lt;/h3&gt;
&lt;p&gt;On my Mac I have three commercial software packages that need to be payed for. The first one is &lt;a href=&quot;http://www.apple.com&quot;&gt;Mac OS X&lt;/a&gt;, but this one I payed for when buying the computer.&lt;/p&gt;
&lt;p&gt;The second one is &lt;a href=&quot;http://www.vmware.com/products/fusion/&quot;&gt;VMWare Fusion&lt;/a&gt;. When I was in then need for a hypervisor on my Mac the only open source alternative was &lt;a href=&quot;http://christophe.vandeplas.com&quot;&gt;Q&lt;/a&gt;. Unfortunately it had a huge performance impact on my machine. So I tried Fusion's beta program. The product worked very well and a few months before the final release there was a 50% off from the price of $80 making it $40 or €30 (by then).&lt;br /&gt;Right now you can use &lt;a href=&quot;http://www.virtualbox.org/&quot;&gt;VirtualBox&lt;/a&gt; as alternative, but that wasn't available yet when I needed it.&lt;/p&gt;
&lt;p&gt;The third commercial software is called &lt;a href=&quot;http://bibblelabs.com/index.html&quot;&gt;Bibble&lt;/a&gt;. I couldn't find a good open source alternative that ran on Mac and Adobe Lightroom 2 with it's $300 is really to expensive for me. So I bought Bibble that delivers the required features for $130 or €83.&lt;/p&gt;
&lt;p&gt;What about the rest? It's fairly simple here's a short list:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Browsing - &lt;a href=&quot;http://www.mozilla.com/en-US/firefox/&quot;&gt;Mozilla Firefox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Email - &lt;a href=&quot;http://www.mozilla.com/en-US/thunderbird/&quot;&gt;Mozilla Thunderbird&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Office Suite - &lt;a href=&quot;http://www.openoffice.org/&quot;&gt;OpenOffice.org&lt;/a&gt; (or NeoOffice in the past)&lt;/li&gt;
&lt;li&gt;Chat - &lt;a href=&quot;http://www.adiumx.com/&quot;&gt;Adium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Launcher - &lt;a href=&quot;http://www.blacktree.com/projects/quicksilver.html&quot;&gt;Quicksilver&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Notification - &lt;a href=&quot;http://growl.info/&quot;&gt;Growl&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Video - &lt;a href=&quot;http://www.videolan.org/vlc/&quot;&gt;VLC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Burning - &lt;a href=&quot;http://burn-osx.sourceforge.net/&quot;&gt;Burn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;(s)FTP - &lt;a href=&quot;http://cyberduck.ch/&quot;&gt;Cyberduck&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Code editor - &lt;a href=&quot;http://smultron.sourceforge.net/&quot;&gt;Smultron&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Backup - &lt;a href=&quot;http://www.grapefruit.ch/iBackup/&quot;&gt;iBackup&lt;/a&gt; &lt;small&gt;(not open source, free for personal use)&lt;/small&gt;&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;sws00448 - Microsoft Windows&lt;/h3&gt;
&lt;p&gt;This is the computer I have from my company. I'm 'forced' to use many commercial software but they do pay for it. So it's not really my problem. Let's skip that boring non-Office or administrative software if you want.&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Browsing - &lt;a href=&quot;http://www.mozilla.com/en-US/firefox/&quot;&gt;Mozilla Firefox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Full-Disk Encryption - &lt;a href=&quot;http://www.truecrypt.org&quot;&gt;TrueCrypt&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Secure Erasing - &lt;a href=&quot;http://www.heidi.ie/eraser/&quot;&gt;Eraser&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Office Suite 2- &lt;a href=&quot;http://www.openoffice.org/&quot;&gt;OpenOffice.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;PortableApps - &lt;a href=&quot;http://portableapps.com/&quot;&gt;Portable Apps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Chat - &lt;a href=&quot;http://www.pidgin.im/&quot;&gt;Pidgin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Launcher - &lt;a href=&quot;http://www.launchy.net/&quot;&gt;Launchy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Video - &lt;a href=&quot;http://www.videolan.org/vlc/&quot;&gt;VLC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Burning - &lt;a href=&quot;http://infrarecorder.sourceforge.net/&quot;&gt;Infrarecorder&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;(s)FTP - &lt;a href=&quot;http://filezilla-project.org/&quot;&gt;FileZilla&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Code editor - &lt;a href=&quot;http://notepad-plus.sourceforge.net/uk/site.htm&quot;&gt;Notepad++&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Shell - &lt;a href=&quot;http://www.cygwin.com/&quot;&gt;Cygwin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;neptunus - Linux / Ubuntu&lt;/h3&gt;
&lt;p&gt;No need to make a list here. For all the software you want just got to the &lt;i&gt;&quot;Add/Remove Software&quot;&lt;/i&gt; menu item. In contrary to some other Operating Systems you can really add software in this place.&lt;/p&gt;

&lt;h3&gt;Conclusion: I changed my attitude&lt;/h3&gt;
&lt;p&gt;Do I miss something on my machine? No, and I'm really happy with the things I use, and (almost) &lt;b&gt;all for free&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Jump on the bus and try out &lt;a href=&quot;http://www.osalt.com/&quot;&gt;free software&lt;/a&gt;.&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>FOSDEM news: Kickoff BBQ</title>
		<link rel="alternate" type="text/html" href="http://fosdem.org/2009/node/148"/>
		<id>http://fosdem.org/148 at http://fosdem.org/2009</id>
		<updated>2008-07-30T19:17:55+00:00</updated>
		<content type="html">&lt;p&gt;Last Saturday some fellow FOSDEM organizers joined for the FOSDEM 2009 kickoff BBQ. The meteorological institute predicted a lot of rain, but the Open Source gods were in a good mood and gave us a fantastic weather. Some of us even had a swim as you can see.&lt;/p&gt;
&lt;p&gt;Don't forget to subscribe to the &lt;a href=&quot;http://fosdem.org/rss.xml&quot;&gt;RSS feed&lt;/a&gt; to stay tuned.&lt;/p&gt;
&lt;img src=&quot;http://fosdem.org/2009/files/pic/200807-meeting1.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://fosdem.org/2009/files/pic/200807-meeting2a.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;&lt;img src=&quot;http://fosdem.org/2009/files/pic/200807-meeting2b.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://fosdem.org/2009/files/pic/200807-meeting3.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://fosdem.org/2009/files/pic/200807-meeting4.jpg&quot; alt=&quot;&quot; title=&quot;&quot; /&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://fosdem.org/2009</uri>
		</author>
	</entry>

	<entry>
		<title>Ralph Meijer: XMPP and Social Networks, part 2: Nodes</title>
		<link rel="alternate" type="text/html" href="http://ralphm.net/blog/2008/07/30/xmpp_social_networks_2"/>
		<id>http://ralphm.net/blog/2008/07/30/xmpp_social_networks_2</id>
		<updated>2008-07-30T15:25:02+00:00</updated>
		<content type="html">&lt;p&gt;In &lt;a href=&quot;http://ralphm.net/&quot;&gt;part 1&lt;/a&gt; I wrote about what you can
        subscribe to and how a social network service will send out
        notifications. I often used &lt;em&gt;node&lt;/em&gt; as the thing
        you subscribe to, a term comes directly from the &lt;a href=&quot;http://www.xmpp.org/extensions/xep-0060.html&quot;&gt;XMPP Publish
          Subscribe&lt;/a&gt; specification. In other publish-subscribe
        implementations this is often referred to as
        &lt;em&gt;topic&lt;/em&gt;. Nodes are kept by a publish-subscribe
        service, and, among other things, this service is responsible for
        keeping the list of subscribers and sending out notifications.&lt;/p&gt;

      &lt;p&gt;Publish-subscribe services currently come in two forms: dedicated
        publish-subscribe services with their own domain (e.g.
        &lt;code class=&quot;literal&quot;&gt;pubsub.ik.nu&lt;/code&gt;) and publish-subscribe services tied
        to a user account (often mentioned in combination with the &lt;a href=&quot;http://www.xmpp.org/extensions/xep-0163.html&quot;&gt;Personal Eventing
          Protocol&lt;/a&gt;, also known as PEP). In the latter case, nodes are
        kept at the bare JID of a user's account (e.g.
        &lt;code class=&quot;literal&quot;&gt;ralphm@ik.nu&lt;/code&gt;. Personal pubsub-nodes have nice
        properties, like the ability to directly associate a particular node
        with a person, and the possibility of doing access control on the
        user's contact list (roster).&lt;/p&gt;

      &lt;h4&gt;Node organization&lt;/h4&gt;
        

        &lt;p&gt;In the context of federating social networks, a service needs to
          decide where to put the nodes it wants to allow other entities to
          subscribe to and send out notifications from. In some cases it makes
          sense to keep nodes at user accounts, though in some other cases it
          is better to provide the nodes at the domain of the service itself.
          This depends on the nature of the social objects and the
          subscribable unit you provide. Let's explore some use cases.
        &lt;/p&gt;

        &lt;h5&gt;Jaiku&lt;/h5&gt;
          

          &lt;p&gt;In &lt;a href=&quot;http://jaiku.com/&quot;&gt;Jaiku&lt;/a&gt;, social
            objects (microblog posts and aggregated items like photos,
            bookmarks, etc), are organized in streams. Streams are tied to
            either a user, or a channel, and don't change ownership. The
            social objects themselves are static, once created, they cannot be
            edited. They can have comments associated with them, but those
            also cannot be edited. The only thing that can happen to streams,
            stream items, and comments is deletion.&lt;/p&gt;

          &lt;p&gt;Here, it makes sense to have a node for each stream, and
            possibly a stream for the comments to each stream item. Those can
            be tied to the owner's JID (e.g.
            &lt;code class=&quot;literal&quot;&gt;ralphm@jaiku.com&lt;/code&gt; or
            &lt;code class=&quot;literal&quot;&gt;#jabber@jaiku.com&lt;/code&gt;). Another possible node could
            be: all comments by a person. Another node an entity might want to
            subscribe to is: all public microblog posts. Such a node would be
            associated with the domain of the service rather than any
            particular user's JID.&lt;/p&gt;

        

        &lt;h5&gt;anyMeta&lt;/h5&gt;
          

          &lt;p&gt;The company I work for, &lt;a href=&quot;http://www.mediamatic.nl/&quot;&gt;Mediamatic Lab&lt;/a&gt; has a
            (proprietary) CMS called &lt;a href=&quot;http://www.anymeta.net/&quot;&gt;anyMeta&lt;/a&gt;. Instead of
            'content', the C in CMS here stands for Community, to highlight
            the social network properties it provides. anyMeta is a highly
            semantic system that deals in &lt;em&gt;thing&lt;/em&gt;s (a
            person, an article, an event, a blog), and
            &lt;em&gt;edge&lt;/em&gt;s (the relations between things, each
            with a predicate like friend-of, author-of, etc). I mainly work on
            federating instances of anyMeta.&lt;/p&gt;

          &lt;p&gt;Things in anyMeta are usually editable, so it makes sense to
            want to keep informed about changes. For example, an article can
            have a large number of edits, and a person might move, change
            employers or have other changes to his profile. Thus, we chose to
          at least provide each thing as a subscribable unit. Upon creating a
          thing, a new node is created, and a representation of the thing is
          published to the node. Editing a thing, results in subsequent
          publishes. Subscribers will receive notifications as the node gets
          published to.&lt;/p&gt;

          &lt;p&gt;We organized the nodes in a flat namespace, tied to a domain,
            rather than a user. One reason is that the owner of any particular
            thing might change. Tying a node to the first owner, and then
            needing to move it when the owner changes, is cumbersome.&lt;/p&gt;

        

      

      &lt;h4&gt;Node naming&lt;/h4&gt;
        

        &lt;p&gt;Each node has an identifier that is unique within the
          publish-subscribe service holding them. So you could have two nodes
          named &lt;code class=&quot;literal&quot;&gt;updates&lt;/code&gt; tied to two different users. Node
          identifiers are opaque; one should not derive meaning from how the
          node identifier looks. Embedded slashes might suggest some
          hierarchy, for example, but an application should not assume that
          such a hierarchy actually exists.&lt;/p&gt;

        &lt;p&gt;That said, it makes perfect sense to use logical, human readable
          identifiers for nodes. They might even be very similar to the URI
          layout of the service's web site. Let's check what one could do for
          the examples given above.&lt;/p&gt;


        &lt;h5&gt;Jaiku&lt;/h5&gt;
          

          &lt;p&gt;It makes sense to have the node identifier for the regular
            posts (called presence) be &lt;code class=&quot;literal&quot;&gt;presence&lt;/code&gt; and the
            nodes for the individual posts (with comments)
            &lt;code class=&quot;literal&quot;&gt;presence/123456&lt;/code&gt;, where the number is the same
            as used in the web page for that post. Those two examples could be
            tied to a JID representing me at Jaiku:
            &lt;code class=&quot;literal&quot;&gt;ralphm@jaiku.com&lt;/code&gt;.&lt;/p&gt;

          &lt;p&gt;The node for all public posts could be called
            &lt;code class=&quot;literal&quot;&gt;explore&lt;/code&gt; and located at the JID of the whole
            service: &lt;code class=&quot;literal&quot;&gt;jaiku.com&lt;/code&gt;. This would be similar to
            the web site, where all public posts can be viewed at &lt;a href=&quot;http://jaiku.com/explore&quot;&gt;http://jaiku.com/explore&lt;/a&gt;.&lt;/p&gt;

          &lt;p&gt;It might also make sense to have a dedicated node for a user's
            profile information, that can be retrieved and presented at a
            service or application that consumes the social object updates. At
            least a (full) name and some icon or headshot would be nice to
            have there. Obviously, subscribing to such a node would mean that
            future profile changes will also propagate to the consuming
            entities. An example identifier would be
            &lt;code class=&quot;literal&quot;&gt;profile&lt;/code&gt;, to be kept at the user's JID.&lt;/p&gt;

        

        &lt;h5&gt;anyMeta&lt;/h5&gt;
          

          &lt;p&gt;In anyMeta, each thing has an identifier, that could be used
            for the node identifier as well. However, in the current
            implementation, all nodes are held by a loosely coupled, generic
            publish-subscribe service that caters multiple anyMeta instances.
            We chose to use unique identifiers as generated by the
            publish-subscribe service, which don't have any relation with the
            thing identifier.&lt;/p&gt;

          &lt;p&gt;As you might have guessed, some of the stuff being discussed
            here has already been implemented in anyMeta. The
            publish-subscribe service used is &lt;a href=&quot;http://idavoll.ik.nu/&quot;&gt;Idavoll&lt;/a&gt;. It has grown an
            &lt;a href=&quot;http://idavoll.ik.nu/wiki/HTTP_Interface&quot;&gt;HTTP
              interface&lt;/a&gt; that is used (internally) to create new nodes,
            publish items that represent things, and subscribe to, and receive
            notifications from, remote publish-subscribe nodes. The thing that
            holds &lt;a href=&quot;http://www.mediamatic.net/person/24879&quot;&gt;my
              Mediamatic profile&lt;/a&gt; is represented by the node
            &lt;code class=&quot;literal&quot;&gt;generic/4efe2253-2242-4e01-bfdf-957cc2a9481d&lt;/code&gt; at
            &lt;code class=&quot;literal&quot;&gt;pubsub.mediamatic.nl&lt;/code&gt;. All things in this site,
            but also the &lt;a href=&quot;http://www.picnicnetwork.org/&quot;&gt;PICNIC
              site&lt;/a&gt;, have nodes like this. In a future post I will
            explore what we do with these nodes.&lt;/p&gt;

        
        
      

      &lt;p&gt;In this part, we explored how one could organize the nodes that
        entities can subscribe to to get updates. Some might be tied to the
        (virtual) JID of the user's account, or associated with the JID of the
        service itself. Node identifiers might be human guessable, and like
        the web URIs, or could be seemingly random opaque strings.
        Implementations that consume subscribe to, and consume notifications
        from, the nodes at social networking services, should not assume
        anything about the organization and naming of the providing service.
        This presents a challenge for the next episode: how does one know
        which nodes are there and what they are called? So, up next:
        discovery. Homework assignment: look carefully at the HTML of my
        Mediamatic profile page.&lt;/p&gt;</content>
		<author>
			<name>ralphm</name>
			<uri>http://ralphm.net/blog/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: The price of the bleeding edge</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/Linux/the_price_of_the_bleeding_edge.html"/>
		<id>http://www.paeps.cx/weblog/Linux/the_price_of_the_bleeding_edge.html</id>
		<updated>2008-07-30T08:10:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;&lt;a href=&quot;http://ploum.frimouvy.org/?194-hardy-is-a-hard-time&quot; class=&quot;reference&quot;&gt;Lionel&lt;/a&gt; reports that his fancy Ubuntu toy is starting to suck more and more.
It won't surprise anyone that the words &lt;em&gt;I told you so&lt;/em&gt; are on my lips.&lt;/p&gt;
&lt;p&gt;As I've blogged before (at length!) Ubuntu is not a very good operating
system.  It completely ignores decades of proven Unixy technology (like the
command line and the toolbox approach) and presents users with complicated
experimental solutions to simple problems which have already been adequately
fixed ages ago.&lt;/p&gt;
&lt;p&gt;The predictable result is that in an overwhelming number of use-cases Ubuntu
simply does not work.  The only way to get it to do anything at all, is to
forget everything you know about computers and to perform a lot of
counterintuitive jumping-through-hoops.  Hours of frustrating mouse-clicking
and trying to figure out what fuzzy (&lt;em&gt;friendly&lt;/em&gt;) messages and prompts actually
mean.&lt;/p&gt;
&lt;p&gt;Engineers have a very good description for software like this: &lt;em&gt;the bleeding
edge&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The price of the bleeding edge is blood.  Engineers know this.  They also know
that if bleeding edge software breaks and extracts blood, they get to keep the
pieces and they're on their own for restoring their blood volume.&lt;/p&gt;
&lt;p&gt;Not-very-amusingly, Ubuntu targets their bleeding edge software to novice
users.  Weren't novices in particular best served with tried and trusted
technology?  Nobody in their right mind would throw bleeding edge software at
novices!&lt;/p&gt;
&lt;p&gt;I guess this says something about the Ubuntu mindset.  Do they realize that
the more they diverge from the path of tried and trusted technology, the more
blood they will extract?  I expect to see many more blogs like Lionel's in the
coming months.&lt;/p&gt;
&lt;p&gt;Play with fire.  Get burnt.&lt;/p&gt;
&lt;p&gt;The sad thing, of course, is that innocent novices who have been told that
Ubuntu is Linux, will now blame Linux for all the suckage.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=L4qnTJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=L4qnTJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=7Tzjuj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=7Tzjuj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=CTIrNJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=CTIrNJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: FOSDEM circus restarted</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/fosdem/fosdem_circus_restarted.html"/>
		<id>http://www.paeps.cx/weblog/fosdem/fosdem_circus_restarted.html</id>
		<updated>2008-07-27T12:22:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Conferences don't organize themselves.  This weekend we kicked off the
organization of FOSDEM 2009 with our annual kickoff BBQ at Jan-Frederik's.&lt;/p&gt;
&lt;p&gt;We were extremely lucky with the weather.  A number of water-loving people
even decided to cool off in the swimming pool.&lt;/p&gt;
&lt;p&gt;There goes my free time for another six months.  Yay. :-)&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=GBeUFJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=GBeUFJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=lovr5j&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=lovr5j&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=kvmaBJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=kvmaBJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Ralph Meijer: XMPP and Social Networks, part 1: Notifications</title>
		<link rel="alternate" type="text/html" href="http://ralphm.net/blog/2008/07/26/xmpp_social_networks_1"/>
		<id>http://ralphm.net/blog/2008/07/26/xmpp_social_networks_1</id>
		<updated>2008-07-26T14:12:11+00:00</updated>
		<content type="html">&lt;p&gt;The use of XMPP publish-subscribe in federation and third-party
				applications deviates a bit from the standard use-case. Usually
				publishing, subscribing and receiving notifications happen through
				the same protocol on specific (leaf) nodes. Entities subscribe to a
				node that represents a particular thing they are interested in
				getting updates for, and when an item is published to that node,
				these subscribers will receive a notification for that item.&lt;/p&gt;

			&lt;p&gt;For federating social networks, the focus is on the exchange of
				updates on social objects or comments between services. For
				third-party applications, the most important thing is getting
				updates, preferably as soon as possible. So, for both of those use
				cases, receiving notifications through XMPP gives it an edge over
				HTTP: no polling, lower latency, less connections.&lt;/p&gt;

			&lt;p&gt;How these items are published, does not really matter that
				much. What you will typically see is that services somehow have a
				new item available (submission via the web, SMS, e-mail or a
				web-based API) and want to expose that through XMPP. Posting a new
				update through XMPP from a third-party client usually does not
				provide an advantage over existing web-based APIs.&lt;/p&gt;

			&lt;p&gt;For a service like Jaiku, Twitter or Identi.ca to provide XMPP
				publish-subscribe support, it is important to define the
				&lt;em&gt;subscribable unit&lt;/em&gt; and provide that as a
				node. Such a node will usually not be published to directly, but is
				more of an aggregate node. Examples would be: all updates by a
				particular user, all updates in particular channel, all updates by
				a user and his contacts, all public updates. An other example could
				be: all comments on a particular social object.&lt;/p&gt;

			&lt;p&gt;Conceptually, all such aggregate nodes are internally
				subscribed to a particular subset of new and updated social objects
				and comments. You might even implement it exactly like that. Think
				of a prospective search that is captured by a node: every time a
				new item comes into the service, it is determined which of the
				provided nodes would be a match for this item, based on author,
				contact lists and permissions. Subsequently, for all of those
				nodes, a notification will be sent out to its subscribers. Telling
				items apart in this scenario is then likely not done using the
				service JID, node identifier of item identifier, but using some
				identifier in the payload, like Atom's &lt;code class=&quot;literal&quot;&gt;id&lt;/code&gt;
				element, although those other identifiers might provide a
				context.&lt;/p&gt;

			&lt;p&gt;For those familiar with the concept of XMPP publish-subscribe
				collection nodes: those would be a special form of aggregate nodes
				that make it explicit what their relationship to the nodes they
				aggregate items for is.&lt;/p&gt;</content>
		<author>
			<name>ralphm</name>
			<uri>http://ralphm.net/blog/</uri>
		</author>
	</entry>

	<entry>
		<title>Ralph Meijer: XMPP Summit #5: XMPP and Social Networks</title>
		<link rel="alternate" type="text/html" href="http://ralphm.net/blog/2008/07/26/xmpp_summit_5"/>
		<id>http://ralphm.net/blog/2008/07/26/xmpp_summit_5</id>
		<updated>2008-07-26T14:12:05+00:00</updated>
		<content type="html">&lt;p&gt;The major topics on the 5th XMPP Summit were Jingle, and XMPP
				as a complementary protocol next to HTTP for building social
				networking services, as &lt;a href=&quot;http://stpeter.im/&quot;&gt;stpeter&lt;/a&gt; briefly &lt;a href=&quot;https://stpeter.im/?p=2227&quot;&gt;mentioned&lt;/a&gt;. While I think
				that the &lt;a href=&quot;https://stpeter.im/?p=2228&quot;&gt;consensus on OAuth
					over XMPP&lt;/a&gt;, was very important, I think we also settled on
				a good set of best practices for federating social networks using
				&lt;a href=&quot;http://www.xmpp.org/extensions/xep-0060.html&quot;&gt;XMPP
					Publish Subscribe&lt;/a&gt;.&lt;/p&gt;

			&lt;p&gt;This particular topic has had my full attention over the last
				year or so, and it is about time that I start writing about that,
				explaining the afore mentioned best practices in their context. As
				this covers a lot of ground, I'd like to make a series out of it,
				each detailing a particular aspect.&lt;/p&gt;

			&lt;p&gt;Topics that will come by include: the &lt;em&gt;subscribable
					unit&lt;/em&gt; and how notifications are generated, payload
				formats, discovery, local representation and implementation
				strategies.&lt;/p&gt;</content>
		<author>
			<name>ralphm</name>
			<uri>http://ralphm.net/blog/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Story of my life</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/story_of_my_life.html"/>
		<id>http://www.paeps.cx/weblog/code/story_of_my_life.html</id>
		<updated>2008-07-25T13:46:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;After two days of staring at a particularly nasty bug, this feels strangely
appropriate...&lt;/p&gt;
&lt;div class=&quot;figcenter figure&quot;&gt;
&lt;a href=&quot;http://geekandpoke.typepad.com/geekandpoke/2008/07/good-comments.html&quot; class=&quot;reference image-reference&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/images/weblog/20080725/goodcomments.jpg&quot; alt=&quot;Good comments are essential to deliver high quality.&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;Of course, I would &lt;em&gt;never&lt;/em&gt; write bad comments.  Ahem.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=nk4rMJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=nk4rMJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=9WdBEj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=9WdBEj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=NeO1qJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=NeO1qJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: New CAPTCHAs</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/meta/new_captchas.html"/>
		<id>http://www.paeps.cx/weblog/meta/new_captchas.html</id>
		<updated>2008-07-22T17:55:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;All credit (and blame!) to Zombie. :-)&lt;/p&gt;
&lt;p&gt;I also garbage collected some of the dustier CAPTCHAs whose answers were a bit
too ambigious.  More suggestions always welcome...&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=z233OJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=z233OJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=NAmUQj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=NAmUQj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=E70CiJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=E70CiJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: More open access points</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/activism/more_open_access_points.html"/>
		<id>http://www.paeps.cx/weblog/activism/more_open_access_points.html</id>
		<updated>2008-07-22T06:48:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;So the trains are messed up again.  This has stopped bothering me ages ago.
There are so many fun things to get annoyed about in life, the trains are not
among them.&lt;/p&gt;
&lt;p&gt;There is an open access point (well essid &quot;default&quot;) at the station in Haacht.
Unfortunately, the connection drops every time a train goes by, so I am
guessing that it is on the other side of the tracks.&lt;/p&gt;
&lt;p&gt;Would someone near here please set up an access point on this side of the
tracks?  Thank you. :-)&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=EtQE6J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=EtQE6J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=gYSSQj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=gYSSQj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=pb9uOJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=pb9uOJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: rtorrent with DHT</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/rtorrent-with-dht.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-2825806766473843890</id>
		<updated>2008-07-21T13:50:15+00:00</updated>
		<content type="html">&lt;a href=&quot;http://libtorrent.rakshasa.no/&quot;&gt;&lt;code&gt;rtorrent&lt;/code&gt;&lt;/a&gt; is a lightweight, low-memory footprint &lt;a href=&quot;http://en.wikipedia.org/wiki/.torrent&quot;&gt;BitTorrent&lt;/a&gt; client that runs in the console (and teams up nicely with &lt;a href=&quot;http://en.wikipedia.org/wiki/GNU_Screen&quot;&gt;GNU &lt;code&gt;screen&lt;/code&gt;&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;The latest version is &lt;a href=&quot;http://packman.links2linux.org/package/rtorrent&quot;&gt;now available&lt;/a&gt; for openSUSE 10.1 to 11.0 in the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman repository&lt;/a&gt; and supports &lt;a href=&quot;http://en.wikipedia.org/wiki/Distributed_hash_table&quot;&gt;DHT&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://packman.links2linux.org/install/rtorrent&quot; title=&quot;1-click install rtorrent&quot;&gt;&lt;img src=&quot;http://packman.links2linux.org/images/ympbutton.png&quot; alt=&quot;YMP&quot; /&gt;&lt;/a&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: National holiday - pah!</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/activism/national_holiday_pah.html"/>
		<id>http://www.paeps.cx/weblog/activism/national_holiday_pah.html</id>
		<updated>2008-07-21T10:02:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;I've mentioned it before: I don't like random one-day holidays.  So today we
are supposed to be celebrating the inauguration of some German (or was he
Austrian, I can't remember) as King of the Belgians, many years before I was
born.&lt;/p&gt;
&lt;p&gt;Instead of giving us these holidays piecemeal, why can't we just settle on
&quot;ten free days a year&quot; (-ish).  If you want to use these days to celebrate
so-called &quot;holy&quot; people taking off like rockets and subsequently remembering
about gravity (or being remembered by gravity) and thundering down again,
that's your lookout.  If you want to celebrate the birth of countries or
linguistic genocide, that's entirely your business.&lt;/p&gt;
&lt;p&gt;And if you want to take a contiguous ten-day break: why not?&lt;/p&gt;
&lt;p&gt;These one-day holidays are a nightmare for planning.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=Or3mWJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=Or3mWJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=qXCKPj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=qXCKPj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=1jIS3J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=1jIS3J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: Belgium rocks</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/21/belgium-rocks"/>
		<id>http://christophe.vandeplas.com/98 at http://christophe.vandeplas.com</id>
		<updated>2008-07-21T08:50:39+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://www.belgium.be/&quot;&gt;&lt;img src=&quot;http://christophe.vandeplas.com/files/img/belgium-heart.png&quot; title=&quot;My car also has one now...&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Reattaching to ssh-agent</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/reattaching-to-ssh-agent.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-5711669016711474525</id>
		<updated>2008-07-19T12:08:34+00:00</updated>
		<content type="html">A rather rare situation, hopefully... I happened to clean up &lt;code&gt;/tmp&lt;/code&gt; and delete a temporary directory used by &lt;code&gt;ssh-agent&lt;/code&gt;, that held the UNIX domain socket that was used to communicate with it. Arguably, that's a pretty stupid thing to do and fixing it is as simple as logging out (of your X session) and in again.&lt;br /&gt;But I didn't want to close running applications and hence, hacked a little bash function to re-attach to a running &lt;code&gt;ssh-agent&lt;/code&gt; (which means setting the environment variables &lt;code&gt;SSH_AGENT_PID&lt;/code&gt; and &lt;code&gt;SSH_AUTH_SOCK&lt;/code&gt; appriopriately) after having started another &lt;code&gt;ssh-agent&lt;/code&gt; process.&lt;br /&gt;As it might be useful to others (or just an interesting sample of bash scripting), here it is:&lt;br /&gt;&lt;pre&gt;function reattach-ssh-agent {&lt;br /&gt;   local pid&lt;br /&gt;   local line&lt;br /&gt;   local r=$(ps h -o pid -C ssh-agent | while read pid; do&lt;br /&gt;      sudo lsof -a -w -LPn -p &quot;$pid&quot; -U -Fn \&lt;br /&gt;      | grep '^n/tmp/ssh-.*/agent\..*' | while read line; do&lt;br /&gt;         line=${line#?}&lt;br /&gt;         [ -e &quot;$line&quot; ] &amp;amp;&amp;amp; {&lt;br /&gt;            echo &quot;FOUND: pid=$pid sock=$line&quot; &amp;gt;/dev/tty;&lt;br /&gt;            echo &quot;export SSH_AGENT_PID=$pid; export export SSH_AUTH_SOCK=\&quot;$line\&quot;&quot;;&lt;br /&gt;         }&lt;br /&gt;      done;&lt;br /&gt;   done)&lt;br /&gt;   [ -n &quot;$r&quot; ] &amp;amp;&amp;amp; { eval $r; } \&lt;br /&gt;   || { echo &quot;Failed to find running and operational ssh-agent&quot; &amp;gt;&amp;amp;2; }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Note that it must be a function, not a script as the latter would be executed as a sub-process of the current shell and, hence, not be able to modify the environment of the current shell (which is the whole idea about it). So if you need that function here and then, make sure to add it to &lt;code&gt;~/.bashrc&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Also note that a major drawback of this function is that it requires executing &lt;code&gt;lsof&lt;/code&gt; as root (here using &lt;code&gt;sudo&lt;/code&gt;) as the open files of &lt;code&gt;ssh-agent&lt;/code&gt; are only visible to root. Another approach would be to implement the above in a separate script that would just output the shell code to execute (&lt;code&gt;export SSH_AGENT_PID ...&lt;/code&gt;) and run &lt;code&gt;setuid&lt;/code&gt; (using a C wrapper or such) but.. not necessarily easier nor much more secure.</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Damien Sandras: Back from GUADEC and RMLL</title>
		<link rel="alternate" type="text/html" href="http://blog.ekiga.net/?p=94"/>
		<id>http://blog.ekiga.net/?p=94</id>
		<updated>2008-07-16T19:21:39+00:00</updated>
		<content type="html">&lt;p&gt;I am now back from the &lt;a href=&quot;http://2008.rmll.info/&quot;&gt;RMLL&lt;/a&gt; and from &lt;a href=&quot;http://guadec.expectnation.com/public/content/main&quot;&gt;GUADEC&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Both events were fantastic and the talk about Ekiga 3.00 drew much attention from the audience, with interesting questions and general enthousiasm. &lt;/p&gt;
&lt;p&gt;I would like to thank the organizers of both events.&lt;/p&gt;
&lt;p&gt;You can find both talks hereunder. The GUADEC talk contains more information about the new Ekiga Engine introduced for Ekiga 3.00 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.ekiga.net/wp-content/uploads/2008/07/rmll.pdf&quot;&gt;RMLL Talk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.ekiga.net/wp-content/uploads/2008/07/guadec.pdf&quot;&gt;GUADEC Talk&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Damien Sandras</name>
			<uri>http://blog.ekiga.net</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Sigh.</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/activism/sigh.html"/>
		<id>http://www.paeps.cx/weblog/activism/sigh.html</id>
		<updated>2008-07-15T18:13:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;So the Belgian government toppled again.  What a surprise.&lt;/p&gt;
&lt;p&gt;Could the clowns leave now, please?  You've had your chance to show off how
good you are at making a mess of things.  I think it's about time some serious
people took over from here.&lt;/p&gt;
&lt;p&gt;Nobody -- save some extremist fools -- is interested in &quot;regional issues&quot; and
everyone has had it with linguistic racism and kindergarten-level &quot;it's all
their fault&quot; whining.&lt;/p&gt;
&lt;p&gt;First get some serious people in to clean up the federal level.  Then take a
large axe to the silly regional and sub-regional levels.  Belgium is small
enough to be 'regional' in European terms.  There is no need for further
expensive complexity.&lt;/p&gt;
&lt;p&gt;The last year of political idiocy has demonstrated again that complexity
kills.  Keep it simple.  We have too many governments in Belgium.  Fix the big
one, kill off the small ones.  Instead of looking for differences, look for
similarities.  Think &quot;abstraction&quot;.&lt;/p&gt;
&lt;p&gt;I would like to thank N-VA in particular for services rendered (unbidden).
Always ready with a big stick to insert in the clockwork of a solution being
made.  If you need to resort to sabotage to prove that something is &quot;broken&quot;,
perhaps it's time to consider the possibility that it's not.&lt;/p&gt;
&lt;p&gt;Get over it.  Go on holidays, preferably to a different planet, and let some
serious people sort out the mess you've made of things.&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=nJi2oJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=nJi2oJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=xJhXOj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=xJhXOj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=ZZhw1J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=ZZhw1J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: What politicians should do</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/15/what-politicians-should-do"/>
		<id>http://christophe.vandeplas.com/97 at http://christophe.vandeplas.com</id>
		<updated>2008-07-15T17:16:56+00:00</updated>
		<content type="html">&lt;p&gt;Instead of &lt;a href=&quot;http://www.deredactie.be/cm/de.redactie/politiek/080715_reax_Bourgeois&quot;&gt;showing&lt;/a&gt; &lt;a href=&quot;http://www.deredactie.be/cm/de.redactie/politiek/080715_Ontslag_inberaad&quot;&gt;off&lt;/a&gt; &lt;a href=&quot;http://www.deredactie.be/cm/de.redactie/politiek/080715_reacties_ontslag&quot;&gt;to the&lt;/a&gt; &lt;a href=&quot;http://lesoir.be/actualite/belgique/l-initiative-doit-venir-du-cd-2008-07-15-617012.shtml&quot;&gt;press&lt;/a&gt; and &lt;a href=&quot;http://www.lesoir.be/forum/editos/un-pays-au-bord-du-gouffre-2008-07-15-616732.shtml&quot;&gt;pushing&lt;/a&gt; &lt;a href=&quot;http://www.lesoir.be/actualite/belgique/aux-francophones-de-jouer-dit-2008-07-15-616905.shtml&quot;&gt;the fault&lt;/a&gt; &lt;a href=&quot;http://www.deredactie.be/cm/de.redactie/politiek/080715_houdingCD%2526V&quot;&gt;on others&lt;/a&gt; &lt;a href=&quot;http://www.lesoir.be/actualite/belgique/leterme-a-perdu-sa-partie-de-2008-07-15-616741.shtml&quot;&gt;backs&lt;/a&gt; they should simply &lt;b&gt;stay silent&lt;/b&gt; and be &lt;b&gt;ashamed&lt;/b&gt; of the situation they created.&lt;/p&gt;
&lt;p&gt;And yes, I consider the media also as partially responsible by giving those &lt;a href=&quot;http://www.fdf.be/&quot;&gt;minority&lt;/a&gt; &lt;a href=&quot;http://www.vlaamsbelang.be/&quot;&gt;extre&lt;/a&gt;&lt;a href=&quot;http://www.n-va.be/default.asp&quot;&gt;mists&lt;/a&gt; such a big voice.&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: lame-3.98</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/lame-398.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-6121081514392921007</id>
		<updated>2008-07-13T21:32:11+00:00</updated>
		<content type="html">Today I've upgraded the package &lt;a href=&quot;http://packman.links2linux.org/package/lame&quot;&gt;&lt;code&gt;lame&lt;/code&gt;&lt;/a&gt; (an MP3 encoder that is available in the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman repository&lt;/a&gt;) to the latest version (3.98).&lt;br /&gt;&lt;br /&gt;I've taken the opportunity to revamp the package a bit:&lt;ul&gt;&lt;li&gt;split into &lt;code&gt;lame&lt;/code&gt;, &lt;code&gt;libmp3lame0&lt;/code&gt;, &lt;code&gt;libmp3lame-devel&lt;/code&gt;&lt;/li&gt;&lt;li&gt;add &lt;code&gt;-debuginfo&lt;/code&gt; support, making the package smaller and enabling debugging/backtracing&lt;/li&gt;&lt;li&gt;build &lt;code&gt;lame-mp3rtp&lt;/code&gt;, an MP3 to RTP streamer&lt;/li&gt;&lt;li&gt;build &lt;code&gt;lame-mp3x&lt;/code&gt;, an MP3 frame analyzer (uses GTK 1.x)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;It does have a drawback though, which cannot be solved automagically by &lt;code&gt;rpm&lt;/code&gt;: if you install &lt;code&gt;libmp3lame0&lt;/code&gt;, it will conflict with the package &lt;code&gt;lame-3.97&lt;/code&gt; (because &lt;code&gt;libmp3lame.so.0&lt;/code&gt; is now in the package &lt;code&gt;libmp3lame0&lt;/code&gt; instead of &lt;code&gt;lame&lt;/code&gt; as with previous versions).&lt;br /&gt;Make sure to also upgrade the package &lt;code&gt;lame&lt;/code&gt; to &lt;code&gt;3.98&lt;/code&gt;, which should then work out smoothly.</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: MIT-SCREEN-SAVER</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/MIT-SCREEN-SAVER.html"/>
		<id>http://www.paeps.cx/weblog/code/MIT-SCREEN-SAVER.html</id>
		<updated>2008-07-13T20:10:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;Found in vlc (&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;modules/misc/screensaver.c&lt;/span&gt;&lt;/tt&gt; - GPL) after I found
&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;gnome-screensaver-command:&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;found&lt;/span&gt;&lt;/tt&gt; on &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;stderr&lt;/span&gt;&lt;/tt&gt; once too often:&lt;/p&gt;
&lt;pre class=&quot;literal-block&quot;&gt;/*****************************************************************************
 * Run: main thread
 *****************************************************************************
 * This part of the module is in a separate thread so that we do not have
 * too much system() overhead.
 *****************************************************************************/
static void Run( intf_thread_t *p_intf )
{
    int i_lastcall = 0;

    while( !p_intf-&amp;gt;b_die )
    {
        msleep( 100000 );

        /* Check screensaver every 30 seconds */
        if( ++i_lastcall &amp;gt; 300 )
        {
            vlc_object_t *p_vout;
            p_vout = vlc_object_find( p_intf, VLC_OBJECT_VOUT, FIND_ANYWHERE );
            /* If there is a video output, disable xscreensaver */
            if( p_vout )
            {
                vlc_object_release( p_vout );

                /* http://www.jwz.org/xscreensaver/faq.html#dvd */
                system( &quot;xscreensaver-command -deactivate &amp;gt;&amp;amp;- 2&amp;gt;&amp;amp;- &amp;amp;&quot; );
                system( &quot;gnome-screensaver-command --poke &amp;gt;&amp;amp;- 2&amp;gt;&amp;amp;- &amp;amp;&quot; );

                /* FIXME: add support for other screensavers */
            }

            i_lastcall = 0;
        }
    }
}
&lt;/pre&gt;
&lt;p&gt;My eyes bleed...  This is what the &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MIT-SCREEN-SAVER&lt;/span&gt;&lt;/tt&gt; extension is for,
&lt;a href=&quot;http://sam.zoy.org/&quot; class=&quot;reference&quot;&gt;Sam&lt;/a&gt;.  If I can only figure out how to get at the Display pointer from
&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;p_intf&lt;/span&gt;&lt;/tt&gt;, I'll send you a patch.&lt;/p&gt;
&lt;p&gt;What do non-geeks do on Sunday evenings?  Code-reading is fun.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=xQtGMJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=xQtGMJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=p0Pv3j&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=p0Pv3j&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=CXYvtJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=CXYvtJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Every library known to man</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/every_library_known_to_man.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/every_library_known_to_man.html</id>
		<updated>2008-07-13T18:12:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;I tried to build &lt;a href=&quot;http://www.videolan.org/vlc/&quot; class=&quot;reference&quot;&gt;vlc&lt;/a&gt; today.  I'm not unhappy with mplayer.  It generally just
works.  I wanted to test something multicast-y though, and I'm told vlc is
simply the path of least pain.&lt;/p&gt;
&lt;p&gt;Hah!&lt;/p&gt;
&lt;p&gt;For some unfathomable reason, it wants to be linked with &lt;em&gt;every single library
known to man&lt;/em&gt;.  It also feels I should install a number of things which are
&lt;em&gt;never&lt;/em&gt; going to be on my system (things like gconf, hal, dbus and other
crimes against humanity).&lt;/p&gt;
&lt;p&gt;Furthermore, my machine doesn't have any kind of optical drive.  I couldn't
imagine why I would want to waste diskspace on libraries accessing such things
(libdvdread, libdvdnav, libcdio, and many more).&lt;/p&gt;
&lt;p&gt;More Makefile hacking it is.  No problem.  I'll be submitting patches.  My
life would be significantly easier however, if people porting software would
be nice enough to take a &quot;default to exclude&quot; rather than a &quot;default to
include&quot; stance.&lt;/p&gt;
&lt;p&gt;Especially when it comes to criminal software like hal, dbus and gconf.&lt;/p&gt;
&lt;p&gt;Patches coming up. :-)  I love the way the FreeBSD ports system (and pkgsrc,
by extension) lets me fix problems like this.  I'm sure binary package
management systems make it much more difficult to avoid evil software which
destroys your mind (and any kittens nearby too).&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=nM7SEJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=nM7SEJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=xfpYOj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=xfpYOj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=aqH7NJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=aqH7NJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: You can teach an old dog new tricks</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/you_can_teach_an_old_dog_new_tricks.html"/>
		<id>http://www.paeps.cx/weblog/code/you_can_teach_an_old_dog_new_tricks.html</id>
		<updated>2008-07-12T12:01:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;A couple of days ago, someone pointed me at this &lt;a href=&quot;http://linuxgazette.net/152/srinivasan.html&quot; class=&quot;reference&quot;&gt;Slightly Advanced
Introduction to Vim&lt;/a&gt;.  I spend most of my life in Vim and I like to think I
know how to use it fairly effectively.  Nevertheless, I did learn a couple of
interesting new tricks from this particular &quot;introduction&quot;.&lt;/p&gt;
&lt;p&gt;Two things in particular I learned are some more things to do with &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;g&lt;/span&gt;&lt;/tt&gt; and
the fact that the &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;+&lt;/span&gt;&lt;/tt&gt; register contains the operating system paste buffer.
Registers are probably one of the Vim features I use most often (together with
marks, csope, split windows and various forms of &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;g&lt;/span&gt;&lt;/tt&gt;), and yet I never knew
about the &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;+&lt;/span&gt;&lt;/tt&gt; register.&lt;/p&gt;
&lt;p&gt;I don't think it's possible to know &lt;em&gt;everything&lt;/em&gt; about Vim.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=uGjz6J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=uGjz6J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=qHfBXj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=qHfBXj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=UaesOJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=UaesOJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: MPlayer package updates</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/mplayer-package-updates.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-6790311772201968130</id>
		<updated>2008-07-11T14:26:01+00:00</updated>
		<content type="html">I made a few changes to the &lt;a href=&quot;http://packman.links2linux.org/package/mplayer&quot;&gt;MPlayer package in the Packman repository&lt;/a&gt;, now version &lt;b&gt;&lt;code&gt;1.0rc2-4.pm.4&lt;code&gt;&lt;/code&gt;&lt;/code&gt;&lt;/b&gt;:&lt;ul&gt;&lt;li&gt;&lt;code&gt;-debuginfo&lt;/code&gt; package to help trace down crashes and such&lt;/li&gt;&lt;li&gt;added &lt;a href=&quot;http://live.polito.it/documentation/libnemesi&quot;&gt;&lt;code&gt;libnemesi&lt;/code&gt;&lt;/a&gt; support for RTSP/RTP streaming (which is also &lt;a href=&quot;http://packman.links2linux.org/package/libnemesi&quot;&gt;available in the Packman repository&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;added the following &lt;code&gt;Provides&lt;/code&gt; symbols to the &lt;code&gt;MPlayer&lt;/code&gt; package: &lt;code&gt;mplayer&lt;/code&gt;, &lt;code&gt;mplayer-gui&lt;/code&gt;, &lt;code&gt;MPlayer-gui&lt;/code&gt;, &lt;code&gt;gmplayer&lt;/code&gt; and &lt;code&gt;mencoder&lt;/code&gt;&lt;/li&gt;&lt;li&gt;fixed &lt;a href=&quot;http://packman.links2linux.org/package/faac&quot;&gt;FAAC&lt;/a&gt; support in &lt;code&gt;mencoder&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Please test and &lt;a href=&quot;http://dev-loki.blogspot.com/2008/07/reporting-packman-package-bugs.html&quot;&gt;report success or issues to us&lt;/a&gt;, especially if you are using RTSP/RTP streaming.</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Reporting Packman package bugs</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/reporting-packman-package-bugs.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-459874283960317345</id>
		<updated>2008-07-11T01:08:46+00:00</updated>
		<content type="html">Coincidence or not, recently I ran into several people (on IRC or on openSUSE mailing-lists) who did not know how to report bugs for packages from the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman repository&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So, once and for all, here is how to do it: just send an email to &lt;a href=&quot;mailto:packman@links2linux.de&quot;&gt;packman@links2linux.de&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It's an open mailing-list you may (but don't have to) subscribe.&lt;br /&gt;&lt;br /&gt;Obviously, this also works for package requests, informing us about new upstream releases of your favourite packages (in case we didn't notice, as unfortunately not all projects report releases to sites such as &lt;a href=&quot;http://freshmeat.net&quot;&gt;freshmeat&lt;/a&gt;), but also for telling us that a package works great for you. Well, feedback in general.&lt;br /&gt;&lt;br /&gt;One must always keep in mind that most people in the Packman packager team maintain several hundreds of packages and, obviously, we can only test a fraction of them. Hence, we're interested in any feedback, positive and negative. So if you want to do your part in having high quality packages there, please take a few minutes to send us feedback about them -- remember that this is a collaborative process &lt;code&gt;;)&lt;/code&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: Belgian eID to login on Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/08/belgian-eid-login-mac-os-x"/>
		<id>http://christophe.vandeplas.com/96 at http://christophe.vandeplas.com</id>
		<updated>2008-07-08T08:11:46+00:00</updated>
		<content type="html">&lt;p&gt;This short howto explains how to use the Belgian eID to login on your Mac OS X machine. In this document I assume your cardreader is detected/installed and you are administrator of your machine. I am using Mac OS X 10.4.11.&lt;/p&gt;
&lt;h2&gt;Enable SmartCard authentication (only Mac OS X 10.4)&lt;/h2&gt;
&lt;p&gt;The happy owners of Leopard, Mac OS X 10.5, shouldn't change anything in their configuration file. Just jump to the part about access permissions.&lt;/p&gt;
&lt;p&gt;Probably for performance reasons Apple didn't activate SmartCard login by default. So we will need to change a few configuration files to enable it. This procedure is explained on &lt;a href=&quot;http://docs.info.apple.com/article.html?artnum=304035&quot;&gt;this page&lt;/a&gt;. Here's my own documentation with the examples for the Belgian eID.&lt;br /&gt;&lt;br /&gt;
The instructions in this part should be exactly the same on your system.&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;sudo -s&lt;/b&gt;
Password:
$ &lt;b&gt;cd /etc/&lt;/b&gt;
$ &lt;b&gt;cp authorization authorization.20080707.orig&lt;/b&gt;
$ &lt;b&gt;cp authorization /tmp/authorization.mod&lt;/b&gt;&lt;/pre&gt;
&lt;p&gt;Now edit the temporary file using your favorite editor or by using the graphical editor if you prefer.&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;vi /tmp/authorization.mod&lt;/b&gt;
$ &lt;b&gt;open -a &quot;Property List Editor&quot; /tmp/authorization.mod&lt;/b&gt;&lt;/pre&gt;

&lt;p&gt;Make the following changes to the &lt;code&gt;mechanisms&lt;/code&gt; Array inside the &lt;code&gt;system.login.console&lt;/code&gt; rights (Line 452):&lt;br /&gt;
After the string &lt;code&gt;&amp;lt;string&amp;gt;builtin:auto-login,privileged&amp;lt;/string&amp;gt;&lt;/code&gt; add the string &lt;code&gt;&amp;lt;string&amp;gt;builtin:smartcard-sniffer,privileged&amp;lt;/string&amp;gt;&lt;/code&gt;.&lt;br /&gt;
After the string &lt;code&gt;&amp;lt;string&amp;gt;builtin:reset-password,privileged&amp;lt;/string&amp;gt;&lt;/code&gt; remove the string &lt;code&gt;&amp;lt;string&amp;gt;authinternal&amp;lt;/string&amp;gt;&lt;/code&gt; then add string &lt;code&gt;&amp;lt;string&amp;gt;builtin:authenticate,privileged&amp;lt;/string&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Make the following changes to the &quot;mechanisms&quot; Array inside the &quot;authenticate&quot; rules (Line 649):&lt;br /&gt;
Add the following string to the beginning of the array &lt;code&gt;&amp;lt;string&amp;gt;builtin:smartcard-sniffer,privileged&amp;lt;/string&amp;gt;&lt;/code&gt;&lt;br /&gt;
After the string &lt;code&gt;&amp;lt;string&amp;gt;builtin:authenticate&amp;lt;/string&amp;gt;&lt;/code&gt; remove the string &lt;code&gt;&amp;lt;string&amp;gt;authinternal&amp;lt;/string&amp;gt;&lt;/code&gt; then add the string &lt;code&gt;&amp;lt;string&amp;gt;builtin:authenticate,privileged&amp;lt;/string&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Now copy the file to the right place on your system:&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;cp /tmp/authorization.mod /etc/authorization&lt;/b&gt;&lt;/pre&gt;
&lt;p&gt;You can check the differences here or download the &lt;a href=&quot;http://documentation.vandeplas.com/eid/etc-authorization.10.4.11.orig&quot;&gt;original&lt;/a&gt; and &lt;a href=&quot;http://documentation.vandeplas.com/eid/etc-authorization.10.4.11.eidlogin&quot;&gt;modified&lt;/a&gt; file (Mac OS X 10.4.11)&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;diff -uN /etc/authorization /tmp/authorization.mod&lt;/b&gt; 
--- /etc/authorization  2008-03-23 17:53:36.000000000 +0100
+++ /tmp/authorization.mod      2008-07-07 11:19:05.000000000 +0200
@@ -449,9 +449,10 @@
                        &amp;lt;key&amp;gt;mechanisms&amp;lt;/key&amp;gt;
                        &amp;lt;array&amp;gt;
                                &amp;lt;string&amp;gt;builtin:auto-login,privileged&amp;lt;/string&amp;gt;
+                               &amp;lt;string&amp;gt;builtin:smartcard-sniffer,privileged&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;loginwindow_builtin:login&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;builtin:reset-password,privileged&amp;lt;/string&amp;gt;
-                               &amp;lt;string&amp;gt;authinternal&amp;lt;/string&amp;gt;
+                               &amp;lt;string&amp;gt;builtin:authenticate,privileged&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;builtin:getuserinfo,privileged&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;builtin:sso,privileged&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;HomeDirMechanism:login,privileged&amp;lt;/string&amp;gt;
@@ -645,8 +646,9 @@
                        &amp;lt;string&amp;gt;evaluate-mechanisms&amp;lt;/string&amp;gt;
                        &amp;lt;key&amp;gt;mechanisms&amp;lt;/key&amp;gt;
                        &amp;lt;array&amp;gt;
+                               &amp;lt;string&amp;gt;builtin:smartcard-sniffer,privileged&amp;lt;/string&amp;gt;
                                &amp;lt;string&amp;gt;builtin:authenticate&amp;lt;/string&amp;gt;
-                               &amp;lt;string&amp;gt;authinternal&amp;lt;/string&amp;gt;
+                               &amp;lt;string&amp;gt;builtin:authenticate,privileged&amp;lt;/string&amp;gt;
                        &amp;lt;/array&amp;gt;
                &amp;lt;/dict&amp;gt;
                &amp;lt;key&amp;gt;authenticate-admin&amp;lt;/key&amp;gt;&lt;/pre&gt;
&lt;h2&gt;Access permissions (everyone)&lt;/h2&gt;
&lt;p&gt;We now enabled SmartCard authentication. The question that remains open is: Who owns what SmartCard?&lt;/p&gt;
&lt;p&gt;On the eID card there are two private keys present. One for &lt;i&gt;signing purposes&lt;/i&gt; and one for &lt;i&gt;authentication&lt;/i&gt;. We will use the &lt;i&gt;authentication&lt;/i&gt; key of course.&lt;br /&gt;
Go back to your Terminal that was logged in as root and type the following command. This will list the hashes of the keys.&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;sc_auth hash&lt;/b&gt;
&lt;u&gt;3F5C816C10AB60926E2E8A3CD9096C1F8AF34C9C&lt;/u&gt; PrK#2 &lt;u&gt;(authentication)&lt;/u&gt;
35BDB8600FA219204D28FAD856380F6E06123B62 PrK#3 (signature)

$ &lt;b&gt;sc_auth accept -u &lt;u&gt;chri&lt;/u&gt; -h &lt;u&gt;3F5C816C10AB60926E2E8A3CD9096C1F8AF34C9C&lt;/u&gt;&lt;/b&gt;&lt;/pre&gt;
&lt;p&gt;If desired, more than one smart card can be associated with a single user account by running the script again with the hash from the additional card(s).&lt;br /&gt;
We can check if it's OK:&lt;/p&gt;
&lt;pre&gt;$ &lt;b&gt;dscl . -read &lt;u&gt;/Users/chri&lt;/u&gt;&lt;/b&gt;
...
AuthenticationAuthority: ;ShadowHash;HASHLIST:&amp;lt;SALTED-SHA1,SMB-NT,SMB-LAN-MANAGER&amp;gt;
  ;&lt;u&gt;pubkeyhash;3F5C816C10AB60926E2E8A3CD9096C1F8AF34C9C&lt;/u&gt;
...&lt;/pre&gt;

&lt;h2&gt;Test your configuration&lt;/h2&gt;
&lt;p&gt;That's it. Save all your open files, log out of the system and connect your SmartCard. You should see the &lt;code&gt;Enter PIN&lt;/code&gt; when your card is connected:&lt;br /&gt;
&lt;img src=&quot;http://christophe.vandeplas.com/files/img/macosx-eid-password.jpg&quot; alt=&quot;No card is connected or detected. Enter your normal password to login.&quot; style=&quot;float: none;&quot; /&gt;
&lt;img src=&quot;http://christophe.vandeplas.com/files/img/macosx-eid-pin.jpg&quot; alt=&quot;The card is connected. See the 'PIN' box.&quot; style=&quot;float: none;&quot; /&gt;&lt;/p&gt;

&lt;h2&gt;Debug info&lt;/h2&gt;
&lt;p&gt;When entering the cardreader in &lt;code&gt;/var/log/secure.log&lt;/code&gt; (open using Console). If you don't see these messages check that your cardreader is configured correctly on the system.&lt;/p&gt;
&lt;pre&gt;com.apple.SecurityServer: Token reader CCID Smart Card Reader 0 0 inserted into system
com.apple.SecurityServer: token inserted into reader CCID Smart Card Reader 0 0
com.apple.SecurityServer: reader CCID Smart Card Reader 0 0 inserted token
  &quot;BELPIC-534C494E336600296CFF2491AB111E14&quot; (BELPIC-534C494E336600296CFF2491AB111E14) 
  subservice 2 using driver com.apple.tokend.belpic&lt;/pre&gt;
&lt;p&gt;After a successfull login see these messages:&lt;/p&gt;
&lt;pre&gt;SecurityAgent[1994]: Showing Login Window
SecurityAgent[1994]: User Authenticated: continue login process
com.apple.SecurityServer: Succeeded authorizing right system.login.console 
  by process /System/Library/CoreServices/loginwindow.app for authorization 
  created by /System/Library/CoreServices/loginwindow.app.
com.apple.SecurityServer: Succeeded authorizing right system.login.done 
  by process /System/Library/CoreServices/loginwindow.app for authorization 
  created by /System/Library/CoreServices/loginwindow.app.&lt;/pre&gt;

&lt;h2&gt;Links&lt;/h2&gt;
&lt;a href=&quot;http://manuals.info.apple.com/en_US/Smart_Card_Setup_Guide.pdf&quot;&gt;Apple Smart Card Setup Guide&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://docs.info.apple.com/article.html?artnum=304035&quot;&gt;Mac OS X 10.4: Enabling smart card login&lt;/a&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: C rules!</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/c_rules.html"/>
		<id>http://www.paeps.cx/weblog/code/c_rules.html</id>
		<updated>2008-07-07T18:39:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;I've been fighting with OpenSSL for the last couple of days.  OpenSSL is
purportedly very easy to use if you happen to have a TCP socket descriptor for
it to play with.  When you don't have this, you have to drive
&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SSL_connect()&lt;/span&gt;&lt;/tt&gt; yourself.  Once you understand how this works, it's quite
simple, really.&lt;/p&gt;
&lt;p&gt;Left to its own devices, OpenSSL will helpfully &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;malloc()&lt;/span&gt;&lt;/tt&gt; (and presumably
&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;free()&lt;/span&gt;&lt;/tt&gt;) any memory it needs.  Unfortunately, this is not desirable in a
memory-constrained system or a system where heap fragmentation is not welcome.&lt;/p&gt;
&lt;p&gt;With a minimum of fuss (though quite a serious amount of cursing and trying to
figure out what the damn thing was doing) I made OpenSSL submit to my memory
management.  All it took were the usual pointer gymnastics and shuffling
lengths and offsets.&lt;/p&gt;
&lt;p&gt;Again, I wonder how people survive in languages and development environments
which try to hide memory from them.  How do they get any work done (with any
degree of efficiency)?&lt;/p&gt;
&lt;p&gt;Yes, C makes it easy to shoot yourself in the foot.  Only your foot will be
shot though.  Unless you ask for it, the rest of your leg won't be blown off.
This is a feature, not a bug.&lt;/p&gt;
&lt;p&gt;I like simple.  Simple is good.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=G7Tq1J&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=G7Tq1J&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=cIm4Xj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=cIm4Xj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=fnEqQJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=fnEqQJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: TrueCrypt did the impossible again</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/07/05/truecrypt-did-impossible-again"/>
		<id>http://christophe.vandeplas.com/95 at http://christophe.vandeplas.com</id>
		<updated>2008-07-05T19:10:16+00:00</updated>
		<content type="html">&lt;p&gt;Starting from version 5.0 &lt;a href=&quot;http://www.truecrypt.org/&quot;&gt;TrueCrypt&lt;/a&gt; has support for &lt;a href=&quot;http://en.wikipedia.org/wiki/Full_disk_encryption&quot;&gt;Full-Disk Encryption&lt;/a&gt; using the pre-boot authentication &lt;a href=&quot;http://www.truecrypt.org/docs/?s=system-encryption&quot;&gt;principle&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;TrueCrypt has a history of extreme security by providing the functionality of &lt;a href=&quot;http://www.truecrypt.org/docs/?s=plausible-deniability&quot;&gt;plausible deniability&lt;/a&gt;. The problem with encryption is that people can force you to enter your password, but if they can't prove that you are using encryption they can't force you. It is plausible that you are telling the truth.&lt;/p&gt;
&lt;p&gt;But why am I telling this? Well, the problem with the full-disk encryption was that the TrueCrypt bootloader was easily detectable. There was no way to have plausible deniability for the fully encrypted disk.&lt;/p&gt;
&lt;p&gt;Starting from &lt;a href=&quot;http://www.truecrypt.org/downloads.php&quot;&gt;version 6&lt;/a&gt; the great guys found a way to include plausible deniability and full-disk encryption.But how are they doing it? Well &lt;a href=&quot;http://www.truecrypt.org/hiddenvolume.php&quot;&gt;from what I read&lt;/a&gt; you can have two passwords in the bootloader. One password will give access to your 'normal OS' and the other password to your 'private and hidden' OS. &lt;/p&gt;
&lt;p&gt;They also added a huge &lt;a href=&quot;http://www.truecrypt.org/screenshots2.php&quot;&gt;performance increase&lt;/a&gt;: Support for parallelized encryption/decryption on multi-core processors (or multi-processor systems). Increase in encryption/decryption speed is directly proportional to the number of cores and/or processors.&lt;br /&gt;
For example, if your computer has a quad-core processor, encryption and decryption will be four times faster than on a single-core processor with equivalent specifications (likewise, it will be twice faster on dual-core processors, etc.)&lt;/p&gt;
&lt;p&gt;Well done guys. I'll soon upgrade my v5.1 to the latest v6 edition.&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Deluge 0.5.9.3</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/deluge-0593.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-1923833693214777891</id>
		<updated>2008-07-04T10:20:56+00:00</updated>
		<content type="html">Packages of the latest &lt;a href=&quot;http://deluge-torrent.org/&quot;&gt;Deluge (a torrent client)&lt;/a&gt;, 0.5.9.3, are finally available for openSUSE, in the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman repository&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It took so long to upgrade because the Deluge developers upgraded the in-tree &lt;a href=&quot;http://www.rasterbar.com/products/libtorrent/&quot;&gt;&lt;code&gt;rblibtorrent&lt;/code&gt;&lt;/a&gt; to a more recent build that, in turn, requires the very latest &lt;a href=&quot;http://www.boost.org&quot;&gt;Boost 1.35&lt;/a&gt;. Took me some hours of work to make a &lt;a href=&quot;http://packman.links2linux.org/package/boost1_35&quot;&gt;&lt;code&gt;boost1_35&lt;/code&gt;&lt;/a&gt; package that can be installed aside the (older) &lt;code&gt;boost&lt;/code&gt; package that ships with openSUSE.&lt;br /&gt;&lt;br /&gt;BTW, if Deluge doesn't start properly, run &quot;deluge&quot; from a shell and if you see the following error message: &quot;&lt;code&gt;deluge.core.DelugeError: 'No such unique_ID.'&lt;/code&gt;&quot; then you have to delete your Deluge configuration (&lt;code&gt;rm -rf ~/.config/deluge&lt;/code&gt;) and start+configure Deluge again.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://packman.links2linux.org/install/deluge&quot; title=&quot;1-click install deluge&quot;&gt;&lt;img src=&quot;http://packman.links2linux.org/images/ympbutton.png&quot; alt=&quot;YMP&quot; /&gt;&lt;/a&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: openSUSE and Packman mirror in India</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/opensuse-and-packman-mirror-in-india.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-5604916718259678037</id>
		<updated>2008-07-03T22:29:59+00:00</updated>
		<content type="html">&lt;a href=&quot;http://debayan.wordpress.com/&quot;&gt;debayan&lt;/a&gt; told me today that he has &lt;a href=&quot;http://lug.nitdgp.ac.in/?q=repository&quot;&gt;an 8mbit mirror for openSUSE (and other distros)&lt;/a&gt; as well as &lt;a href=&quot;http://lug.nitdgp.ac.in/packman/&quot;&gt;Packman&lt;/a&gt; in India.&lt;br /&gt;&lt;br /&gt;Cool stuff, definitely an added value for openSUSE users there &lt;code&gt;:)&lt;/code&gt;.</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Freetype2 packages with subpixel hinting</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/freetype2-packages-with-subpixel.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-8927249149616104246</id>
		<updated>2008-07-02T20:15:41+00:00</updated>
		<content type="html">openSUSE packages of the latest freetype2 (2.3.7) are available on &lt;a href=&quot;http://opensuse-community.org/subpixel/&quot;&gt;opensuse-community.org&lt;/a&gt;, with subpixel hinting enabled. See &lt;a href=&quot;http://opensuse-community.org/SubpixelHinting&quot;&gt;SubpixelHinting&lt;/a&gt; for further details.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://opensuse-community.org/subpixel/subpixel.ymp&quot; title=&quot;1-click install freetype2 with subpixel hinting&quot;&gt;&lt;img src=&quot;http://packman.links2linux.de/images/ympbutton.png&quot; alt=&quot;YMP&quot; /&gt;&lt;/a&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: The brain is a stack</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/work/the_brain_is_a_stack.html"/>
		<id>http://www.paeps.cx/weblog/work/the_brain_is_a_stack.html</id>
		<updated>2008-07-02T19:01:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;For the last couple of weeks, I've been fuzz testing some code I wrote.  On
its own, that sort of thing is mind-numbingly boring, so instead of just
handling the problems I found the &quot;simple way&quot; (check for NULL before
dereferencing, check if offsets make sense, etc) I decided to refactor where
possible so the bugs just couldn't happen.  This kept the fuzzing fun too.&lt;/p&gt;
&lt;p&gt;Moving error handling upwards nearer to the cause of the errors in an existing
code base is sometimes surprisingly tricky.  Lots of reshuffling of
structures, hiding data from header files and clever encapsulation tricks and
pointer gymnastics.&lt;/p&gt;
&lt;p&gt;When you're working in ten or twelve files at the same time, you realize how
much like a stack the brain is and how good it is at caching information.  You
push the consumers of a structure on the stack and you roll it up as you
change the structure.  Sometimes you find yourself branching because you found
a way to abstract something and when you get back, the stack is back pretty
much as if it had never been gone.&lt;/p&gt;
&lt;p&gt;I haven't been able to precisely calculate the depth of my brain stack yet,
but it seems to be fairly accomodating.  After a couple of hours of shuffling
code around, even rough line numbers seem to be getting cached for fast
retrieval too.  Much fun.&lt;/p&gt;
&lt;p&gt;Yet another research opportunity for 'students of the mind'.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=H031cJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=H031cJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=41swVj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=41swVj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=jTV7UJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=jTV7UJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: The brain is a stack</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/comments/work/the_brain_is_a_stack.html"/>
		<id>http://www.paeps.cx/weblog/comments/work/the_brain_is_a_stack.html</id>
		<updated>2008-07-02T19:01:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;For the last couple of weeks, I've been fuzz testing some code I wrote.  On
its own, that sort of thing is mind-numbingly boring, so instead of just
handling the problems I found the &quot;simple way&quot; (check for NULL before
dereferencing, check if offsets make sense, etc) I decided to refactor where
possible so the bugs just couldn't happen.  This kept the fuzzing fun too.&lt;/p&gt;
&lt;p&gt;Moving error handling upwards nearer to the cause of the errors in an existing
code base is sometimes surprisingly tricky.  Lots of reshuffling of
structures, hiding data from header files and clever encapsulation tricks and
pointer gymnastics.&lt;/p&gt;
&lt;p&gt;When you're working in ten or twelve files at the same time, you realize how
much like a stack the brain is and how good it is at caching information.  You
push the consumers of a structure on the stack and you roll it up as you
change the structure.  Sometimes you find yourself branching because you found
a way to abstract something and when you get back, the stack is back pretty
much as if it had never been gone.&lt;/p&gt;
&lt;p&gt;I haven't been able to precisely calculate the depth of my brain stack yet,
but it seems to be fairly accomodating.  After a couple of hours of shuffling
code around, even rough line numbers seem to be getting cached for fast
retrieval too.  Much fun.&lt;/p&gt;
&lt;p&gt;Yet another research opportunity for 'students of the mind'.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=1LQthJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=1LQthJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=smobMj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=smobMj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=tw5YsJ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=tw5YsJ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Miro 1.2.4 for openSUSE 11.0, 10.3 and 10.2</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/miro-124-for-opensuse-110-103-and-102.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-3489471298452662237</id>
		<updated>2008-07-02T13:23:57+00:00</updated>
		<content type="html">The latest &lt;a href=&quot;http://www.getmiro.com/&quot;&gt;Miro&lt;/a&gt; (1.2.4) is now available for openSUSE 11.0, 10.3 and 10.2 in the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman repository&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://packman.links2linux.org/install/Miro&quot; title=&quot;1-click install Miro&quot;&gt;&lt;img src=&quot;http://packman.links2linux.org/images/ympbutton.png&quot; alt=&quot;YMP&quot; /&gt;&lt;/a&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Miro 1.2.4 for openSUSE 11.0</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/07/miro-124-for-opensuse-110.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-2438864140424664377</id>
		<updated>2008-07-01T07:30:59+00:00</updated>
		<content type="html">The latest &lt;a href=&quot;http://www.getmiro.com/&quot;&gt;Miro&lt;/a&gt; (1.2.4) is now &lt;a href=&quot;http://packman.links2linux.org/install/Miro&quot; title=&quot;1-click in&amp;lt;br /&amp;gt;stall Miro&quot;&gt;available&lt;/a&gt; in the &lt;a href=&quot;http://packman.links2linux.org&quot;&gt;Packman community repository&lt;/a&gt; for &lt;a href=&quot;http://software.opensuse.org/&quot;&gt;openSUSE 11.0&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://packman.links2linux.org/install/Miro&quot; title=&quot;1-click install Miro&quot;&gt;&lt;img src=&quot;http://packman.links2linux.org/images/ympbutton.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Builds of Miro 1.2.4 for openSUSE 10.3 will follow shortly.</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Damien Sandras: GUADEC &amp; RMLL</title>
		<link rel="alternate" type="text/html" href="http://blog.ekiga.net/?p=93"/>
		<id>http://blog.ekiga.net/?p=93</id>
		<updated>2008-06-30T21:08:42+00:00</updated>
		<content type="html">&lt;p&gt;I will be talking at the &lt;a href=&quot;http://2008.rmll.info/&quot;&gt;RMLL&lt;/a&gt; on Thursday afternoon.&lt;/p&gt;
&lt;p&gt;Right after the RMLL, I will be flying back from Mont-de-Marsan to Belgium on Friday. &lt;/p&gt;
&lt;p&gt;On Saturday, I’ll take the plane to Istanbul for &lt;a href=&quot;http://guadec.expectnation.com/public/content/main&quot;&gt;GUADEC&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I will present Ekiga 3.00 to both events : what’s new, what’s old, what’s to expect.&lt;/p&gt;
&lt;p&gt;I have just committed a large piece of missing code in the Ekiga engine.&lt;/p&gt;
&lt;p&gt;See you there !&lt;/p&gt;</content>
		<author>
			<name>Damien Sandras</name>
			<uri>http://blog.ekiga.net</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Patches everywhere</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/FreeBSD/patches_everywhere.html"/>
		<id>http://www.paeps.cx/weblog/FreeBSD/patches_everywhere.html</id>
		<updated>2008-06-29T16:54:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;It is amazing how patches have a tendency to pile up on laptop disks.  While
MFC'ing a &lt;a href=&quot;http://svn.freebsd.org/viewvc/base?view=revision&amp;amp;revision=180077&quot; class=&quot;reference&quot;&gt;silly change&lt;/a&gt; this afternoon, I accidentally typed &lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;svn&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;diff&lt;/span&gt;&lt;/tt&gt; in
&lt;tt class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;$HOME/projects/freebsd/head/sys&lt;/span&gt;&lt;/tt&gt; and the output was rather interesting.&lt;/p&gt;
&lt;p&gt;In addition to random patches that occur to me while I'm sitting on the train,
I have a good chunk of syscons changes that I really should put somewhere
safely.&lt;/p&gt;
&lt;p&gt;Laptops are dangerous.  Not only do they burn your lap -- and other sensitive
areas -- they allow you to do work which is very easy to forget about (and
then lose).&lt;/p&gt;
&lt;p&gt;Time to sort through this mess and send out some patches.&lt;/p&gt;
&lt;/div&gt;

    &lt;/div&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=zfwK1I&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=zfwK1I&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=anwbDi&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=anwbDi&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/ppaeps?a=cOaVuI&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/ppaeps?i=cOaVuI&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;</content>
		<author>
			<name>Philip Paeps</name>
			<uri>http://www.paeps.cx/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Smart on openSUSE 11.0</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/06/smart-on-opensuse-110.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-5185136181022772418</id>
		<updated>2008-06-28T22:31:16+00:00</updated>
		<content type="html">&lt;pre&gt;zypper ar -r http://download.opensuse.org/repositories/smart/openSUSE_11.0/smart.repo&lt;br /&gt;zypper ref smart&lt;br /&gt;zypper install smart&lt;br /&gt;smart channel --add http://linux01.gwdg.de/~pbleser/files/smart/opensuse-11.0.txt&lt;br /&gt;smart mirror --add http://linux01.gwdg.de/~pbleser/files/smart/mirrors-eu.txt&lt;br /&gt;smart update&lt;/pre&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: Dad 2.0</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/06/dad-20.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-2582054780947678902</id>
		<updated>2008-06-28T20:59:15+00:00</updated>
		<content type="html">&lt;div style=&quot;float: left; margin-right: 1em; margin-bottom: 0.5em;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/dev-loki/2618530021/&quot; title=&quot;Thomas and I&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3245/2618530021_679b9aef99_m.jpg&quot; height=&quot;240&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;&lt;/div&gt;And here's my son, Thomas, 3.25kg, 50cm, born at 10:45am on Thursday (26th), healthy and (subjectively) cute.&lt;br /&gt;&lt;br /&gt;Everything went great (as &quot;great&quot; as giving birth can be, won't argue with women about that), mother is in good shape and feeling well too.&lt;br /&gt;&lt;br /&gt;Such a tiny little thing to hold in one's arms, almost forgot how it is, even though our daughter &lt;a href=&quot;http://www.flickr.com/photos/dev-loki/2567958559/in/set-686528/&quot;&gt;Gaëlle&lt;/a&gt; is just (almost) 3.&lt;br /&gt;&lt;br /&gt;So don't be surprised if I'm a bit &quot;inactive&quot; and slow to reply to emails and stuff, currently having higher priorities &lt;code&gt;;)&lt;/code&gt;</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Mark Van den Borre: U.S. and EU near deal on sharing data</title>
		<link rel="alternate" type="text/html" href="http://blog.markvdb.be/2008/06/us-and-eu-near-deal-on-sharing-data.html"/>
		<id>tag:blogger.com,1999:blog-2099374008738347758.post-5684356852017975566</id>
		<updated>2008-06-28T13:23:47+00:00</updated>
		<content type="html">&lt;a href=&quot;http://iht.com/articles/2008/06/27/america/privacy.php&quot;&gt;U.S. and EU near deal on sharing data&lt;/a&gt;</content>
		<author>
			<name>Mark Van den Borre (noreply@blogger.com)</name>
			<uri>http://blog.markvdb.be/search/label/english</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: See access to disk Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/06/26/see-access-disk-mac-os-x"/>
		<id>http://christophe.vandeplas.com/93 at http://christophe.vandeplas.com</id>
		<updated>2008-06-26T18:47:48+00:00</updated>
		<content type="html">&lt;p&gt;&lt;code&gt;sudo fs_usage -f filesys&lt;/code&gt;&lt;/p&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Christophe Vandeplas: eID things</title>
		<link rel="alternate" type="text/html" href="http://christophe.vandeplas.com/2008/06/26/eid-things"/>
		<id>http://christophe.vandeplas.com/92 at http://christophe.vandeplas.com</id>
		<updated>2008-06-26T18:30:17+00:00</updated>
		<content type="html">&lt;p&gt;Some output from some commands:&lt;/p&gt;
&lt;p&gt;Welke slots zijn er ?&lt;/p&gt;
&lt;pre&gt;$ ./pkcs11-tool --list-slots
Available slots:
Slot 0           CCID Smart Card Reader 0 0
 token label:   BELPIC (Basic PIN)
 token manuf:   (unknown)
 token model:   PKCS #15 SCard
 token flags:   rng, login required, PIN initialized, token initialized
 serial num  :  6CFF2491AB111E14
Slot 1           (empty)
Slot 2           (empty)
Slot 3           (empty)
Slot 4           (empty)
Slot 5           (empty)
Slot 6           (empty)
Slot 7           (empty)&lt;/pre&gt;&lt;p&gt;Hier zijn dus nog 7 vrije slots die we kunnen gebruiken voor alles en nog&lt;br /&gt;
wat. Sommigen gebruiken het voor SSL certificaten, anderen voor kun&lt;br /&gt;
private PGP/GPG keys&lt;/p&gt;
&lt;p&gt;
Wat kan de kaart zoal:&lt;/p&gt;
&lt;pre&gt; ./pkcs11-tool --list-mechanisms
Supported mechanisms:
 SHA-1, digest
 SHA256, digest
 SHA384, digest
 SHA512, digest
 MD5, digest
 RIPEMD160, digest
 RSA-PKCS, sign, verify, unwrap, decrypt
 SHA1-RSA-PKCS, sign, verify
 MD5-RSA-PKCS, sign, verify
 RIPEMD160-RSA-PKCS, sign, verify
 RSA-PKCS-KEY-PAIR-GEN, keypairgen&lt;/pre&gt;&lt;p&gt;De objecten die op de kaart staan (certificaten dus):&lt;/p&gt;
&lt;pre&gt;$ ./pkcs11-tool --login --list-objects
Please enter User PIN:
Private Key Object; RSA
 label:      Authentication
 ID:         02
 Usage:      sign
.... enzovoort.&lt;/pre&gt;&lt;p&gt;Welke certs staan er op :&lt;/p&gt;
&lt;pre&gt;$ ./pkcs15-tool --list-certificates
X.509 Certificate [Authentication]
       Flags    : 3
       Authority: no
       Path     : 3f00df005038
       ID       : 02

X.509 Certificate [Signature]
       Flags    : 3
       Authority: no
       Path     : 3f00df005039
       ID       : 03

X.509 Certificate [CA]
       Flags    : 3
       Authority: yes
       Path     : 3f00df00503a
       ID       : 04

X.509 Certificate [Root]
       Flags    : 3
       Authority: yes
       Path     : 3f00df00503b
       ID       : 06&lt;/pre&gt;&lt;p&gt;En natuurlijk ook expliciet de details over de private keys. We zien dat&lt;br /&gt;
de private keys niet extractable zijn:&lt;/p&gt;
&lt;pre&gt;$ ./pkcs15-tool --list-keys
Private RSA Key [Authentication]
       Com. Flags  : 3
       Usage       : [0x4], sign
       Access Flags: [0x1D], sensitive, alwaysSensitive, neverExtract,
local
       ModLength   : 1024
       Key ref     : 130
       Native      : yes
       Path        : 3f00df00
       Auth ID     : 01
       ID          : 02

Private RSA Key [Signature]
       Com. Flags  : 3
       Usage       : [0x200], nonRepudiation
       Access Flags: [0x1D], sensitive, alwaysSensitive, neverExtract,
local
       ModLength   : 1024
       Key ref     : 131
       Native      : yes
       Path        : 3f00df00
       Auth ID     : 01
       ID          : 03&lt;/pre&gt;</content>
		<author>
			<name>chri</name>
			<uri>http://christophe.vandeplas.com</uri>
		</author>
	</entry>

	<entry>
		<title>Pascal Bleser: webpin CLI 1.0.0</title>
		<link rel="alternate" type="text/html" href="http://dev-loki.blogspot.com/2008/06/webpin-cli-100.html"/>
		<id>tag:blogger.com,1999:blog-9472407.post-4521402487283050052</id>
		<updated>2008-06-24T06:40:11+00:00</updated>
		<content type="html">&lt;a href=&quot;http://dev-loki.blogspot.com/search/label/webpin&quot;&gt;webpin&lt;/a&gt; 1.0.0 is available in the &lt;a href=&quot;http://download.opensuse.org/repositories/openSUSE:/Tools/&quot;&gt;openSUSE:Tools&lt;/a&gt; build service repository.&lt;br /&gt;&lt;br /&gt;The only change is that it supports searching for openSUSE 11.0 packages (and that there is an openSUSE 11.0 package of webpin).</content>
		<author>
			<name>Loki (noreply@blogger.com)</name>
			<uri>http://dev-loki.blogspot.com/</uri>
		</author>
	</entry>

	<entry>
		<title>Philip Paeps: Making Firefox 3 work for you</title>
		<link rel="alternate" type="text/html" href="http://www.paeps.cx/weblog/code/making_firefox3_work_for_you.html"/>
		<id>http://www.paeps.cx/weblog/code/making_firefox3_work_for_you.html</id>
		<updated>2008-06-22T14:10:00+00:00</updated>
		<content type="html">&lt;div align=&quot;justify&quot;&gt;
    
&lt;div class=&quot;document&quot;&gt;
&lt;p&gt;For the last couple of hours, I've been playing with Firefox 3 to make it
behave.  I have blogged at length a