Wednesday, 23 March 2011

Garbage in, Garbage out

Why you should not accept data from users into a DB without checking it.

Exhibit A: "select manufacturer"

<OPTION value="FUJITSO">FUJITSO</OPTION>

<OPTION value="FUJITSU">FUJITSU</OPTION>

<OPTION value="FUJITSU SIEMENS">FUJITSU SIEMENS</OPTION>

<OPTION value="FUJITSU-SIEMEN">FUJITSU-SIEMEN</OPTION>

<OPTION value="FUJITSU-SIEMENES">FUJITSU-SIEMENES</OPTION>

<OPTION value="FUJITSU-SIEMENS">FUJITSU-SIEMENS</OPTION>

Monday, 21 March 2011

The saga of SAGA

for anyone who wishes to install a glite-WN without the overhead of SAGA, the magic voodoo on the command line is

yum --enablerepo dag groupinstall glite-WN --exclude \*saga\*

Friday, 18 March 2011

Makefile Faffage

I've inherited a piece of legacy code (an inirscript that needed bringing up to FHS and Fedora packaging guidelines) -- as part of the testing I realised I needed a noddy way to generate the tar.gz sources. There was already a Makefile in the package (for ETICS) but I hacked in the following to quickly build up a NVR-tarfile.

Not pretty, but if anyone fancies some Makefile golf, I'm open to suggestions:


dist:
echo ${package}-`sed \
-e '/^Version:/!d' \
-e 's/[^0-9.]*\([0-9.]*\).*/\1/' \
-e q \
${package}.spec` > .fname
-rm -rf `cat .fname`
cp -lvr src/ `cat .fname`
tar chzf `cat .fname`.tar.gz `cat .fname`
-rm -rf `cat .fname` .fname


and yes, it bears a striking resemblance to the GNU Complex Makefile Example