{{error}}
{{(quickSearchResults.length>10)?'10+':(quickSearchResults.length)}} {{(quickSearchResults.length==1)?'result':'results'}}
{{result.title}} {{result.timeStamp | mysql2ymd }}
I am sorry, no such article was written yet.
SMTP Server illegal access failure

I took a look in the logs of my ad-hoc SMTP server (running on the main domain) sorescu.eu and I noticed a series of denied authentications.

I did not understand what happened, but I saw the user and the password list encoded in Base64. After I collected all the encoded values, I was curious which credentials were tested. I shall present below the application that I wrote to help me in decoding them, and, the list of passwords used to log in.

Java Base64 decoder code:

Worthy saying, before listing the password list:

  • the client presented itself as GOD-E49531CFA2A (really?!?);
  • the client was a bot that was simply dumping plain text to port 25, as it continued sending the mail spam, without even looking that the access was denied;
  • my SMTP server and relay are the product of one white-night, but this test is a first realistic test of my server;
  • many more things remain to be implemented in server, including white and black lists, including changing the password with a strong one;
The password series is attached.

2 files attached: Base64Decoder.java passwords.txt
Base64Decoder.java passwords.txt
Printing Internet Explorer documents from Java applications using JExplorer

Few days ago a colleague of mine got an almost-impossible task: fix a bug in a Java application that had to print an HTML document built ad-hoc, and the customer was complaining that when printing, in place of printing, it was throwing various JavaScript errors.

The problem was that once the Java application was loading the JExplorer component, the application was running the code (I don't remember by heart the code, but it is close to reality).

And, the situation to be worsened, the bug was appearing only sometimes, on some machines, at some times, being hard to identify and understand a pattern.

After two hours of drinking coffee (vital brain combustion ingredient, obviously) and lots of endless investigations, just like an inspiration, I remembered that the JExplorer publishes an API through which I can tell it to save the document.

At the end, the bug was fixed with a very simple line of code.

2 files attached: Before.java After.java
Before.java After.java
Free Screen Capture application
Long time ago I needed to capture desktop images for work purposes; I used various applications, but at the end I wrote my own application in Java (probably someday I shall publish the source code from this application).

In one day I noticed my wife struggling with different applications to capture the screen, and I decided to help her; but I could not give her my application, as it was built in a complex environment and I had two options:
  1. to write from scratch a minimal java-based application for her;
  2. to give her my application, but which was relying on a complex code base of more than 80MB + Java runtime environment.
I took the first approach - thinking it is easy. I ended up with the following problems: 
  1. her Java version was some ancient version, so I needed to recompile the source for her version; as a consequence, I needed also to go back to the old style without generics, but the tragedy was that I had to wrap in the application also components from Java 6 that I was relying on (the GUI automation framework from Sun);
  2. I had to give her (she is not very technical person) an USB stick with multiple versions and files, and I was thinking how to make her understand how to start up a Java application, knowing nothing about her computer configuration.
I thought: "Let's cut off the problem from the root -give Java up" and I decided to take a look to see what is all the fuss around .NET applications.

Hence, I chose to write my application in .NET, and after some research I chose C# (just like professionals, not messing with Visual Basic, and yet using a modern language).

What came next? The Screen Capture application: Screen Capture

The basic code is identical from the very first version, but for sharing the application here, I chose to change a bit the icons and the tray icon behavior.

The application should be available at the following link: ScreenCapture-1202202213.

How to start the application:
  1. download the application Screen Capture (270 KB size);
  2. execute it (you don't need to save it in a specific location, or to install it);
  3. it should open a white photo camera icon.
How to configure the application saving location:
  1. right-click on the white icon and choose Select Folder
  2. once done, the application will save the location in the user's application private registry; so the next time the application is opened, it knows the location to save;
  3. Note: if you attempt to save a desktop image without selecting the first time on the given machine the location, you will be prompted to select the location.

How to use the application:
  1. to capture the desktop, just click once on the tray icon;
  2. the icon will transform in green suggesting that the saving process is executed, and after a very short period it becomes back white;
How to close the application:
  1. Right click on the white icon and in the dialogue box choose the Quit button, which, for feedback, will transform the white icon in red, and after, the application should silently quit.
Details about the image capture:
  1. The image will be saved in the PNG format (smaller format, and loseless quality - in case you want to reuse the image for machine processing and image recognition);
  2. The image name will be built based on the time the image was captured, containing the year, month, day, hour, minute, second, and hundredth of second, like in: 12.02.20-22.11.04.50.PNG.
I hope you will find this application useful, and you will share it with others in need.
Below can be seen also the main source code of the application.
1 files attached: DesktopCapture.cs
DesktopCapture.cs
My Place - the place of comfort and all the tools at hand

I created a new subdomain named My.Sorescu.Eu - as the central place for applications and tools that should help you stay active, competitive, and in shape in a more and more competitive world.

Log in, check, or just come back in few weeks to see the progress.

2012-02-16 My first post
My first post
Well, this is my first post.
Soon, more information will be available also on dragos-matei.sorescu.eu.