To do what most of you refer to as specular highlighting, all you need to do is use a specular map (which is basically a while gradient sphere, with the middle being brightest) on a black background, and map it onto every vertex using the vertex's normal for texture coordinates, after scaling the normal.
glBlend(GL_ONE,GL_ONE); //Add-blend the specular highlight
glTexCoord2f((Vlist[index].x/2) +0.5f, Vlist[index].y/2 +0.5f);
I'm not gonna explain the math behind why it works, but it is mathematically correct phong shading, assuming that the light source is a point light, right where the viewer is, and the viewer is infinitely far from the viewed object (As in, looking at it through a giant telescope, so there's no perspective taken into account).
It's got limitations, but it looks good, and is very easy to implement on hardware.