<?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/"
	>

<channel>
	<title>re·cal·ci·trance</title>
	<atom:link href="http://www.recalcitrance.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.recalcitrance.net</link>
	<description>1. resisting authority or control; not obedient or compliant; refractory.</description>
	<pubDate>Wed, 13 Apr 2011 18:47:48 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Arriva Bus - Lowering the bar in customer service</title>
		<link>http://www.recalcitrance.net/2011/04/13/arriva-bus-lowering-the-bar-in-customer-service/</link>
		<comments>http://www.recalcitrance.net/2011/04/13/arriva-bus-lowering-the-bar-in-customer-service/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 18:47:48 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[Shitty Companies]]></category>

		<category><![CDATA[idiocy]]></category>

		<category><![CDATA[my life]]></category>

		<category><![CDATA[travel]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=127</guid>
		<description><![CDATA[Ever have one of those days where nothing seems to go right?  Well, when it comes to Arriva and the 55 bus route they provide in Letchworth Garden City, that day is every day.  Whether they&#8217;re treating their customers like the scum that feeds upon the scum of the earth, attempting to hit [...]]]></description>
			<content:encoded><![CDATA[<p>Ever have one of those days where nothing seems to go right?  Well, when it comes to Arriva and the 55 bus route they provide in Letchworth Garden City, that day is every day.  Whether they&#8217;re treating their customers like the scum that feeds upon the scum of the earth, attempting to hit and run them, driving recklessly, ignoring timetables, or generally being dicks, they never cease to undermine their company slogan &#8220;Raising the bar in customer service&#8221;.</p>
<p>Tonight, the god-awful &#8217;service&#8217; came to a head, and I finally sat down and wrote a complaint.  I&#8217;m turning it into an open letter here.</p>
<blockquote><p>Dear Sir/Madam,</p>
<p>I write this evening to make a complaint in regards to the driver of the 19:09 55 bus to grange estate.  I have, in the past, managed to overcome the urge to complain, however, tonight was the straw that broke the camels back.</p>
<p>Your slogan is &#8220;raising the bar in customer service&#8221;, however, regularly and without fail, your buses fail to maintain their scheduled timetable, usually arriving and leaving their scheduled stops up to 10 minutes early.  This is especially bad at the letchworth station bus stop, where I have come out of the station at 1900 to see the 55 going by.  At this point, my only options are to attempt to beat the bus to the bottom of the road as it completes its loop, walk home, or take a taxi.</p>
<p>This evening was one of these occasions.  At 19:04, as I crossed the road to the bus stop, the 55 arrived, ejected some passengers and waited for a few seconds - I can only imagine to allow the driver to massage his timetable so that it isn&#8217;t obvious to whoever manages the drivers that he&#8217;d completed early -, at this point, I believed - naïvely as per usual - that he would wait at the stop until 19:09 and then proceed.</p>
<p>What actually occurred, was him closing the doors as I was within 25 meters of the stop - walking very close to the edge of the pavement so as to make him aware of my presence -, and then beginning to pull away.  At this point, my blood began to boil, as this is a regular occurance, and I stepped into the road to block his way and flag him down.  At this point, your driver motioned me out of the way and accelerated towards me while mouthing the words &#8216;fuck off&#8217;.  Fearing for my own safety at this point, I jumped out of the way of your bus and took a taxi home at the cost of £5.</p>
<p>I&#8217;m not really asking for compensation at this point, although, that would be nice.  In fact, I&#8217;m moving back to London in part because of the awful bus service you provide - no buses on sundays, no buses after 7pm -, which makes it impossible to do anything after work without walking for miles, or paying for taxis.</p>
<p>What I am asking for is this:</p>
<p>1) Reprimand the driver of tonight&#8217;s 55 bus.  At the very least, suspend him, and re-educate him on the fact that he is only there because buses can&#8217;t yet drive themselves.  He is not God, and he doesn&#8217;t have the right to risk customer lives.  I&#8217;d honestly rather see the guy get his ass canned or moved to a different service that I don&#8217;t have to endure.</p>
<p>2) Fix the clocks on your buses - there&#8217;s obviously something out of whack there, when the rest of the world believes it&#8217;s 19:05 (or 19:00&#8230;) and your bus drivers believe it&#8217;s 19:09.</p>
<p>3) Implement a policy whereby the buses may only run to their timetable or run late at every stop.  No making up time, no departing stops 5-10 minutes early just because no-one happened to be there at the time.  Driving a bus isn&#8217;t rocket science.</p>
<p>4) Hire someone to do an audit of tachograph cards to match mileage vs time to see exactly how awful your &#8217;service&#8217; is.</p>
<p>5) Hire some bus drivers who understand the concept of a smile and customer service.  Sure, it&#8217;s a shit job, but, they applied for it, so they ought to be able to apply a feign happiness and a smile when dealing with passengers.</p>
<p>That is all.</p>
<p>Kindest Regards</p></blockquote>
<p>Also, should you ever need to make a complaint, first write it in a text editor, then browse to <a href="http://www.arrivabus.co.uk/contact-arriva/">http://www.arrivabus.co.uk/contact-arriva/</a> - the page has an insanely low session timeout.  In the 10 minutes it took me to write this, my session had been killed.  Now I get to fill in their ridiculous form again.  Ever heard of an email address Arriva?</p>
<p>I&#8217;ll be making another post should I ever get a response from them&#8230; their contact page responded only with this:</p>
<blockquote><p>Thank you for contacting Arriva. We appreciate your feedback. If you have asked us a question we will try to respond within one working day. If you have made a comment that we need to investigate further, we will do our best to get back to you within ten working days.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2011/04/13/arriva-bus-lowering-the-bar-in-customer-service/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Adobe Photoshop CS5&#8217;s Content aware fill, and why the hype is just hype.</title>
		<link>http://www.recalcitrance.net/2010/04/20/adobe-photoshop-cs5s-content-aware-fill-and-why-the-hype-is-just-hype/</link>
		<comments>http://www.recalcitrance.net/2010/04/20/adobe-photoshop-cs5s-content-aware-fill-and-why-the-hype-is-just-hype/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 18:58:55 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[computing]]></category>

		<category><![CDATA[photography]]></category>

		<category><![CDATA[photoshop]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=97</guid>
		<description><![CDATA[As a photographer, I often get angry at the level of photo-manipulation that is performed on photographs to make them look better.  I also get angry when it comes to cliques of people who all take bad photographs, but who en masse, believe that the fact so many others do it, makes it good photography, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">As a photographer, I often get angry at the level of photo-manipulation that is performed on photographs to make them look better.  I also get angry when it comes to cliques of people who all take bad photographs, but who en masse, believe that the fact so many others do it, makes it good photography, or even, god forbid, art.</p>
<p style="text-align: left;">Lomographers, I&#8217;m looking at you.</p>
<p style="text-align: left;">I&#8217;m not a professional photographer, and I don&#8217;t claim to be.  My grandfather was a professional photographer, however, and as such I treat the profession with a great deal of respect; that being the people who are accredited within the profession - i.e. <a href="http://www.bipp.co.uk" target="_blank">BIPP</a> Licentiates, Associates and Fellows.<br />
I don&#8217;t have much respect for rank amateurs with 2 or 3 digital cameras, several 8GB CF cards, and the view that happy-snapping 3000 &#8216;candid&#8217; photographs during someone&#8217;s wedding will result in at least one or two good photographs that the client will like.<br />
After all, years of rants from a professional photographer (who would maybe shoot 2-3 rolls of 120 at a wedding, and have 2-3 rolls of perfect imagery at the end of it) about amateurs tends to give you certain views on things.</p>
<p style="text-align: left;">As such, when Adobe released the pre-launch videos of &#8220;Content Aware Fill&#8221; in action, it gave me the taste of bile in the back of my throat, and a feeling that as a whole, we were taking yet another step towards the brink of no creativity whatsoever.  Take 1000 photographs, find a couple that came out semi-ok, and then content-aware-fill them to make them perfect; instead of spending time being creative, and taking two or three good photographs to begin with.</p>
<p style="text-align: left;">Today, I finally got my hands on a copy of Photoshop CS5, and was able to run a couple of my own photographs through it, to see just what this hype was all about.  What follows are the results.</p>
<p style="text-align: left;">The image below was taken moments after a storm passed, and a gap appeared in the clouds revealing the most amazing rays of sun.  I love sky photography, when it&#8217;s interesting.  While framing this shot, I had to make a judgement call about whether to include the near-horizon [with the lamp-post], or, to crop much of the sky and foreground out with a longer focal length.  I&#8217;m not a fan of removing things [except blemishes from dust, etc. on lenses] from photographs after the fact, and would much rather just scrap a photograph entirely if when I get it onto the laptop, I find an aspect that would require surgery to fix isn&#8217;t to my liking.<br />
I&#8217;m quite satisfied with the outcome of the photograph below, but, I think it&#8217;s a perfect candidate for the new Content Aware Fill.</p>
<h6 style="text-align: center;"><a href="http://www.flickr.com/photos/hawkeviper/4535812571/"><img class="alignnone size-full wp-image-96" title="Sky, Before CAF" src="http://www.recalcitrance.net/wp-content/uploads/2010/04/before1.jpg" alt="Sky, Before CAF" width="600" height="400" /></a><br />
<strong>Camera: Canon EOS 30D - Exposure: 1/160 - Aperture: f/11 - Focal Length: 18mm - ISO: 160</strong></h6>
<p>At first, I tried using the Spot Healing Brush Tool (keyboard shortcut J), set to Content Aware mode.  The outcome was not at all what I expected, and in fact, worse than if I&#8217;d use the clone tool to manually fill that area.  Note the shift downwards, of the silhouetted bushes, and the hard blurring into the sky.</p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/hawkeviper/4535812571/"><img class="size-full wp-image-98 aligncenter" title="Sky, After CAF" src="http://www.recalcitrance.net/wp-content/uploads/2010/04/after1.jpg" alt="Sky, After CAF" width="600" height="400" /></a></p>
<p style="text-align: left;">After trying that a few times in different places, with similar results, I decided to give the select-delete-content-aware-fill method a try.  In this, you just use the marquee tool (M), to select an area, then hit the delete key, which will then trigger it asking you how you&#8217;d like it filled.  Choose content-aware, and await the horrendous results:</p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/hawkeviper/4535812571/"><img class="size-full wp-image-99 aligncenter" title="After CAF-2" src="http://www.recalcitrance.net/wp-content/uploads/2010/04/after1-a.jpg" alt="After CAF-2" width="600" height="400" /></a></p>
<p style="text-align: left;">I gotta say, so far, I&#8217;m completely unimpressed by this new &#8216;feature&#8217;.  I&#8217;m doing everything exactly the same as they did on the hype-videos, and the effect I&#8217;m getting is <strong><em>completely</em><span style="font-weight: normal;"> different.</span></strong></p>
<p style="text-align: left;"><strong><span style="font-weight: normal;">I will admit, the first time a friend linked me to the video showing Content-Aware-Fill in action, and asked for my response, it was one of both complete anger, combined with wondering whether this would make it possible to easily create that Matrix effect of lips being sealed together into nothingness.  I have to say, it succeeds quite well at that:</span></strong></p>
<p style="text-align: center;"><a href="http://commons.wikimedia.org/wiki/File:Gordon_Brown_portrait.jpg"><img class="size-full wp-image-107   aligncenter" title="Gordon Brown, Corrected." src="http://www.recalcitrance.net/wp-content/uploads/2010/04/gordon_brown_portrait.jpg" alt="If he was born like this, the UK would be a better place." width="310" height="400" /></a><br />
Public domain image from Wikipedia Commons</p>
<p style="text-align: left;">So, there we have it&#8230; if you&#8217;re a satirist, Content Aware Fill is likely for you.  If you&#8217;re a photochopper of images, you can probably get better results the old fashioned way.  I did look through the preferences for CS5, but couldn&#8217;t find anything related to content-aware-fill&#8230; so I&#8217;d be happy to hear from anyone who actually managed to get it to work.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2010/04/20/adobe-photoshop-cs5s-content-aware-fill-and-why-the-hype-is-just-hype/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sometimes, it&#8217;s the simple things.</title>
		<link>http://www.recalcitrance.net/2009/05/26/sometimes-its-the-simple-things/</link>
		<comments>http://www.recalcitrance.net/2009/05/26/sometimes-its-the-simple-things/#comments</comments>
		<pubDate>Tue, 26 May 2009 03:37:19 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[misanthropy]]></category>

		<category><![CDATA[my life]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=69</guid>
		<description><![CDATA[It&#8217;s dark. The sky, illuminated by the lights of London, glows orange, highlighted only by the eerie lightness of clouds.
In the distance, the growl of industrial machinery dully cycling can be heard, but, to her, the only thing she feels is that of being enveloped by Sigur Rós, while the smoke of a cherry flavored [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s dark. The sky, illuminated by the lights of London, glows orange, highlighted only by the eerie lightness of clouds.<br />
In the distance, the growl of industrial machinery dully cycling can be heard, but, to her, the only thing she feels is that of being enveloped by Sigur Rós, while the smoke of a cherry flavored cigarillo passes through her lips&#8230; and for the first time in months, she can say she&#8217;s truly happy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2009/05/26/sometimes-its-the-simple-things/feed/</wfw:commentRss>
		</item>
		<item>
		<title>An open letter to Lord Carter of Barnes</title>
		<link>http://www.recalcitrance.net/2009/01/30/an-open-letter-to-lord-carter-of-barnes/</link>
		<comments>http://www.recalcitrance.net/2009/01/30/an-open-letter-to-lord-carter-of-barnes/#comments</comments>
		<pubDate>Fri, 30 Jan 2009 20:59:34 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[computing]]></category>

		<category><![CDATA[general]]></category>

		<category><![CDATA[idiocy]]></category>

		<category><![CDATA[the world]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=57</guid>
		<description><![CDATA[After reading http://www.theregister.co.uk/2009/01/29/carter_net_neut/ and http://www.theregister.co.uk/2009/01/30/isp_carter_music_policing/, I got a sudden urge to write to the idiot that is promoting this stuff:
Lord Carter of Barnes
House of Lords
London
SW1A 0PW
Re: Your quaint ideas about the internet
Dear Lord Carter of Barnes,
On behalf of everyone who actually understands The Internet (it&#8217;s not actually a series of tubes), those who oppose dictatorship [...]]]></description>
			<content:encoded><![CDATA[<p>After reading <a href="http://www.theregister.co.uk/2009/01/29/carter_net_neut/">http://www.theregister.co.uk/2009/01/29/carter_net_neut/</a> and <a href="http://www.theregister.co.uk/2009/01/30/isp_carter_music_policing/">http://www.theregister.co.uk/2009/01/30/isp_carter_music_policing/</a>, I got a sudden urge to write to the idiot that is promoting this stuff:</p>
<blockquote><p>Lord Carter of Barnes<br />
House of Lords<br />
London<br />
SW1A 0PW</p>
<p>Re: Your quaint ideas about the internet</p>
<p>Dear Lord Carter of Barnes,</p>
<p>On behalf of everyone who actually understands The Internet (it&#8217;s not actually a series of tubes), those who oppose dictatorship in its many forms, and the fair people who don&#8217;t have their head stuck so far up the outmoded, antediluvian and superannuated backsides of the music industry that they can no longer see sense; I would like to respectfully say &#8216;Fuck you, and the horse you rode in on&#8217;.</p>
<p>Consider this: you are attempting to push laws through to support an industry that is flailing around in its death throes.  You are also going to be solely responsible for putting the United Kingdom on a par with China in terms of Internet freedom; or lack thereof.<br />
I realise you have no problem sleeping at night while considering pushing for these things to happen; with respect however, I believe your ability to sleep at night is merely because you are so out of touch with reality that you shouldn&#8217;t really be in charge of your own sleeping arrangements.</p>
<p>Milord, I put it to you that perhaps you should ask your children (or if you don&#8217;t have any, someone elses children; and at that, children who actually have used the internet) to explain to you the freedoms that the internet gives people in an already heavily oppressed society; and why enforcing ridiculous laws undermine its very nature and cast questions on the very possibility of any further technological advancement on these shores.<br />
Do you really want the legacy you are remembered for throughout history to be as the man who wasn&#8217;t strong enough to see sense or find the truth, and let a dying business ruin the future for generations of people?</p>
<p>Yours, very sincerely and respectfully</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2009/01/30/an-open-letter-to-lord-carter-of-barnes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MacBook tanka</title>
		<link>http://www.recalcitrance.net/2008/12/22/macbook-tanka/</link>
		<comments>http://www.recalcitrance.net/2008/12/22/macbook-tanka/#comments</comments>
		<pubDate>Mon, 22 Dec 2008 11:42:06 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[computing]]></category>

		<category><![CDATA[general]]></category>

		<category><![CDATA[misanthropy]]></category>

		<category><![CDATA[my life]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=54</guid>
		<description><![CDATA[It is a design feature;
Steve Jobs collects the souls;
So cutting peoples wrists on the MacBooks;
Means quicker soul harvesting.
Also, I need a sticker for my new MacBook&#8230; one which reads &#8220;Built from aluminum tempered with the charred, crushed skulls of pretentious mac users&#8220;
]]></description>
			<content:encoded><![CDATA[<blockquote><p><em>It is a design feature;<br />
Steve Jobs collects the souls;<br />
So cutting peoples wrists on the MacBooks;<br />
Means quicker soul harvesting.</em></p></blockquote>
<p>Also, I need a sticker for my new MacBook&#8230; one which reads &#8220;<em>Built from aluminum tempered with the charred, crushed skulls of pretentious mac users</em>&#8220;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/12/22/macbook-tanka/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Monitoring your network with nmap</title>
		<link>http://www.recalcitrance.net/2008/12/15/monitoring-your-network-with-nmap/</link>
		<comments>http://www.recalcitrance.net/2008/12/15/monitoring-your-network-with-nmap/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 21:56:02 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[code]]></category>

		<category><![CDATA[computing]]></category>

		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/2008/12/15/monitoring-your-network-with-nmap/</guid>
		<description><![CDATA[This all came about while I was pondering the best way to dump an overview of what was sat on my network in the datacenter; the main reason being a lack of useful documentation telling me what IPs were in use to narrow it down at all.  The idea was that it&#8217;d dump in [...]]]></description>
			<content:encoded><![CDATA[<p>This all came about while I was pondering the best way to dump an overview of what was sat on my network in the datacenter; the main reason being a lack of useful documentation telling me what IPs were in use to narrow it down at all.  The idea was that it&#8217;d dump in CSV format something along the lines of:</p>
<p>IP,TCP Ports<br />
10.0.0.1,22 143 5000 12345 31337</p>
<p>Of course, once I had this data, my mind started down the path of &#8216;wouldn&#8217;t it be nice to have an automated system that would e-mail me and tell me if any ports change (read: <em>&#8220;if any developers set something up without my knowledge&#8221;</em>), and also tell me if any hosts are added to our network.  I present to you an automated network monitoring script, this will scan your network and send you a detailed report (with port probing), via a direct SMTP connection to your remote mail server - which is useful in the event that your network gets compromised and you can no longer trust any binaries.  All that you need to do is put it somewhere, make it executable, and add it to a cronjob - mine runs hourly, but I&#8217;m paranoid.</p>
<pre>0 */1 * * * /root/bin/nmap.pl auto >/dev/null 2>&#038;1</pre>
<p>The e-mails look something similar to this:</p>
<blockquote><p> Nmap Scan Report.  Hosts/Ports changed!<br />
Generated on: 2008-12-08 18:39:44</p>
<p>&#8212;&#8212;&#8211;BEGIN&#8212;&#8212;&#8211;<br />
10.0.0.1 is a new host with 3 ports open/filtered.</p>
<p>10.0.0.1 has these ports open: 22,111,5000<br />
          22 might be ssh<br />
          111 might be rpcbind<br />
          5000 might be vtun<br />
&#8212;&#8212;&#8211;END&#8212;&#8212;&#8211;</p></blockquote>
<p><a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/"><img style="border-width:0" src="http://i.creativecommons.org/l/by-nc-sa/2.0/uk/88x31.png" alt="Creative Commons License" title="Monitoring your network with nmap" /></a>All code that I&#8217;ve written is licensed under the Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England &amp; Wales Licence.  Where non-commercial means don&#8217;t sell it, not <em>&#8216;you can&#8217;t use it in your company&#8217;</em>. =]</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://www.recalcitrance.net/wp-content/plugins/wp-codebox/wp-codebox.php?p=29&amp;download=nmap.pl">nmap.pl</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p292"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
</pre></td><td class="code" id="p29code2"><pre class="perl" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/usr/bin/perl</span>
<span style="color: #000000; font-weight: bold;">use</span> File<span style="color: #339933;">::</span><span style="color: #006600;">Copy</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">use</span> Nmap<span style="color: #339933;">::</span><span style="color: #006600;">Parser</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">use</span> Net<span style="color: #339933;">::</span><span style="color: #006600;">DNS</span><span style="color: #339933;">::</span><span style="color: #006600;">Sendmail</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">use</span> warnings<span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">use</span> strict<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#config begin</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$nmap_path</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;/usr/bin/nmap&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#path to nmap binary</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$nmap_args</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;-T5 -F -sV&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#nmap arguments (accepts multiple), do not specify any output arguments!</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ips</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#networks to scan, accepts standard nmap input</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$save_as</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;/root/parser-cache.xml&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#path to storage file - this file is used for comparative scans, so it's best not to place it in /tmp.</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$email_from_address</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">''</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#from address to use when sending mail - should probably exist to avoid sender callouts</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$email_to_address</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">''</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#address you want results delivered to</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$email_sender_domain</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">''</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#domain to masquerade as - useful in cases where remote mta checks helo.</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$email_subject</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;Nmap Network Scan Results&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#subject for email.</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$debug</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#enables some output if you need to test auto on the cli - i.e. why mail isn't being sent.</span>
<span style="color: #666666; font-style: italic;">#config end</span>
&nbsp;
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$np</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Nmap<span style="color: #339933;">::</span><span style="color: #006600;">Parser</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$old</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Nmap<span style="color: #339933;">::</span><span style="color: #006600;">Parser</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$curr</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Nmap<span style="color: #339933;">::</span><span style="color: #006600;">Parser</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$tempstore</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;/tmp/parser-cache.tmp&quot;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$emailfile</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;/tmp/nmap-notify&quot;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$newmachines</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$auto</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">lc</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ARGV</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;auto&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">my</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$sec</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$min</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$hour</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$mday</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$mon</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$year</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$wday</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$yday</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$isdst</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">=</span><span style="color: #000066;">localtime</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">time</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">sub</span> debug
<span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">print</span> <span style="color: #ff0000;">&quot;@_<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$debug</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">sub</span> print_twice
<span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">print</span> <span style="color: #ff0000;">&quot;@_&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">print</span> EMAIL <span style="color: #ff0000;">&quot;@_&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">sub</span> create_files
<span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">@_</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!-</span>e <span style="color: #0000ff;">$_</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    <span style="color: #000066;">print</span> <span style="color: #ff0000;">&quot;$_ does not exist... creating<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$auto</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #000066;">open</span><span style="color: #009900;">&#40;</span>TEMP<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;&amp;gt;$_&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">or</span> <span style="color: #000066;">die</span> <span style="color: #ff0000;">&quot;Can't create $_: $!&quot;</span><span style="color: #339933;">;</span>
                    <span style="color: #000066;">close</span><span style="color: #009900;">&#40;</span>TEMP<span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">or</span> <span style="color: #000066;">die</span> <span style="color: #ff0000;">&quot;Couldn't close $_: $!&quot;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
create_files<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$save_as</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$tempstore</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$auto</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">open</span><span style="color: #009900;">&#40;</span>EMAIL<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;&amp;gt;$emailfile&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">or</span> <span style="color: #000066;">die</span> <span style="color: #ff0000;">&quot;Can't create $emailfile: $!&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">print</span> EMAIL <span style="color: #ff0000;">&quot;Nmap Scan Report.  Hosts/Ports changed!<span style="color: #000099; font-weight: bold;">\n</span>Generated on: &quot;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">printf</span> EMAIL <span style="color: #ff0000;">&quot;%4d-%02d-%02d %02d:%02d:%02d<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$year</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1900</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$mon</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$mday</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$hour</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$min</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$sec</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">print</span> EMAIL <span style="color: #ff0000;">&quot;--------BEGIN--------<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$auto</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    debug<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Running auto mode&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span><span style="color: #000066;">s</span> <span style="color: #0000ff;">$save_as</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #0000ff;">$old</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>parsefile<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$save_as</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#load previous state</span>
        <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>cache_scan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$tempstore</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#set temporary file to store xml after we're done</span>
        <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>parsescan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$nmap_path</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$nmap_args</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$ips</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#scan current hosts</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_ips<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'up'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_old</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$old</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_curr</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@alltcp</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_open_ports<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$numtcp</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$#alltcp</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$ip_old</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;$ip is a new host with&quot;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">$numtcp</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;ports open/filtered.<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #339933;">++</span><span style="color: #0000ff;">$newmachines</span><span style="color: #339933;">;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$newmachines</span> <span style="color: #339933;">!=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_ips<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'up'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_old</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$old</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_curr</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">%port</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip_old</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@tcpdiff</span> <span style="color: #339933;">=</span> <span style="color: #000066;">grep</span> <span style="color: #009900;">&#123;</span> <span style="color: #0000ff;">$port</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span> <span style="color: #0000ff;">&amp;lt</span><span style="color: #339933;">;</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#125;</span>
                                    <span style="color: #009900;">&#40;</span><span style="color: #000066;">map</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$port</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">++;</span> <span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span>
                                    <span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_open_ports <span style="color: #339933;">,</span> <span style="color: #0000ff;">$ip_old</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_open_ports<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">scalar</span> <span style="color: #0000ff;">@tcpdiff</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;$ip has these new ports open: &quot;</span><span style="color: #339933;">.</span><span style="color: #000066;">join</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">','</span><span style="color: #339933;">,</span><span style="color: #0000ff;">@tcpdiff</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">@tcpdiff</span><span style="color: #009900;">&#41;</span>
                    <span style="color: #009900;">&#123;</span>
                        print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;$_ might be &quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_service<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>name<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #009900;">&#125;</span>
                    print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span><span style="color: #b1b100;">else</span><span style="color: #009900;">&#123;</span>
                <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@tcp</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">map</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$port</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">++;</span> <span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span>
                            <span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_ports<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'open'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">scalar</span> <span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;$ip has these ports open: &quot;</span><span style="color: #339933;">.</span><span style="color: #000066;">join</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">','</span><span style="color: #339933;">,</span><span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span>
                    <span style="color: #009900;">&#123;</span>
                        print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;$_ might be &quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_service<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>name<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                    <span style="color: #009900;">&#125;</span>
                    print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span><span style="color: #b1b100;">else</span><span style="color: #009900;">&#123;</span>
        <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>cache_scan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$tempstore</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#set temporary file to store xml after we're done</span>
        <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>parsescan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$nmap_path</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$nmap_args</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$ips</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#scan current hosts</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_ips<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'up'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_curr</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@alltcp</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_open_ports<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$numtcp</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$#alltcp</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
            print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;$ip is a new host with &quot;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">$numtcp</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot; ports open/filtered.<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #339933;">++</span><span style="color: #0000ff;">$newmachines</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$newmachines</span> <span style="color: #339933;">!=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_ips<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'up'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_curr</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">%port</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@tcp</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">map</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$port</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">++;</span> <span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span>
                      <span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_ports<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'open'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
            <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">scalar</span> <span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;$ip has these ports open: &quot;</span><span style="color: #339933;">.</span><span style="color: #000066;">join</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">','</span><span style="color: #339933;">,</span><span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span>
                <span style="color: #009900;">&#123;</span>
                    print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;$_ might be &quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">$ip_curr</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_service<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>name<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
                <span style="color: #009900;">&#125;</span>
&nbsp;
                print_twice<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #009900;">&#125;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
    move<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$tempstore</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$save_as</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">print</span> EMAIL <span style="color: #ff0000;">&quot;--------END--------&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">close</span> EMAIL<span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000066;">open</span><span style="color: #009900;">&#40;</span>EMAIL<span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;&amp;lt;$emailfile&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">or</span> <span style="color: #000066;">die</span> <span style="color: #ff0000;">&quot;Can't read $emailfile: $!&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$mail</span> <span style="color: #339933;">=</span> Net<span style="color: #339933;">::</span><span style="color: #006600;">DNS</span><span style="color: #339933;">::</span><span style="color: #006600;">Sendmail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>new<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>verbose<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$debug</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>senderdomain<span style="color: #009900;">&#40;</span> <span style="color: #ff0000;">&quot;$email_sender_domain&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>to<span style="color: #009900;">&#40;</span> <span style="color: #ff0000;">&quot;$email_to_address&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>from<span style="color: #009900;">&#40;</span> <span style="color: #ff0000;">&quot;$email_from_address&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>subject<span style="color: #009900;">&#40;</span> <span style="color: #ff0000;">&quot;$email_subject&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>data<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span>
    <span style="color: #0000ff;">$mail</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>sendmail<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$newmachines</span> <span style="color: #339933;">!=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    debug<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;mail sent&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">close</span> EMAIL<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">#Unsure whether or not to move the output of this into $save_as... it may</span>
    <span style="color: #666666; font-style: italic;">#be that someone runs this, and doesn't take care of the output, in which</span>
    <span style="color: #666666; font-style: italic;">#case, we still want to be notified that night.</span>
    <span style="color: #0000ff;">$np</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>cache_scan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$save_as</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #0000ff;">$np</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>parsescan<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$nmap_path</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$nmap_args</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$ips</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066;">print</span> <span style="color: #ff0000;">&quot;IP,OPEN TCP PORTS<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">for</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$np</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_ips<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'up'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ip_check</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$np</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>get_host<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$ip</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">%port</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@tcp</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">map</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$port</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">++;</span> <span style="color: #0000ff;">$_</span><span style="color: #009900;">&#125;</span>
                  <span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">$ip_check</span><span style="color: #339933;">-</span><span style="color: #0000ff;">&amp;gt</span><span style="color: #339933;">;</span>tcp_ports<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'open'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000066;">print</span> <span style="color: #ff0000;">&quot;$ip,&quot;</span><span style="color: #339933;">.</span><span style="color: #000066;">join</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">' '</span><span style="color: #339933;">,</span><span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">scalar</span> <span style="color: #0000ff;">@tcp</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/12/15/monitoring-your-network-with-nmap/feed/</wfw:commentRss>
		</item>
		<item>
		<title>On christmas.</title>
		<link>http://www.recalcitrance.net/2008/12/15/on-christmas/</link>
		<comments>http://www.recalcitrance.net/2008/12/15/on-christmas/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 01:46:35 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[general]]></category>

		<category><![CDATA[misanthropy]]></category>

		<category><![CDATA[my life]]></category>

		<category><![CDATA[life]]></category>

		<category><![CDATA[me]]></category>

		<category><![CDATA[people watching]]></category>

		<category><![CDATA[real life]]></category>

		<category><![CDATA[stupidity]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=26</guid>
		<description><![CDATA[Someone asked me earlier tonight whether I was feeling festive&#8230; my response sums up exactly how I feel about this time of the year:
Festive&#8230; me?  No, that&#8217;s the last thing anyone would accuse me of being in December.
I&#8217;m averse the spirit of christmas as it is these days - an excuse to push capitalism in [...]]]></description>
			<content:encoded><![CDATA[<p>Someone asked me earlier tonight whether I was feeling festive&#8230; my response sums up exactly how I feel about this time of the year:</p>
<blockquote><p>Festive&#8230; me?  No, that&#8217;s the last thing anyone would accuse me of being in December.<br />
I&#8217;m averse the spirit of christmas as it is these days - an excuse to push capitalism in everyone&#8217;s faces, a social requirement to buy things you can&#8217;t afford for people you barely see the rest of the year and probably don&#8217;t like.  It&#8217;s sadly just another way to force people to take loans that they can&#8217;t repay, and push people to commit to responsibilities that, at any other time of year they couldn&#8217;t fulfil; I find it a sad social commentary that such importance is placed on making that single day of the year meaningful, when in fact the demand for it to occur in a pre-defined way on a pre-defined date merely serves to make it completely insignificant.</p>
<p>Wouldn&#8217;t you much rather have someone give you a present at a completely random time of the year, for reasons other than social expectation, where it&#8217;s obvious that more thought than <em>&#8220;How much money will this leave me to spend on the countless other people I have on my list?</em>&#8221; has gone into it?</p>
<p>That&#8217;s not to say I completely reject it; I buy cards for people who I consider close, and I visit my family, but I&#8217;m happier once the event has passed and people return to normality.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/12/15/on-christmas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Escaping the matrix</title>
		<link>http://www.recalcitrance.net/2008/09/19/escaping-the-matrix/</link>
		<comments>http://www.recalcitrance.net/2008/09/19/escaping-the-matrix/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 00:56:47 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[my life]]></category>

		<category><![CDATA[arcane]]></category>

		<category><![CDATA[esoterica]]></category>

		<category><![CDATA[experiments]]></category>

		<category><![CDATA[herbalism]]></category>

		<category><![CDATA[life]]></category>

		<category><![CDATA[me]]></category>

		<category><![CDATA[salvia divinorum]]></category>

		<category><![CDATA[witchcraft]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=21</guid>
		<description><![CDATA[Or, perhaps, entering it.  Life is merely a construct, whether that construct exists solely within our collective consciousness, or individually, or on a cluster of computers that we&#8217;re plugged into while being harvested for energy makes little difference.  Perception of this construct is individual, what one person sees and perceives is wholly unique [...]]]></description>
			<content:encoded><![CDATA[<p>Or, perhaps, entering it.  Life is merely a construct, whether that construct exists solely within our collective consciousness, or individually, or on a cluster of computers that we&#8217;re plugged into while being harvested for energy makes little difference.  Perception of this construct is individual, what one person sees and perceives is wholly unique to them, while you may find someone else who agrees with another&#8217;s description or view, it will never be an exact copy.  It&#8217;s one of the many things that makes life interesting, and the very reason that psychology is such a difficult field to categorize, the purpose being to attempt to slot everyone into pigeon holes, based upon a certain set of criteria, and then use that knowledge to &#8216;fix&#8217; them.  I digress.</p>
<p>There are few things pleasurable or interesting that are not controlled heavily by governments, or by societal expectations.  <a href="http://en.wikipedia.org/wiki/Salvia_divinorum" target="_blank"><em>Salvia Divinorum</em></a> (<em>lit.</em> Sage of the Seers), is a member of the Sage genus and the Mint family; it is one such currently uncontrolled thing.  Salvia was relatively unheard of until recently - I&#8217;m sure the internet helped with this somewhat - existing only in small, cultivated patches in Oaxaca, Mexico, and has been used by Mazatec Shamans for what I can only assume must be millenia.  Militant religious groups - among others - around the world are currently pressing government bodies to add <em>Salvia Divinorum</em> to the list of &#8216;good things that we don&#8217;t want anyone to have because it allows them to escape from what we decide their reality should be&#8217;&#8230; in English, they want to make it illegal to use and/or possess this plant.</p>
<p>My interest in <em>Salvia Divinorum</em> and its primary constituent, <a href="http://en.wikipedia.org/wiki/Salvinorin_A" target="_blank"><em>Salvinorin A</em></a>, is an extension of my fascination with the world of the arcane.</p>
<p>There are some things I should note, <em>Salvinorin A</em> is not a party drug, it is not something that you pop as a pill, it is much more than that; the plant itself, only exists today because of the Mazatec people who cultivate and tend to it; as such, it deserves much respect, and should be revered.  I highly recommend reading about the beliefs of the Mazatec people in regard to this herb before trying it yourself.  I can also recommend <a href="http://www.sagewisdom.org/usersguide.html" target="_blank">The Salvia Divinorum User&#8217;s Guide</a> as a great source of information to get started with.</p>
<p>I ordered a 10ml bottle of tincture, flavored with peppermint to mask the odorous taste, and in the two days it took to arrive, did a lot more research on the best setting and frame of mind to be in while taking it, along with traditional ceremonies performed prior and after.  When it finally did arrive, I must admit that I was over-excited; this is most certainly not something which will give you benefits without respect given.  I tried 5ml (according to the dosage guide that came with it, this is a very high dose), in the middle of the day, and beyond feeling a little heavy in myself, experienced nothing.</p>
<p>Tonight, having learned much from my botched attempt, I meditated for an hour, and then - with a slight assumption that the tincture must be weak - took the remaining 5ml.  I was unsure what to expect, I find that no-matter how much you read online, as I said earlier, everyone is unique.  Laying on my bed, what felt like an eternity passed, and I felt myself slowly losing contact with my physical body, strange visions drew themselves on my eyelids, impossible to focus or describe.  My ability to judge time completely left me, in my head, I would have assumed a mere 15 minutes had passed, at most, in actuality, it was nearer an hour.  Unfortunately, my reason for knowing this was due to not having turned my cell off - it rang, twice, so I ended up being dragged out of my trance and had to answer it.</p>
<p>At this point, I had assumed from everything that I had read, that what I had experienced in that time would be all I would experience.  Most people speak of the effects not lasting more than about 30-45 minutes, so having turned my phones off, I lay back down and resigned myself to a botched experience.</p>
<p>All I really remember, waking up 2 1/2 hours later, is a feeling which I can describe only as having my existence attached to a dimmer switch, and someone slowly fading me down to insignificance.  Waking up, I felt dazed and confused, as if I had just regained consciousness after a general anaesthetic and after a few minutes, my brain slowly re-engaged with my muscles and I was able to step out onto my balcony for air and a cigarette.  Standing there, gazing out across the sodium horizon, a feeling of peace washed over me, the demons that had been plaguing me badly for the past few months have gone, and I can think clearly again.  Many people say that an experience in which you remember nothing afterwards is not desirable, or useful; in my humble opinion, I got what I desired - the two things I had asked for while meditating.</p>
<p>My plan is to buy a <em>Salvia Divinorum</em> plant, to cultivate and care for myself, and later, have a milder experience in which I can learn things about my subconscious and possibly make my demons disappear permanently.  I can&#8217;t help but feel my respect for the old ways is justified.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/09/19/escaping-the-matrix/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Loneliness</title>
		<link>http://www.recalcitrance.net/2008/08/01/loneliness/</link>
		<comments>http://www.recalcitrance.net/2008/08/01/loneliness/#comments</comments>
		<pubDate>Fri, 01 Aug 2008 01:07:22 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[my life]]></category>

		<category><![CDATA[alone]]></category>

		<category><![CDATA[loneliness]]></category>

		<category><![CDATA[lonely]]></category>

		<category><![CDATA[single]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=19</guid>
		<description><![CDATA[I had planned to keep this thing entirely tech and interesting stuff only, however, right now, I could use some place to vent, and this seems as good a place as any.
Being single has its charms; no, really, it does.  Singledom goes very nicely with being a social outcast; I control my own schedule outside [...]]]></description>
			<content:encoded><![CDATA[<p>I had planned to keep this thing entirely tech and interesting stuff only, however, right now, I could use some place to vent, and this seems as good a place as any.</p>
<p>Being single has its charms; no, really, it does.  Singledom goes very nicely with being a social outcast; I control my own schedule outside of work hours, and am free to play computer games and generally be geeky.  There is a limit to these charms, however.  It&#8217;s been two years since I last heard the words &#8216;I love you&#8217; uttered by someone other than a very close friend or a family member, two years since I gazed into the eyes of someone I loved while laying together, two years since experiencing those crazy little moments that pass so quickly, where life seems so perfect, two years feeling alone in the world.</p>
<p>Call me crazy (it&#8217;s okay, you can, I really am insane. The doctor said so.), but I hate experiencing things on my own; going to museums, walking in parks, going to the beach, going out for a meal&#8230; in my eyes, these are all things couples do, so I don&#8217;t do them.  Partly to avoid seeing people in love - it&#8217;s not jealousy, just acceptance of the truth -, and because it all seems so gray.  I love discussion, so experiencing things, and not being able to talk about them, hear what someone else thought, seems pointless.</p>
<p>I&#8217;d love to be social&#8230; be one of those people who can walk into a room full of strangers and immediately start talking to them, making new friends, getting dates; that&#8217;s not me though.  I&#8217;m the quiet one who sits and watches everyone interact, wondering why I find it so hard,  I&#8217;m the one who leaves after 10 minutes because I feel overwhelmed, I&#8217;m the one who browses the missed connections&#8230; hoping.</p>
<p>It&#8217;s funny how far you can fall in two years.</p>
<p>Life is funny that way.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/08/01/loneliness/feed/</wfw:commentRss>
		</item>
		<item>
		<title>They fail it. (it is being a council).</title>
		<link>http://www.recalcitrance.net/2008/07/23/they-fail-it-it-is-being-a-council/</link>
		<comments>http://www.recalcitrance.net/2008/07/23/they-fail-it-it-is-being-a-council/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 18:42:48 +0000</pubDate>
		<dc:creator>A</dc:creator>
		
		<category><![CDATA[my life]]></category>

		<category><![CDATA[council]]></category>

		<category><![CDATA[fucking fail]]></category>

		<category><![CDATA[incompetence]]></category>

		<category><![CDATA[ineptitude]]></category>

		<category><![CDATA[tower hamlets]]></category>

		<guid isPermaLink="false">http://www.recalcitrance.net/?p=16</guid>
		<description><![CDATA[I can only assume that Tower Hamlets council is made up of people who have an IQ of less than 75.  At least, the council tax department is, from the experience I&#8217;ve had with them thus far.
I live in an apartment, it is nestled on the 3rd floor between countless other apartments, where other [...]]]></description>
			<content:encoded><![CDATA[<p>I can only assume that Tower Hamlets council is made up of people who have an IQ of less than 75.  At least, the council tax department is, from the experience I&#8217;ve had with them thus far.</p>
<p>I live in an apartment, it is nestled on the 3rd floor between countless other apartments, where other people live.  There are a couple of businesses here, but they&#8217;re in one of the other buildings, and no-where near to me, so I was a little surprised to find a &#8220;Non-Domestic Rating Demand Notice&#8221; both back and forward dated, for my council tax.</p>
<p>So far, I&#8217;ve tried calling the number for their offices, which seems to be constantly engaged - I guess they figure that if they leave the phone off the hook, then no-one will want to get in touch with them (similar logic to how they decided that my apartment is a business premises as far as I can tell) -, and the appeals number on the back, which went through to voicemail.</p>
<p>Tomorrow, some poor person in the council-tax department is going to wish they&#8217;d called in sick today, because the level of incompetence displayed here has really pissed me off.</p>
<p>I&#8217;ll no-doubt update this with further revelations of just how much a London Borough council can fail at their job.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recalcitrance.net/2008/07/23/they-fail-it-it-is-being-a-council/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

