problems with 1-value texture mapping

There seems to be some problem using glTexImage2D() using GL_INTENSITY16 … basically i have 2D texture which has only a single value, which I’d like to texture onto a polygon. The value is 16-bit unsigned int and so I am using GLuint and GL_UNSIGNED_SHORT for texturing.

When I store the texture as RGBA wherein I copy the single value into R, G & B and then make A = 1, the texturing seems to work fine. Please let me know if I am doing anything wrong and is the use of GL_INTENSITY16 appropriate.

Don’t cross post.