Oh, right. I got confused because all function declarations use the struct keyword for mongo_buffer, but not for any other struct we have (mongo_cursor, mcon_collection, mongo_connection, ...).
Its weird that only one structure does