My code works for everything except specular component.
glEnable(GL_COLOR_SUM);
...
glEnableClientState(GL_COLOR_ARRAY);
glColorPointer(4, GL_UNSIGNED_BYTE, 0, color);
glEnableClientState(GL_SECONDARY_COLOR_ARRAY);
glSecondaryColorPointer(3, GL_UNSIGNED_BYTE, 0, specular);
...
glDrawArrays(D3DPT_TRIANGLELIST, 0, 2);
It seems to ignore specular, but color, texture co-ordinates, positions, and so on are all completely fine.
This is NOT using lights and materials. Fixed-vertex pipeline. Shaders are not an option at this point, unfortunately.
glGetError() reports no errors at any point either.