Archive for February, 2011

23
Feb
11

Upside-Down-Ternet

Well, for some time now I’ve wanted to recreate the ‘Upside-Down-Ternet‘ from pete@ex-parrot (reference) but the process used squid to handle the proxying and I didn’t want to install and configure (even if it’s only basic config) squid.

So I was looking for an alternative. I knew that I could create a relatively simple proxy with perl or python and had started the code with perl, where I was using HTTP::Proxy and adding filters. The problem was that the proxy reported the content as chunked. And I found no way to undo this. I tried to add the complete filter, to just pass complete contents to my custom filter but I wasn’t successful sending the modified image to the client. I even asked at perlmonks but no significative answer was left(only one actually answer at all, by the time of this writing).

I started reading the source of an existing webproxy project in perl, which was implemented at a lower level. So I tried that. I created a web server and a lwp agent in my script, and connected the requests to the agent. It worked!

After some tinkering and threading the script  I got something quite decent, but not very stable… Just good enough.

Features:

  • flips images(upside-down-ternet)
  • substitutes images for one image file
  • blurs images
  • runs a custom convert(imagemagick) command

The script is available here.

Note: I thought of setting as a sf project, but this script is so insignificant…and unstable… I have another proxy project going however, that may go into sf. Who knows…

Note2: If used as a prank, it is interesting to redirect automatically the traffic from another pc to yours and act as a proxy. The iptables part should be present in pete@ex-parrot. For the redirecting I’d use arpspoofing. Google it.

Advertisements
19
Feb
11

Sharing Photosmart 7200 from ubuntu to win7 via smb

So, I had to format my mothers computer because the 30GB partition reserved for Windows 7 64-bits had less than 3GB free space, and nothing really removable.

Instead of being lazy and using gparted to fix the problem(which included removing a 30GB Windows XP partition and moving the current partition out of a logical section of the harddrive, I just backed up the games(Steam rocks!) and formatted the damn thing.

Of course, backing up 100GB of Steam games and then getting them back would be no easy task(12hours by the steam backup manager, spliting the games into DVD sized chunks).

After having reinstalled everything, I went to configure the printer which is connected at another computer and shared through samba on an ubuntu maverick. (It was working fine before I formatted the harddrive.)

I added the printer through the interface in windows, but a prompt asked me to select the correct driver. OF COURSE, the exact driver of the printer was NOT present. Only photosmart 8xxx or photosmart 3xxx.

Searching the internet, I found out that the driver only is installed through windows update. Great. I had to select a driver, which only was installed if the printer was selected as the correct model. Just great….

I saw some references about modifying the smb.conf and cupsd.conf but none of the tries worked. I discovered the printer could be shared by selecting the cups http interface in windows but cups did not allow remote connections, and I was not able to configure it otherwise.

I ended up grabing the printer and connecting it to the Windows 7 and installing the driver, removing the printer device and taking it back to the ubuntu computer.

Then the driver was available in the prompt. YAY.

Note: I did not need to do this before, because the first time I configured the printer, the computer sharing it was Windows XP and probably reports the driver correctly to windows 7.

UPDATE
And I formatted my windows machine again. Had the same problem AGAIN. Obvious…

But this time I think I solved it… I’m trying to as I’m writing this.
This time I shared the printer via CUPS. The samba loading before cups problem in ubuntu is at fault.

It is quite easy configuring the CUPS interface via http://localhost:631 and sharing it on the network. Fuck samba.

I added the printer via http://ubuntumaching:631/printers/printer_name and set a similar driver(Photosmart C7200).
Now, in Windows, go to the Devices and Printers window, right-click the printer in question and click the Printer properties.
In the Advanced tab, click the New Driver button. Then follow the wizard, using the Windows Update to update your drivers list. It will take a while.

Select your driver and voilá! The correct driver is installed!




The Author

Older Ramblings

Tweets

Linux User Sig