I have been trying to write equivalent functions that behave excatly like “glMap2” and “glEvalCoord2”.

The OpenGL specification(blue book) says that when GL_AUTO_NORMAL is enabled the normal to surface is automatically calculated when surface is drawn.

The formula is dp/du X dp/dv ( X - vector cross product, p = (x,y,z, w))

Does anybody know any algorithm or(c/c++ program) to calculate the normals.
If someone already has a equivalent functions that (that behave exactly like glMap2 and glEvalCoord2) I am trying to write it would be of great help if you share it with me.