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

<channel>
	<title>nenolod.net</title>
	<atom:link href="http://nenolod.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://nenolod.net</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 04 Jan 2011 13:42:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>determine LBAs of LVM physical extents</title>
		<link>http://nenolod.net/determine-lbas-of-lvm-physical-extents/</link>
		<comments>http://nenolod.net/determine-lbas-of-lvm-physical-extents/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 13:42:50 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=256</guid>
		<description><![CDATA[For the last couple of days, I had a VM sitting on an LVM volume with bad sectors.  Here&#8217;s how you find out what LVM volume is causing the problem so that you can migrate off of it.  Firstly, we want to look at the dmesg output to find out what LBA is bad: [1381493.960771] [...]]]></description>
			<content:encoded><![CDATA[<p>For the last couple of days, I had a VM sitting on an LVM volume with bad sectors.  Here&#8217;s how you find out what LVM volume is causing the problem so that you can migrate off of it.  Firstly, we want to look at the dmesg output to find out what LBA is bad:</p>
<pre>[1381493.960771] Buffer I/O error on device sda5, logical block 380731029
[1381493.960771] Buffer I/O error on device sda5, logical block 380731030</pre>
<p>This means the bad LBA is 380731029. so, we need to determine the partition offset next. To do this, we do the following:</p>
<pre># sfdisk -luS /dev/sda

Disk /dev/sda: 1430807 cylinders, 64 heads, 32 sectors/track
Warning: extended partition does not start at a cylinder boundary.
DOS and Linux will interpret the contents differently.
Warning: The partition table looks like it was made
  for C/H/S=*/255/63 (instead of 1430807/64/32).
For this listing I'll assume that geometry.
Units = sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/dev/sda1            63  19535039   19534977  83  Linux
/dev/sda2      19535040  21494969    1959930  82  Linux swap / Solaris
/dev/sda3      21494970 2930288129 2908793160   5  Extended
/dev/sda4             0         -          0   0  Empty
/dev/sda5      21495033 1475891549 1454396517  8e  Linux LVM
/dev/sda6     1475891613 2930288129 1454396517  8e  Linux LVM</pre>
<p>We subtract 21495033 from 380731029 to yield 359235995.  Next, we determine the extent size in kilobytes:</p>
<pre># pvdisplay /dev/sda5
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               aurora-1
  PV Size               693.51 GB / not usable 2.55 MB
  Allocatable           yes
  PE Size (KByte)       4096 &lt;-- 4096KB.
  Total PE              177538
  Free PE               2114
  Allocated PE          175424
  PV UUID               mz2kUU-h19J-CpBc-Q0lX-Spq7-D3hg-qoexGa</pre>
<p>A kilobyte is 1024 bytes.  An LBA block is 512 bytes.  So we multiply 4096 by 2 (8192), and divide ﻿359235995 by 8192 giving us 43852, which is the extent number on the physical volume.  The next step is obvious, read through /etc/lvm/backup/vgname until you find a volume that extent 43852 falls between!  Then recover the data off of that volume and stop using it (or maybe try badblock recovery or something).</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/determine-lbas-of-lvm-physical-extents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>how to download enhanced content from amazon mp3 with libamz</title>
		<link>http://nenolod.net/how-to-download-enhanced-content-from-amazon-mp3-with-libamz/</link>
		<comments>http://nenolod.net/how-to-download-enhanced-content-from-amazon-mp3-with-libamz/#comments</comments>
		<pubDate>Wed, 08 Dec 2010 01:32:25 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=253</guid>
		<description><![CDATA[Amazon sets the download manager version at 1.0.3 when you say you have it already installed in the dmusic_download_manager_enabled cookie.  We need to edit the cookie to 1.0.10 in order to be allowed to download the enhanced content AMZ entitlement files. It should be noted that right now, libamz 0.1.0 does not really support the [...]]]></description>
			<content:encoded><![CDATA[<p>Amazon sets the download manager version at 1.0.3 when you say you have it already installed in the dmusic_download_manager_enabled cookie.  We need to edit the cookie to 1.0.10 in order to be allowed to download the enhanced content AMZ entitlement files.</p>
<p>It should be noted that right now, libamz 0.1.0 does not really support the enhanced content so you should buy the normal MP3 albums unless the enhanced content album is cheaper for some reason.  But since I have purchased such a file, I will release a 0.2.0 release shortly which also downloads the other data.</p>
<p>You can edit the cookie with a Firefox extension called, ironically, &#8220;<a href="https://addons.mozilla.org/en-US/firefox/addon/4510/">Edit Cookies</a>&#8220;.  In Chrome, you can use the &#8220;<a href="https://chrome.google.com/extensions/detail/fngmhnnpilhplaeedifhccceomclgfbg?hl=en">Edit This Cookie</a>&#8221; extension, but I don&#8217;t use Chrome very much so I haven&#8217;t tried it.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/how-to-download-enhanced-content-from-amazon-mp3-with-libamz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>did icann really seize torrent-finder.com or was it verisign?</title>
		<link>http://nenolod.net/did-icann-really-seize-torrent-finder-com-or-was-it-verisign/</link>
		<comments>http://nenolod.net/did-icann-really-seize-torrent-finder-com-or-was-it-verisign/#comments</comments>
		<pubDate>Sun, 28 Nov 2010 07:40:06 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=248</guid>
		<description><![CDATA[It seems that the media has been trying to pin this one on ICANN, but there is no sign of DNS root server tampering, only GTLD root server tampering which is wholely administered by Verisign.  Proof follows: $ whois torrent-finder.com [Querying whois.verisign-grs.com] [Redirected to whois.godaddy.com] [Querying whois.godaddy.com] [whois.godaddy.com] The data contained in GoDaddy.com, Inc.'s WhoIs [...]]]></description>
			<content:encoded><![CDATA[<p>It seems that the media has been trying to pin this one on ICANN, but there is no sign of DNS root server tampering, only GTLD root server tampering which is wholely administered by Verisign.  Proof follows:</p>
<pre>$ whois torrent-finder.com
[Querying whois.verisign-grs.com]
[Redirected to whois.godaddy.com]
[Querying whois.godaddy.com]
[whois.godaddy.com]
The data contained in GoDaddy.com, Inc.'s WhoIs database,
while believed by the company to be reliable, is provided "as is"
with no guarantee or warranties regarding its accuracy.  This
information is provided for the sole purpose of assisting you
in obtaining information about domain name registration records.
Any use of this data for any other purpose is expressly forbidden without the prior written
permission of GoDaddy.com, Inc.  By submitting an inquiry,
you agree to these terms of usage and limitations of warranty.  In particular,
you agree not to use this data to allow, enable, or otherwise make possible,
dissemination or collection of this data, in part or in its entirety, for any
purpose, such as the transmission of unsolicited advertising and
and solicitations of any kind, including spam.  You further agree
not to use this data to enable high volume, automated or robotic electronic
processes designed to collect or compile this data for any purpose,
including mining this data for your own personal or commercial purposes. 

Please note: the registrant of the domain name is specified
in the "registrant" field.  In most cases, GoDaddy.com, Inc.
is not the registrant of domain names listed in this database.

Registrant:
 Torrent Finder
 15 Alexandria St.
 N/A
 Alexandria,  55555
 Egypt

 Registered through: GoDaddy.com, Inc. (http://www.godaddy.com)
 Domain Name: TORRENT-FINDER.COM
 Created on: 30-Dec-05
 Expires on: 30-Dec-11
 Last Updated on: 04-Oct-10

 Administrative Contact:
 Gadelkareem, Waleed  kurtubba@gmail.com
 Torrent Finder
 N/A
 N/A
 Alexandria,  55555
 Egypt
 20121578967      Fax -- 2034411838

 Technical Contact:
 Gadelkareem, Waleed  kurtubba@gmail.com
 Torrent Finder
 N/A
 N/A
 Alexandria,  55555
 Egypt
 20121578967      Fax -- 2034411838

 Domain servers in listed order:
 NS51.DOMAINCONTROL.COM
 NS52.DOMAINCONTROL.COM
$</pre>
<p>Alright, the WHOIS information looks as if the domain hasn&#8217;t been seized by GoDaddy.  So, we can write them off the list for this one (which is shocking, given the fact that GoDaddy has been more than happy to suspend domains in the past.)  Lets try a DNS trace using a public DNS server (in this case, 4.2.2.1 hosted by Level3):</p>
<pre>$ dig torrent-finder.com +trace @4.2.2.1

; &lt;&lt;&gt;&gt; DiG 9.7.1-P2-RedHat-9.7.1-2.P2.fc13 &lt;&lt;&gt;&gt; torrent-finder.com +trace @4.2.2.1
;; global options: +cmd
.            33799    IN    NS    c.root-servers.net.
.            33799    IN    NS    j.root-servers.net.
.            33799    IN    NS    e.root-servers.net.
.            33799    IN    NS    b.root-servers.net.
.            33799    IN    NS    d.root-servers.net.
.            33799    IN    NS    a.root-servers.net.
.            33799    IN    NS    f.root-servers.net.
.            33799    IN    NS    g.root-servers.net.
.            33799    IN    NS    i.root-servers.net.
.            33799    IN    NS    h.root-servers.net.
.            33799    IN    NS    k.root-servers.net.
.            33799    IN    NS    m.root-servers.net.
.            33799    IN    NS    l.root-servers.net.
;; Received 228 bytes from 4.2.2.1#53(4.2.2.1) in 28 ms</pre>
<p>4.2.2.1 is giving us exactly what we asked for here: the root-servers, which are maintained by IANA (part of ICANN), now lets query one of them:</p>
<pre>com.            172800    IN    NS    l.gtld-servers.net.
com.            172800    IN    NS    e.gtld-servers.net.
com.            172800    IN    NS    i.gtld-servers.net.
com.            172800    IN    NS    k.gtld-servers.net.
com.            172800    IN    NS    f.gtld-servers.net.
com.            172800    IN    NS    h.gtld-servers.net.
com.            172800    IN    NS    m.gtld-servers.net.
com.            172800    IN    NS    c.gtld-servers.net.
com.            172800    IN    NS    g.gtld-servers.net.
com.            172800    IN    NS    j.gtld-servers.net.
com.            172800    IN    NS    d.gtld-servers.net.
com.            172800    IN    NS    a.gtld-servers.net.
com.            172800    IN    NS    b.gtld-servers.net.
;; Received 496 bytes from 128.8.10.90#53(d.root-servers.net) in 72 ms</pre>
<p>When asked about a noncached response for &#8216;torrent-finder.com&#8217;, they redirected us to the gtld-servers, which are run by VeriSign, lets ask one of those servers now:</p>
<pre>torrent-finder.com.    172800    IN    NS    ns1.seizedservers.com.
torrent-finder.com.    172800    IN    NS    ns2.seizedservers.com.
;; Received 118 bytes from 192.43.172.30#53(i.gtld-servers.net) in 167 ms</pre>
<p>Hmm, the GTLD-SERVERS are not replying with NS51.DOMAINCONTROL.COM and NS52.DOMAINCONTROL.COM, instead we get NS1.SEIZEDSERVERS.COM and NS2.SEIZEDSERVERS.COM:</p>
<pre>torrent-finder.com.    86400    IN    A    74.81.170.110
torrent-finder.com.    86400    IN    NS    ns1.torrent-finder.com.
torrent-finder.com.    86400    IN    NS    ns2.torrent-finder.com.
;; Received 120 bytes from 74.81.170.108#53(ns2.seizedservers.com) in 78 ms

$</pre>
<p>Alright, it&#8217;s obviously not ICANN, but Verisign.  Lets see what they say when asked directly about this:</p>
<pre>$ nc <strong>whois.verisign-grs.com</strong> nicname
torrent-finder.com

Whois Server Version 2.0

Domain names in the .com and .net domains can now be registered
with many different competing registrars. Go to http://www.internic.net
for detailed information.

 Domain Name: TORRENT-FINDER.COM
 Registrar: GODADDY.COM, INC.
 Whois Server: whois.godaddy.com
 Referral URL: http://registrar.godaddy.com
 Name Server: NS1.SEIZEDSERVERS.COM
 Name Server: NS2.SEIZEDSERVERS.COM
 Status: clientDeleteProhibited
 Status: clientRenewProhibited
 Status: clientTransferProhibited
 Status: <strong>serverDeleteProhibited</strong>
 Status: <strong>serverTransferProhibited</strong>
 Status: <strong>serverUpdateProhibited</strong>
 Updated Date: 24-nov-2010
 Creation Date: 30-dec-2005
 Expiration Date: 30-dec-2011

&gt;&gt;&gt; Last update of whois database: Sun, 28 Nov 2010 07:28:43 UTC &lt;&lt;&lt;
$</pre>
<p>Hmm, what does <em>serverUpdateProhibited</em> status mean? According to <a href="http://www.icann.org/en/tlds/org/applications/register/attachments/protocols/rrp/draft-hollenbeck-rfc2832bis-01.html">RFC2832bis</a>:</p>
<pre style="padding-left: 30px;">SERVERUPDATEPROHIBITED: The registry sets the domain to this status.
Requests to update the domain name (except to remove this status)
MUST be rejected. The domain name can be transferred, renewed, or
deleted. The domain SHALL be included in the zone when in this
status if the domain has at least one delegated name server.</pre>
<p>This means that the registry administrator (e.g. VeriSign) has locked the domain out.  If it were ICANN, it would be blocked at the root-servers, not at the registry level, that is, it wouldn&#8217;t be making it to VeriSign-GRS at all.</p>
<p>I wonder what other domains are <em>serverUpdateProhibited</em> now.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/did-icann-really-seize-torrent-finder-com-or-was-it-verisign/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>upse2 snapshot build for foobar2000 available</title>
		<link>http://nenolod.net/upse2-snapshot-build-for-foobar2000-available/</link>
		<comments>http://nenolod.net/upse2-snapshot-build-for-foobar2000-available/#comments</comments>
		<pubDate>Fri, 05 Nov 2010 21:32:50 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=224</guid>
		<description><![CDATA[kode54 has uploaded a foobar2000 component using a recent mercurial snapshot of the upse2 PSF playback engine. You can download it from his website. A prerelease of upse2, upse-1.90 will be made within the next few days.  I would like to give thanks to TMM and kode54 for contributing code and ideas to this release, [...]]]></description>
			<content:encoded><![CDATA[<p>kode54 has uploaded a foobar2000 component using a recent mercurial snapshot of the upse2 PSF playback engine. You can download it from <a href="http://kode54.foobar2000.org/">his website</a>.</p>
<p>A prerelease of upse2, upse-1.90 will be made within the next few days.  I would like to give thanks to TMM and kode54 for contributing code and ideas to this release, as well as the people who generally test UPSE snapshots for accuracy and playback compatibility.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/upse2-snapshot-build-for-foobar2000-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pr0ncollage (or so-called &#8220;efficient apparatus for the visualization of trends on social media sites&#8221;)</title>
		<link>http://nenolod.net/pr0ncollage-or-so-called-efficient-apparatus-for-the-visualization-of-trends-on-social-media-sites/</link>
		<comments>http://nenolod.net/pr0ncollage-or-so-called-efficient-apparatus-for-the-visualization-of-trends-on-social-media-sites/#comments</comments>
		<pubDate>Sun, 31 Oct 2010 07:53:18 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=225</guid>
		<description><![CDATA[pr0ncollage is a side-project I started hacking on a couple of days ago.  It works by scraping images from Twitter and collaging them.  As the program continues to iterate, it blends it&#8217;s new image selections into the same canvases resulting in a crossfaded display between two constantly evolving images. The interesting aspect of this project [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://nenolod.net/wp-content/uploads/2010/10/pr0ncollage.png"><img class="aligncenter size-full wp-image-226" title="pr0ncollage" src="http://nenolod.net/wp-content/uploads/2010/10/pr0ncollage.png" alt="" width="922" height="576" /></a></p>
<p style="text-align: left;">pr0ncollage is a side-project I started hacking on a couple of days ago.  It works by scraping images from Twitter and collaging them.  As the program continues to iterate, it blends it&#8217;s new image selections into the same canvases resulting in a crossfaded display between two constantly evolving images.</p>
<p style="text-align: left;">The interesting aspect of this project is that the images are displayed without context and disappear as quickly as they are added into the image.  Full details will be available on a project page on this site when I finish this program up.</p>
<p style="text-align: left;">In the meantime, you can clone the hg repository by doing:</p>
<pre style="padding-left: 30px;">$ hg clone http://hg.atheme.org/users/nenolod/pr0ncollage
$ sh autogen.sh
$ ./configure
$ make
$ sudo make install</pre>
<p>You will need GNOME development headers (e.g. gtk+/cairo/libsoup/libxml2)  installed, these are available in almost every Linux/UNIX distribution.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/pr0ncollage-or-so-called-efficient-apparatus-for-the-visualization-of-trends-on-social-media-sites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>using the kernel routing table instead of iptables for effective IP blacklist management</title>
		<link>http://nenolod.net/use-kernel-routing-tables-instead-of-iptables-for-simple-bans/</link>
		<comments>http://nenolod.net/use-kernel-routing-tables-instead-of-iptables-for-simple-bans/#comments</comments>
		<pubDate>Mon, 18 Oct 2010 22:19:10 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=222</guid>
		<description><![CDATA[iptables is great, but not if you want to ban thousands of IPs from your box.  By design, firewalls aren&#8217;t really meant for that sort of thing, as they typically do ruleset iteration on each traffic flow (such as a sctp or tcp connection). Instead, to do this efficiently, we use the kernel routing table. [...]]]></description>
			<content:encoded><![CDATA[<p>iptables is great, but not if you want to ban thousands of IPs from your box.  By design, firewalls aren&#8217;t really meant for that sort of thing, as they typically do ruleset iteration on each traffic flow (such as a sctp or tcp connection).</p>
<p>Instead, to do this efficiently, we use the kernel routing table.  The reason why we use the kernel routing table is because, typically, it is a radix trie which uses IP masks as keys.  This is a lot faster than iterating through thousands of iptables rules and has the same effect &#8211; since an outbound route is blocked, replies can&#8217;t be received by the hostile IP, which means that connections can&#8217;t be set up, as they require a three-way handshake.</p>
<p>Linux defines <code>RTN_BLACKHOLE</code> as the flag used to define nullroutes.  This flag is supported by the IPv4, IPv6 and DECnet routing tables.</p>
<p>To add an outbound nullroute, simply do the same thing as you would an inbound nullroute on your firewalling box:</p>
<pre># ip route add blackhole 192.168.1.1/32</pre>
<p>Deleting works like this:</p>
<pre># ip route del blackhole 192.168.1.1/32</pre>
<p>If you use FreeBSD or NetBSD or MacOS, it&#8217;s something like that. On FreeBSD, it&#8217;s:</p>
<pre># route add -host 192.168.1.1 127.0.0.1 -blackhole
# route del -host 192.168.1.1 127.0.0.1 -blackhole</pre>
<p>I don&#8217;t know what it is on NetBSD, but I would guess that it&#8217;s the same.</p>
<p>The cool thing about this is that if you can aggregate your banlists to network boundaries, you can actually set them as nullroutes in CIDR format and it makes things <em>even faster</em>.  Mind, ruleset aggregation also improves netfilter&#8217;s performance, but this is considerably more scalable than using netfilter.  Netfilter (iptables) should be used when you actually need to do filtering, the routing table should be used when you want to ban IPs outright &#8211; that&#8217;s why the networking stack has blackhole functionality.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/use-kernel-routing-tables-instead-of-iptables-for-simple-bans/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>status update on upse&#8217;s ps2 support!</title>
		<link>http://nenolod.net/status-update-on-upses-ps2-support/</link>
		<comments>http://nenolod.net/status-update-on-upses-ps2-support/#comments</comments>
		<pubDate>Sun, 10 Oct 2010 09:10:12 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=219</guid>
		<description><![CDATA[if you&#8217;ve been watching the upse repository recently, you will have noticed that i have published a lot of code for PSF2 support a week or so ago. there&#8217;s a lot to do still, mostly getting the IOP calls working and calling into the IOP modules from the CPU. the MAME-based CPU code used in [...]]]></description>
			<content:encoded><![CDATA[<p>if you&#8217;ve been watching the upse repository recently, you will have noticed that i have published a lot of code for PSF2 support a week or so ago.</p>
<p>there&#8217;s a lot to do still, mostly getting the IOP calls working and calling into the IOP modules from the CPU.  the MAME-based CPU code used in HE and friends is rather buggy so we can&#8217;t really know if it&#8217;s right &#8211; it doesn&#8217;t seem to be.  but we load, parse and start psf2.irx now!  which is a pretty big deal if you ask me.</p>
<p>this means that upse2 might get released by the end of the year.  i&#8217;m also working on trying to figure out a way to implement it as a codec in android as an opencore module, but i have no idea how long that will take yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/status-update-on-upses-ps2-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>the hypocracy of sorcerynet</title>
		<link>http://nenolod.net/the-hypocracy-of-sorcerynet/</link>
		<comments>http://nenolod.net/the-hypocracy-of-sorcerynet/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 03:25:32 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=207</guid>
		<description><![CDATA[I was reading my e-mail earlier this evening, when I read this: To all users, The admin voting session for a delink of iuturna.sorcery.net, called yesterday,  has closed. The verified results state that unfortunatly, Iuturna has to be delinked. As iuturna is probably soon to removed from pools and the iuturna.sorcery.net address rerouted, users connecting directly to iuturna are [...]]]></description>
			<content:encoded><![CDATA[<p>I was reading my e-mail earlier this evening, when <a href="http://lists.sorcery.net/pipermail/sorcery/2010-September/000522.html">I read this</a>:</p>
<p style="padding-left: 30px;">To all users,</p>
<p style="padding-left: 30px;">The admin voting session for a delink of iuturna.sorcery.net, called yesterday,  has closed. The verified results state that unfortunatly, Iuturna has to be delinked.<br />
As iuturna is probably soon to removed from pools and  the iuturna.sorcery.net address rerouted, users connecting directly to  iuturna are advised<br />
to change their connection settings to either the worldwide irc.sorcery.net or local server pools.</p>
<p style="padding-left: 30px;">We would like to take this opportunity to thank Onno and the rest of his  team for their years of devoted service to this network.</p>
<p style="padding-left: 30px;">&#8211;Votemasters</p>
<p><strong>What?</strong> I mean no offense here, but all of the other server admins have delinked from SorceryNet over politics before.  Onno on the other hand, has stuck with it.  Now he is being punished for <strong>being on holiday when it became time to upgrade the server software</strong>.  The worst part of this is that it was done behind his back, and more importantly, <em>the users&#8217; backs</em>, which is not allowed by <a href="http://sorcery.net/charter.html">SorceryNet&#8217;s charter</a>, created to, in part, protect users from DALnet-style corruption:</p>
<p style="padding-left: 30px;"><strong>5.1 Applying Servers.</strong></p>
<p style="padding-left: 30px;">a) Linking or <strong>delinking a server  permanently</strong> to the network requires a vote of the Admins, with the <strong>CFD  held on the public mailing list</strong>.  Linking a server requires a 2/3  majority in favor of the application.</p>
<p>I&#8217;ve added some emphasis in bold.  There was no public CFV, just an announcement.  If you&#8217;re a SorceryNet user, this means that the administrative body has now wronged you, and it is likely that this is only the first step.</p>
<p>I suggest that you ask questions and vote with your feet, especially if you are a channel owner.  It is obvious that the administrative body cannot be trusted anymore because they are in the process of violating the charter.  If you&#8217;re running an RP channel, <a href="http://www.darkmyst.org/">DarkMyst may be an appropriate replacement for your needs</a> [disclosure: I do presently sponsor infrastructure for DarkMyst, but would not do so if I felt that the administrative process was acting in an unethical manner].  Technical channels may find a home on <a href="http://freenode.net/">freenode</a> or <a href="http://oftc.net/">OFTC</a>.  <a href="http://staticbox.net/">StaticBox is a spinoff of SorceryNet started due to previous ethical concerns</a> and features many of the old SorceryNet operators [disclosure: I am an admin on StaticBox].</p>
<p>Even if you do not vote with your feet, you should be asking the administration why they do not follow their own charter.  SorceryNet is nothing without its&#8217; users, so it owes its&#8217; users a proper explanation for what happened here.</p>
<p>Also, apparently I was akilled in my absence because I had the gall to enforce charybdis&#8217; trademarks.  Keep it classy, SorceryNet.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/the-hypocracy-of-sorcerynet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>libamz and amzdl</title>
		<link>http://nenolod.net/libamz-and-amzdl/</link>
		<comments>http://nenolod.net/libamz-and-amzdl/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 07:29:59 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=197</guid>
		<description><![CDATA[Due to frustrations with the amazon mp3 store&#8217;s mandatory (well, for albums anyway) download client not being installable on Fedora 14, I have reverse engineered the AMZ file format and am working on a library and download tool for the AMZ files distributed by Amazon.  This code is in under the ISC license and will [...]]]></description>
			<content:encoded><![CDATA[<p>Due to frustrations with the amazon mp3 store&#8217;s mandatory (well, for albums anyway) download client not being installable on Fedora 14, I have reverse engineered the AMZ file format and am working on a library and download tool for the AMZ files distributed by Amazon.  This code is in under the ISC license and will allow you to download from amazonmp3 anywhere that glib and libsoup work.</p>
<p><strong>Note</strong>: This does not allow you to get MP3s for free.  It only allows you to download MP3s you have bought, as you have to have proof of purchase (e.g. the AMZ file that they give you).</p>
<p>I intend to write a GTK+ frontend soonish, but a usable commandline client was better than nothing.  You may download the code from my mercurial repository by doing:</p>
<pre>$ hg clone http://hg.atheme.org/users/nenolod/libamz
$ cd libamz
$ sh autogen.sh
$ ./configure
$ make
$ sudo make install
</pre>
<p>You can then use <code>amzdecrypt</code> to view the raw underlying XSPF playlist, <code>amzls</code> to view a track listing and <code>amzdl</code> to download the music referenced by the AMZ file.</p>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/libamz-and-amzdl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>signed elf environment on linux, or i love my job</title>
		<link>http://nenolod.net/signed-elf-environment-on-linux-or-i-love-my-job/</link>
		<comments>http://nenolod.net/signed-elf-environment-on-linux-or-i-love-my-job/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 03:34:23 +0000</pubDate>
		<dc:creator>nenolod</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nenolod.net/?p=193</guid>
		<description><![CDATA[Over the last couple of months, we have been working to ensure that our virtualization environment is entirely trusted, from the boot loader, through the hypervisor and main kernel to the userland.  Why is the userland important?  Because modified userland means one can gain access to the hypervisor.  To protect against that, we have been [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last couple of months, we have been working to ensure that our virtualization environment is entirely trusted, from the boot loader, through the hypervisor and main kernel to the userland.  Why is the userland important?  Because modified userland means one can gain access to the hypervisor.  To protect against that, we have been working on a way to sign ELF images and check their signatures for validity by using a keyring inside the kernel.</p>
<p>Here is what we have going on, it is pretty awesome:</p>
<pre>nenolod@mimoki:~$ ./signedelf
Hello world!
nenolod@mimoki:~$ ./modifiedelf
bash: ./modifiedelf: Permission denied
nenolod@mimoki:~$ ./unsignedelf
bash: ./unsignedelf: Permission denied
nenolod@mimoki:~$ dmesg | grep elf
[ 3106.217384] signed-elf: Allowing execution of /home/nenolod/signedelf due to VALID_SIGNATURE.
[ 3113.944013] signed-elf: Disallowing execution of /home/nenolod/modifiedelf due to INVALID_SIGNATURE.
[ 3113.944013] signed-elf: Trusted key is in keyring; but calculated checksum of binary does not match.
[ 3120.027148] signed-elf: Disallowing execution of /home/nenolod/unsignedelf due to UNSIGNED.
</pre>
<p>The plan is to upstream this work in the 2.6.38 merge window.  Right now, the trust policy is controlled through a sysctl.  This is just a preview of what is to come. <img src='http://nenolod.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>No, seriously, getting paid to hack on Linux is pretty awesome.</p>
]]></content:encoded>
			<wfw:commentRss>http://nenolod.net/signed-elf-environment-on-linux-or-i-love-my-job/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

