OpenGL man pages
glGetString - returns a string describing the current GL connection
const GLubyte * glGetString( GLenum name )
name Specifies a symbolic constant, one of GL_VENDOR, GL_RENDERER,
GL_VERSION, or GL_EXTENSIONS.
glGetString returns a pointer to a static string describing some aspect of
the current GL connection. name can be one of the following:
GL_VENDOR Returns the company responsible for this GL
implementation. This name does not change from release
GL_RENDERER Returns the name of the renderer. This name is
typically specific to a particular configuration of a
hardware platform. It does not change from release to
GL_VERSION Returns a version or release number.
GL_EXTENSIONS Returns a space-separated list of supported extensions
Because GL does not include queries for the performance characteristics of
an implementation, it is expected that some applications will be written to
recognize known platforms and will modify their GL usage based on known
performance characteristics of these platforms. Strings GL_VENDOR and
GL_RENDERER together uniquely specify a platform, and will not change from
release to release. They should be used by such platform recognition
Some applications will want to make use of features which are not part of
the standard GL. These features may be implemented as extensions to the
standard GL. The GL_EXTENSIONS string is a space seperated list of
supported GL extensions. (Extension names never contain a space character.)
The GL_VERSION string begins with a version number. The version number is
of the form major_number.minor_number or
major_number.minor_number.release_number. Vendor specific information may
follow the version number. Its format depends on the implementation, but a
space always seperates the version number and the vendor specific
All strings are null-terminated.
If an error is generated, glGetString returns zero.
The client and server may support different versions or extensions.
glGetString always returns a compatible version number or list of
extensions. The release number always describes the server.
GL_INVALID_ENUM is generated if name is not an accepted value.
GL_INVALID_OPERATION is generated if glGetString is executed between the
execution of glBegin and the corresponding execution of glEnd.
Fri Dec 6 11:18:03 EST 1996
Look here for legal stuff: Legal