Syndicate content

language

In computing, a language is a lexicon and grammar enabling a programmer to write software. There are interpreted and compiled languages. When compiling the computer transform the instructions of a program into instructions that the processor can execute natively.

Attacks by ZmEu or w00tw00t robots

Who is ZmEu?

An image showing ZmeuThe name Zmeu (no capital E) is the name of a fantastic creature of Romania. There are so many stories that there isn't a clear understanding of what it is... but it is human like, can spit fire and wants to marry young women.

If you're wondering, it is generally a bad guy.

ZmEu Attack

Today, I noticed a lot of traffic on one of my servers. Looking into what was happening, I immediately found out that an attacker was looking for a loophole in that system. That attack was being performed from China.

Recover name of message registered with RegisterWindowMessage()

Today I was confronted with an error in a process that would run in the background and slowly fill up the Windows message queue when it should have been dormant.

I looked at the messages that were being processed once the process woke up and the message number was 0xC10C or so. Nothing in the software has such a number. So I looked around and found out that the message was one of those created using the RegisterWindowMessage() function. (This is wrong in that application since the messages are never used from external applications, but oh well... that does not change the basic problem.)

So, ...

no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory

As I upgrade to 14.04, I started seeing this error in my console:

no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory

Quite cryptic if you ask me, but the "leaking memory" did sound bad.

The error would in particular appear when I used sudo for whatever reason, for example:

sudo iptables -L -nvx

So... something to do with sudo?

I found the answer on the Ubuntu forum. The solution is to turn off a feature of samba. Run the samba setup tool in your console:

sudo pam-auth-update

That opens a curses window in your console. You should then see an option ...

[ODBC Driver Manager] Data source name not found and no default driver specified

As I was working on a MS-Windows installation, I ran in this weird error: Data source not found and no default driver specified...

This was output when I was running the following in a command line prompt:

osql -E

The result should have been an MSSQL prompt instead!

The problem on the computer was that I uninstalled MSSQL 2005 that was automatically installed by Visual Studio C++ and was not compatible with our application, so I first uninstalled that but that uninstallation is really not proper. It leaves a LOT of things behind.

After that I installed MSSQL 2014 which was reported as ...

The for() in C, C++, Java, PHP, JavaScript...

As I am working on my as2js compiler, I stumble on a couple of problems with the for() loop parsing because of the in keyword. That made me think and the for() statement was actually a very funny one. Yes! You can actually write something like this and it compiles:

int zero;
for(3;2;1) zero;

As you can see, all 3 entries in the for() statement are valid expressions and therefore the compiler can compile that code. This creates a loop that runs forever, similar to:

for(;;) zero;

but much less clear to read, obviously.

Now that's food for thought, isn't it?

In JavaScript, you ...

#PCDATA and DTDs

If you are like me and write DTDs to check your XML files to make sure you don't have too many mistakes in them, then you probably have had this problem before.

The #PCDATA has a very special behavior and it is really restrained as follow:

  • #PCDATA must appear at the start
  • #PCDATA must be repeated from zero to infinity, so only * work with it
  • #PCDATA cannot be used with sub-groups (things between parenthesis)

Something like this:

<!ELEMENT Z (P | (#PCDATA | A | B | C)* | Q)+>

does not work because you use + and #PCDATA is within a sub-group.

What you need ...

Console color: dark blue on black unreadable

As I work in consoles every now and then, I run in that one problem:

Some text is written in Dark Blue over the Black background:

This is a good example of what I'm talking about.

And if you can read that text, wow! (without selecting it first.

So... how could you change the color of that blue to make it readable? There is a way by sending some escape command to the console:

echo -e "\\e]R\\e]PC6495ed"

That command changes the color of the blue to a light blue (somewhat "cyan", although not light cyan.)

The "\\e]R" part is to reset the colors to ...

Debug and/or Release specific command line option in cmake

Today I ran in a problem with cmake which was to very simply select /MT instead of /MD for a small set of projects. The problem is that so far this feature was at least on a per directory basis. Since the exact same directory is used to build the dynamic (DLL) and static (.lib) libraries, having two directories is not exactly an option here.

set ( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT" )
set ( CMAKE_C_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT" )
set ( CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_RELEASE} /MTd" )
set ( CMAKE_C_FLAGS_DEBUG ...

Very Sleepy CPU Profiler written in C/C++

When running a process under MS-Windows, it is at times rather difficult to find a problem caused by some slowness in your code, especially when it is not expected to be slow.and you do not get any kind of feedback from your software outside of the slowness itself.

When that happens a good way to find the problem is to use a profiler. Under MS-Windows, you have quite a few choices, but in most cases I've seen rather complicated solutions. Today I was told to check in Very Sleepy which I downloaded very quickly, installed very quickly, and ran very quickly., Also it did not give me the ...

Compose Key under Linux

Under X-Windows, I use the QWERTY keyboard because I'm so used to it. But once in a while I want to write something with an accent or a special character. To do that I use the compose key. In my case the compose key is the Caps Lock key. So I push the Caps Lock once, and then two other keys to get the character I want. For example, the c with a cedilla is c with a comma: ç.

The following is the content of the Compose file available on Linux Ubuntu (/usr/share/X11/locale/en_US.UTF-8/Compose):

# UTF-8 (Unicode) compose sequence
# by David.Monniaux
#

# Part 1 - Manual ...
Syndicate content Syndicate content

     

Terms of Site Index

Find the page/content you are looking for with our index.

  • dll
    Dynamic Link Library--the extension and name used for dynamically loaded libraries under MS-Windows.
  • fix
  • git
  • IDE
  • SP4