The Linux Page

MS-Access hangs when setting a recordset

Today I experienced a hard lock-up with MS-Access as I was in a form typing a new query.

The new query data is checked first, if valid, then the query is processed and ends in a SELECT SQL order which I save in the Form with a simple OpenRecordset call as in:

sql = "SELECT stuff FROM thing WHERE foo LIKE 'begin*'"
Set CUSTOMER_LIST.Form.Recordset = CurrentDb.OpenRecordset(sql)

That used to work just fine in older versions of MS-Access, but we now use MS-Access 2007.

The hanging happens on the 2nd line, when the Set occurs. Note that it generally happens the second

Too many authentication failures for <username>

Today I tried to make use of sftp to transfer a website to SourceForge.net. Unfortunately, it kept giving me an error:

Received disconnect from <IP address>: 2: Too many authentication failures for <username>

I looked around why that would happen and could not really find anything decisive... until I found an issue in the trac system that SourceForge.net uses. That issue mentioned the fact that the ssh-agent could be the culprit.

It was. Somehow the ssh-agent was sending key after key after key... exhausting the number of keys that SourceForget.net will accept and thus made it

Root Kit

Under a Unix system, a virus is often called a Root Kit. This is because the only real way to really hurt the data on a Unix system is by changing things that are protected such that only a root user can access them.

Thus hackers write tools that check for flaws and when they find one they become root on your system. From that point on, your system is compromised and needs to be (1) reinstalled and (2) fixed...

In this case, Fixed means for you to find the process that the rootkit used to become root which is often not easy since they are likely to have deleted all the logs (hence the need

Compiling in 64bit with VC 2010 can result in a crashing software

Today, as I was trying to run a 64 bit application in Release mode under Windows 7, I got a crash about a NULL pointer. There is the debuggee (<- well known Microsoft spelling of Debugger) error window:

Unhandled exception in ... Access violation reading location 0x0000...

Unhandled exception at 0x52740ccf in guikeyboard_test_developer.exe:
0xC0000005: Access violation reading location 0x0000000000000000.

So... according to this error, the software access a NULL pointer. It took me some time, but the problem was not a NULL pointer, it was an unaligned memory access. In other words, it is trying to write a a pointer that is not 16 bytes aligned, which is ...

QtWarning QMetaObject::connectSlotsByName: No matching signal for on_something_event()

Today I noticed that I was getting this warning while running one of my tests1:

   QtWarning QMetaObject::connectSlotsByName: No matching signal for on_something_event()

Search with Google I found a post that explained, very clearly, what happens. I'd bet it's somewhere in the documentation of Qt, but so far I have not found anything about that in ...

  • 1. I had not noticed before... Unfortunately, you get a s**t load of output under the Windows IDE about the loading of DLLs which no one really cares about and that often blurs your view of other much more important messages!

Thunderbird Sent folder disappeared

A little while ago I had a problem with the Thunderbird Sent folder.

I'm not too sure what had happened but it just wouldn't work right.

I found a page talking about the problem here:

http://forums.mozillazine.org/viewtopic.php?f=39&t=763585

The solution that worked for me is actually documented in that post. Ther eit is:

  1. Go to your account folder and check the properties.
  2. Click on "Copies & Folders" and then make sure that you use the "Sent" folder option
  3. Enable Place a copy in under "When sending messages, automatically:"
  4. ...

Qt and DLL mismatch / error

My Story

I'm using Qt under Linux and MS-Windows.

When I started with MS-Windows, I could not run the Release version. I thought the problem was because I was using a pre-compiled version of Qt 4.6.x and let it go for a while.

At some point, I finally upgraded to Qt 4.7.x thinking that would clear off that Release problem.

This time around, I actually compiled the library, see instructions here:

  Compile Qt 4.7.x with Visual Studio 10 (VC++ 2010)

The result was that a few bugs I noticed while running with 4.6.x were gone. Nice. However, I still couldn't run with the release version. Why would that be?

I

Norton Anti-Programmers

Today I discovered why I was having a few hurdles last week.

The IT department pushed the installation of Norton Anti-virus with some Internet controls, whatever the exact name is...

The utility installs itself intrinsically in the operating system. This means it actually transforms a certain number of low level functions to manipulate your data files and check them as soon as they are created.

The potential results are that as your compile files:

  1. The file may be found to be locked (Norton locks it to verify it even if the compiler isn't finished.)
  2. The file may be removed ...

Restore Firefox warnings when viewing non-secure data on a secure page

One thing that I quickly do on my browsers is turn off warnings about non-secure data when browsing secure pages (with HTTPS .)

It's rarely a problem and with all those features you like to have (Facebook, Twitter, AddThis, ShareThis, Google Plus, and othe fun widgets...) it's hard to avoid. Actually, many times the problem lies in one of these scripts and thus you cannot just fix your website. Without that 3rd party script owner fixing their code, it just won't work at all.

Now, once in a while I work on a customer website and they really want to have a 100% clean slate. Thus,

Skip Postgrey test with a Postfix restriction map

By default, when postfix is installed with postgrey, all the emails that are not blocked by some other means are all passed to postgrey.

What if you have a customer who doesn't want to wait forever to get his/her emails?

Well... you need to bypass postgrey (and good luck to him/her in regard to heavy spamming...)

The setup requires two additional entries as defined here:

# in main.cf
smtpd_restriction_classes = permissive
permissive = permit

Here we define a new class called "permissive" (which is case sensitive!) and that we will use in the restriction access file.