PR_SetErrorText(NULL,0);
AddModule(char *moduleName, char *libFile, char *cipherString,	char *mechanismString){	unsigned long ciphers;	unsigned long mechanisms;	SECStatus status;	mechanisms =		getFlagsFromString(mechanismString, mechanismStrings,		  numMechanismStrings);	ciphers =		getFlagsFromString(cipherString, cipherStrings, numCipherStrings);        PR_SetErrorText(NULL,0);	status =		SECMOD_AddNewModule(moduleName, libFile,		  SECMOD_PubMechFlagstoInternal(mechanisms),		  SECMOD_PubCipherFlagstoInternal(ciphers) );	if(status != SECSuccess) {                char* errtxt=NULL;                PRInt32 copied = 0;                if (PR_GetErrorTextLength()) {                    errtxt = malloc(PR_GetErrorTextLength());                    copied = PR_GetErrorText(errtxt);                }                if (copied && errtxt) {		    PR_fprintf(PR_STDERR, errStrings[ADD_MODULE_FAILED_STATUS_ERR], moduleName, errtxt);                    free(errtxt);                }                else {                    PR_fprintf(PR_STDERR, errStrings[ADD_MODULE_FAILED_ERR], moduleName);                }		return ADD_MODULE_FAILED_ERR;	} else {		PR_fprintf(PR_STDOUT, msgStrings[ADD_MODULE_SUCCESS_MSG], moduleName);		return SUCCESS;	}}