Specular highlight

Hi, I have a program with a sphere and a cylinder, I copied the code to draw the sphere from my book, and I draw the cylinder by myself. The sphere has a nice specular spot on it when I move the light around, but I can not make the cylinder has any specular spot, please help. I draw both object with same color, same material settings.

Thank you.

Does the diffuse lighting work? If not, check the normals.

If you use normal per-vertex lighting(glLight), generate more triangles for the cylinder.

I think this is what you need:

glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL,GL_SEPARATE_SPECULAR_COLOR);