netlib & NSPR (Netscape Portable Runtime)

Netlib was written using nspr, the Netscape Portable Runtime libraries, to allow the developers to focus more on network library related issues rather than cross-platform base functionality problems. For an in depth explanation of nspr please reference the nspr documentation.

Functions preceded by "PR_" are nspr library functions and replace most system calls. In some cases these calls simply map to the vanilla system calls they replace, but, often the system call has been completely rewritten for optimization and/or portability reasons.

Some nspr routines netlib uses are listed here:
PR_NetAddrToString() - converts a host entity to a string
PR_NEWZAP() - allocates memory and zeros it out
PR_DELETE() - frees memory
PR_Read() - reads data from a file descriptor
PR_Write() - writes data to a file descriptor
PR_Close() - closes a file descriptor
PR_CurrentThread() - returns the current thread
PR_SetSocketOption() - sets options on a socket

Judson Valeski, 1998