(Writing to another buffer) PLEASE anyone?

Im supposed to do it till monday. I have to write the content of my viewport to a another buffer with the intent of writing to a .bmp file. Ive made de necessary things to write to the file, but (1) how do i copy opengl active buffers to the one ive created?
typedef struct {
float r; float g; float b; float alpha; } pixel_buffer;
(2) Is this a opengl valid buffer anyway?
Can someone answer this to questions? please, thanks, Jose Ml

I belive you want to try using glReadPixels(); this will copy pixels from a gl buffer to memory to allow you to do what you like with it.