Blitting SDL/OpenGL screen surface on to another surface

Hi guys,

Any idea if it is possible to read off pixel data (say, using
glReadPixels) from an SDL + OpenGL screen, or whether the SDL surface
representing the screen can be blitted onto another SDL surface? I am
experiencing some very weird behaviour from the screen surface and
although the format looks ok (RGBA, 32 bits per pixel, 4 byes per pixel,
correct dimensions, masks etc.), I still get vertical lines even if I
try sending 0xFF to all the bytes in the buffer (I would expect the
surface to turn white).

Thanks for your help