Index: jss/security/jss/org/mozilla/jss/CryptoManager.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/CryptoManager.c 2011-10-04 21:35:23.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/CryptoManager.c 2011-10-04 21:38:22.226064623 +0300 @@ -55,7 +55,7 @@ #include "pk11util.h" -#if defined(AIX) || defined(HPUX) || defined(LINUX) +#if defined(AIX) || defined(HPUX) #include #endif @@ -106,13 +106,13 @@ getPWFromCallback(PK11SlotInfo *slot, PRBool retry, void *arg); /************************************************************* - * AIX, HP, and Linux signal handling madness + * AIX and HP signal handling madness * * In order for the JVM, kernel, and NSPR to work together, we setup * a signal handler for SIGCHLD that does nothing. This is only done - * on AIX, HP, and Linux. + * on AIX and HP. *************************************************************/ -#if defined(AIX) || defined(HPUX) || defined(LINUX) +#if defined(AIX) || defined(HPUX) static PRStatus handleSigChild(JNIEnv *env) { @@ -300,8 +300,6 @@ jboolean cooperate) { SECStatus rv = SECFailure; - JavaVM *VMs[5]; - jint numVMs; char *szConfigDir = NULL; char *szCertPrefix = NULL; char *szKeyPrefix = NULL; Index: jss/security/jss/org/mozilla/jss/PK11Finder.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/PK11Finder.c 2011-10-04 21:35:23.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/PK11Finder.c 2011-10-04 21:38:22.230064623 +0300 @@ -263,7 +263,7 @@ Java_org_mozilla_jss_CryptoManager_findPrivKeyByCertNative (JNIEnv *env, jobject this, jobject Cert) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread=NULL; CERTCertificate *cert; PK11SlotInfo *slot; SECKEYPrivateKey *privKey=NULL; @@ -458,7 +458,7 @@ Java_org_mozilla_jss_CryptoManager_buildCertificateChainNative (JNIEnv *env, jobject this, jobject leafCert) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread=NULL; CERTCertificate *leaf; jobjectArray chainArray=NULL; CERTCertDBHandle *certdb; @@ -812,7 +812,7 @@ SECItem *derCerts=NULL; int certi= -1; SECItem theDerCert; - int numCerts; + int numCerts = 0; jbyte *packageBytes=NULL; jsize packageLen; SECStatus status; @@ -1486,7 +1486,7 @@ CERTSignedCrl *crl = NULL; SECItem *packageItem = NULL; int status = SECFailure; - char *url; + char *url = NULL; char *errmsg = NULL; /*************************************************** @@ -1651,7 +1651,7 @@ Java_org_mozilla_jss_CryptoManager_verifyCertificateNowCUNative(JNIEnv *env, jobject self, jstring nickString, jboolean checkSig) { - SECStatus rv = SECFailure; + SECStatus VARIABLE_MAY_NOT_BE_USED rv = SECFailure; SECCertificateUsage currUsage = 0x0000; rv = verifyCertificateNow(env, self, nickString, checkSig, 0, &currUsage); @@ -1736,7 +1736,6 @@ SECStatus rv = SECFailure; SECCertUsage certUsage; SECItem *derCerts[2]; - SECStatus status; CERTCertificate **certArray = NULL; CERTCertDBHandle *certdb = CERT_GetDefaultCertDB(); Index: jss/security/jss/org/mozilla/jss/SecretDecoderRing/KeyManager.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/SecretDecoderRing/KeyManager.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/SecretDecoderRing/KeyManager.c 2011-10-04 21:38:22.230064623 +0300 @@ -358,7 +358,6 @@ { PK11SlotInfo *slot = NULL; PK11SymKey *symk = NULL; - SECStatus status; /* get the slot */ if( JSS_PK11_getTokenSlotPtr(env, tokenObj, &slot) != PR_SUCCESS ) { Index: jss/security/jss/org/mozilla/jss/crypto/PQGParams.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/crypto/PQGParams.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/crypto/PQGParams.c 2011-10-04 21:38:22.230064623 +0300 @@ -371,7 +371,7 @@ /*********************************************************************** * Perform the verification. */ - if( PK11_PQG_VerifyParams(pParams, pVfy, &verifyResult) != PR_SUCCESS) { + if( PK11_PQG_VerifyParams(pParams, pVfy, &verifyResult) != SECSuccess) { JSS_throw(env, OUT_OF_MEMORY_ERROR); goto finish; } Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11Cert.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11Cert.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11Cert.c 2011-10-04 21:38:22.230064623 +0300 @@ -62,7 +62,7 @@ JNIEXPORT jbyteArray JNICALL Java_org_mozilla_jss_pkcs11_PK11Cert_getEncoded (JNIEnv *env, jobject this) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; CERTCertificate *cert; SECItem *derCert; jbyteArray derArray=NULL; @@ -118,9 +118,9 @@ JNIEXPORT jint JNICALL Java_org_mozilla_jss_pkcs11_PK11Cert_getVersion (JNIEnv *env, jobject this) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; CERTCertificate *cert; - long lVersion; + long lVersion = 0; pThread = PR_AttachThread(PR_SYSTEM_THREAD, 0, NULL); PR_ASSERT(pThread != NULL); @@ -165,7 +165,7 @@ { CERTCertificate *cert; SECKEYPublicKey *pubk=NULL; - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; jobject pubKey=NULL; PR_ASSERT(env!=NULL && this!=NULL); @@ -210,7 +210,7 @@ (JNIEnv *env, jobject this) { CERTCertificate *cert; - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; PR_ASSERT(env!=NULL && this!=NULL); Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11Cipher.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11Cipher.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11Cipher.c 2011-10-04 21:38:22.230064623 +0300 @@ -73,7 +73,7 @@ SECItem *iv=NULL; PK11Context *context=NULL; CK_ATTRIBUTE_TYPE op; - jobject contextObj; + jobject contextObj = NULL; PR_ASSERT(env!=NULL && clazz!=NULL && keyObj!=NULL && algObj!=NULL); Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyGenerator.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11KeyGenerator.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyGenerator.c 2011-10-04 21:38:22.230064623 +0300 @@ -196,7 +196,7 @@ } #endif -static void +static void FUNCTION_MAY_NOT_BE_USED print_secitem(SECItem *item) { int i; int online; Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyPairGenerator.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11KeyPairGenerator.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyPairGenerator.c 2011-10-04 21:38:22.230064623 +0300 @@ -452,7 +452,7 @@ for (i=0; i < item->len; i++) { printf(" %02x",data[i]); } - printf(" : 0x%08x %d\n", data, item->len); + printf(" : %8p %d\n", data, item->len); } /********************************************************************** Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyWrapper.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11KeyWrapper.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11KeyWrapper.c 2011-10-04 21:38:22.230064623 +0300 @@ -562,7 +562,7 @@ jint keyLen, jbyteArray ivBA, jint usageEnum) { PK11SymKey *symKey=NULL; - CK_MECHANISM_TYPE wrappingMech, keyTypeMech; + CK_MECHANISM_TYPE wrappingMech=0, keyTypeMech=0; SECItem *wrappedKey=NULL, *iv=NULL, *param=NULL; jobject keyObj=NULL; SECKEYPrivateKey *wrappingKey=NULL; Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11MessageDigest.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11MessageDigest.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11MessageDigest.c 2011-10-04 21:38:22.230064623 +0300 @@ -88,7 +88,6 @@ PK11Context *context = NULL; CK_MECHANISM_TYPE mech; SECItem param; - PK11SlotInfo *slot=NULL; jobject contextObj=NULL; mech = JSS_getPK11MechFromAlg(env, algObj); Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11Module.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11Module.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11Module.c 2011-10-04 21:38:22.230064623 +0300 @@ -254,7 +254,7 @@ { SECMODModule *module; - if (JSS_getPtrFromProxy(env, this, &module) != PR_SUCCESS) { + if (JSS_getPtrFromProxy(env, this, (void **)&module) != PR_SUCCESS) { ASSERT_OUTOFMEM(env); goto finish; } Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11PrivKey.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11PrivKey.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11PrivKey.c 2011-10-04 21:38:22.234064623 +0300 @@ -174,7 +174,7 @@ Java_org_mozilla_jss_pkcs11_PK11PrivKey_getKeyType (JNIEnv *env, jobject this) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; SECKEYPrivateKey *privk; KeyType keyType; char* keyTypeFieldName; @@ -259,7 +259,7 @@ (JNIEnv *env, jobject this) { SECKEYPrivateKey *privk; - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; PR_ASSERT(env!=NULL && this!=NULL); @@ -358,7 +358,6 @@ (JNIEnv *env, jobject this) { SECKEYPrivateKey *key = NULL; - PK11SlotInfo *slot = NULL; SECItem *idItem = NULL; jbyteArray byteArray = NULL; Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11PubKey.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11PubKey.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11PubKey.c 2011-10-04 21:38:22.234064623 +0300 @@ -62,7 +62,7 @@ (JNIEnv *env, jobject this) { SECKEYPublicKey *pubk; - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; PR_ASSERT(env!=NULL && this!=NULL); @@ -179,7 +179,7 @@ Java_org_mozilla_jss_pkcs11_PK11PubKey_verifyKeyIsOnToken (JNIEnv *env, jobject this, jobject token) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; SECKEYPublicKey *key = NULL; PK11SlotInfo *slot = NULL; PK11SlotInfo *keySlot = NULL; @@ -231,7 +231,7 @@ Java_org_mozilla_jss_pkcs11_PK11PubKey_getKeyType (JNIEnv *env, jobject this) { - PRThread *pThread; + PRThread * VARIABLE_MAY_NOT_BE_USED pThread; SECKEYPublicKey *pubk; KeyType keyType; char* keyTypeFieldName; @@ -454,7 +454,7 @@ { SECKEYPublicKey *pubk; jbyteArray byteArray=NULL; - SECItem *item; + SECItem *item=NULL; PR_ASSERT(env!=NULL && this!=NULL); @@ -526,7 +526,6 @@ { jobject pubkObj=NULL; SECKEYPublicKey *pubk=NULL; - SECStatus rv; SECItem *pubkDER=NULL; /* validate args */ Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11SecureRandom.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11SecureRandom.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11SecureRandom.c 2011-10-04 21:38:22.234064623 +0300 @@ -112,7 +112,7 @@ * "C" data members */ - PRThread* pThread = NULL; + PRThread* VARIABLE_MAY_NOT_BE_USED pThread = NULL; SECStatus status = PR_FALSE; PK11SlotInfo* slot = NULL; @@ -262,7 +262,7 @@ * "C" data members */ - PRThread* pThread = NULL; + PRThread* VARIABLE_MAY_NOT_BE_USED pThread = NULL; SECStatus status = PR_FALSE; Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11Store.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11Store.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11Store.c 2011-10-04 21:38:22.234064623 +0300 @@ -319,7 +319,7 @@ (JNIEnv *env, jobject this, jobject certObject) { CERTCertificate *cert; - SECStatus status; + SECStatus VARIABLE_MAY_NOT_BE_USED status; PR_ASSERT(env!=NULL && this!=NULL); if(certObject == NULL) { @@ -349,7 +349,7 @@ (JNIEnv *env, jobject this, jobject certObject) { CERTCertificate *cert; - SECStatus status; + SECStatus VARIABLE_MAY_NOT_BE_USED status; PR_ASSERT(env!=NULL && this!=NULL); if(certObject == NULL) { Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11SymKey.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11SymKey.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11SymKey.c 2011-10-04 21:38:22.234064623 +0300 @@ -233,7 +233,7 @@ jfieldID typeField=NULL; jobject typeObject=NULL; - if( JSS_PK11_getSymKeyPtr(env, this, &key) != SECSuccess ) { + if( JSS_PK11_getSymKeyPtr(env, this, &key) != PR_SUCCESS ) { ASSERT_OUTOFMEM(env); goto finish; } Index: jss/security/jss/org/mozilla/jss/pkcs11/PK11Token.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/pkcs11/PK11Token.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/pkcs11/PK11Token.c 2011-10-04 21:38:22.234064623 +0300 @@ -961,9 +961,9 @@ jstring keyType, jbyteArray P, jbyteArray Q, jbyteArray G) { PK11SlotInfo *slot; - const char* c_subject; + const char* c_subject=NULL; jboolean isCopy; - unsigned char *b64request; + unsigned char *b64request=NULL; SECItem p, q, g; PQGParams *dsaParams=NULL; const char* c_keyType; @@ -1080,7 +1080,7 @@ SECStatus rv; PRArenaPool *arena; SECItem result_der, result; - SECItem *blob; + SECItem * VARIABLE_MAY_NOT_BE_USED blob; CK_MECHANISM_TYPE signMech; CK_MECHANISM_TYPE keygenMech; Index: jss/security/jss/org/mozilla/jss/provider/java/security/JSSKeyStoreSpi.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/provider/java/security/JSSKeyStoreSpi.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/provider/java/security/JSSKeyStoreSpi.c 2011-10-04 21:38:22.234064623 +0300 @@ -89,7 +89,6 @@ SECKEYPublicKeyList* pubkList = NULL; PK11SymKey *symKey = NULL; CERTCertList *certList = NULL; - SECStatus secstat; /* * Get all private keys @@ -508,7 +507,6 @@ { PK11SlotInfo *slot; EngineGetCertificateCBInfo cbinfo = {NULL,NULL}; - jbyteArray derCertBA = NULL; PRStatus status = PR_FAILURE; if( alias == NULL ) goto finish; @@ -813,7 +811,6 @@ PK11SlotInfo *slot; EngineGetCertificateCBInfo cbinfo = {NULL,NULL}; jboolean retVal = JNI_FALSE; - SECKEYPrivateKey *privk = NULL; if( alias == NULL ) goto finish; Index: jss/security/jss/org/mozilla/jss/ssl/SSLSocket.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/ssl/SSLSocket.c 2011-10-04 21:35:23.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/ssl/SSLSocket.c 2011-10-04 21:38:22.234064623 +0300 @@ -397,7 +397,7 @@ { PRSocketOptionData sockOptions; JSSL_SocketData *sock = NULL; - jint retval; + jint retval=-1; PRStatus status; if( JSSL_getSockData(env, self, &sock) != PR_SUCCESS ) { @@ -874,7 +874,7 @@ Java_org_mozilla_jss_ssl_SSLSocket_socketAvailable( JNIEnv *env, jobject self) { - jint available; + jint available=0; JSSL_SocketData *sock = NULL; if( JSSL_getSockData(env, self, &sock) != PR_SUCCESS ) { Index: jss/security/jss/org/mozilla/jss/ssl/common.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/ssl/common.c 2011-10-04 21:35:23.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/ssl/common.c 2011-10-04 21:38:22.234064623 +0300 @@ -64,7 +64,7 @@ jmethodID excepCons; jobject excepObj; jstring msgString; - jint result; + jint VARIABLE_MAY_NOT_BE_USED result; /* * get the error code and error string @@ -149,8 +149,8 @@ jbyteArray sdArray = NULL; JSSL_SocketData *sockdata = NULL; SECStatus status; - PRFileDesc *newFD; - PRFileDesc *tmpFD; + PRFileDesc *newFD = NULL; + PRFileDesc *tmpFD = NULL; PRFilePrivate *priv = NULL; int socketFamily = 0; @@ -633,7 +633,7 @@ SECStatus status = SECSuccess; PRBool bOption = PR_FALSE; - if( JSSL_getSockData(env, self, &sock) != SECSuccess ) { + if( JSSL_getSockData(env, self, &sock) != PR_SUCCESS ) { goto finish; } @@ -655,7 +655,7 @@ (JNIEnv *env, jobject self, PRNetAddr *addr, LocalOrPeer localOrPeer) { JSSL_SocketData *sock = NULL; - PRStatus status; + PRStatus status=PR_FAILURE; /* get my fd */ if( JSSL_getSockData(env, self, &sock) != PR_SUCCESS ) { @@ -899,7 +899,7 @@ finish: if( currentExcep != NULL && (*env)->ExceptionOccurred(env) == NULL) { - int ret = (*env)->Throw(env, currentExcep); + int VARIABLE_MAY_NOT_BE_USED ret = (*env)->Throw(env, currentExcep); PR_ASSERT(ret == 0); } } Index: jss/security/jss/org/mozilla/jss/ssl/javasock.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/ssl/javasock.c 2011-10-04 21:35:23.274058938 +0300 +++ jss/security/jss/org/mozilla/jss/ssl/javasock.c 2011-10-04 21:38:22.238064623 +0300 @@ -92,7 +92,7 @@ jmethodID getOutputStream, writeMethod; jclass sockClass, osClass; jobject outputStream; - jint arrayLen; + jint arrayLen=-1; PRInt32 retval; /* @@ -211,7 +211,7 @@ jobject sockObj; JNIEnv *env; jbyteArray outbufArray; - PRInt32 retval; + PRInt32 retval=-1; if( GET_ENV(fd->secret->javaVM, env) ) goto finish; @@ -500,7 +500,7 @@ jsock_recv(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRIntervalTime timeout) { - PRInt32 retval; + PRInt32 retval=-1; JNIEnv *env; jobject sockObj; jbyteArray byteArray; @@ -637,7 +637,7 @@ { jclass sockClass; jmethodID method; - jint retval; + jint retval=0; sockClass = (*env)->GetObjectClass(env, sock); if( sockClass == NULL ) goto finish; @@ -1001,12 +1001,6 @@ (PRReservedFN) invalidInt }; -static const PRIOMethods* -getJsockMethods() -{ - return &jsockMethods; -} - static void jsockDestructor(PRFileDesc *fd) { Index: jss/security/jss/org/mozilla/jss/util/jssutil.c =================================================================== --- jss.orig/security/jss/org/mozilla/jss/util/jssutil.c 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/util/jssutil.c 2011-10-04 21:38:22.238064623 +0300 @@ -115,7 +115,7 @@ JSS_throwMsg(JNIEnv *env, char *throwableClassName, char *message) { jclass throwableClass; - jint result; + jint VARIABLE_MAY_NOT_BE_USED result; /* validate arguments */ PR_ASSERT(env!=NULL && throwableClassName!=NULL && message!=NULL); @@ -156,7 +156,7 @@ jclass throwableClass; jobject throwable; jmethodID constructor; - jint result; + jint VARIABLE_MAY_NOT_BE_USED result; PR_ASSERT( (*env)->ExceptionOccurred(env) == NULL ); @@ -222,7 +222,9 @@ PRStatus JSS_getPtrFromProxy(JNIEnv *env, jobject nativeProxy, void **ptr) { +#ifdef DEBUG jclass nativeProxyClass; +#endif jclass proxyClass; jfieldID byteArrayField; jbyteArray byteArray; @@ -745,7 +747,7 @@ void JSS_assertOutOfMem(JNIEnv *env) { - jclass memErrClass; + jclass VARIABLE_MAY_NOT_BE_USED memErrClass; jthrowable excep; PR_ASSERT(env != NULL); @@ -804,7 +806,7 @@ goto finish; } - (*env)->SetByteArrayRegion(env, array, 0, item->len, item->data); + (*env)->SetByteArrayRegion(env, array, 0, item->len, (jbyte*)item->data); finish: return array; Index: jss/security/jss/org/mozilla/jss/util/jssutil.h =================================================================== --- jss.orig/security/jss/org/mozilla/jss/util/jssutil.h 2011-10-04 20:07:40.000000000 +0300 +++ jss/security/jss/org/mozilla/jss/util/jssutil.h 2011-10-04 21:38:22.238064623 +0300 @@ -36,6 +36,19 @@ #ifndef JSS_NATIVE_UTIL_H #define JSS_NATIVE_UTIL_H +/* The following #defines are used to suppress undesired compiler warnings + * that have been deemed inappropriate. + * + * IMPORTANT: These are ONLY used on an "as-needed" basis! + */ +#ifdef __GNUC__ +#define FUNCTION_MAY_NOT_BE_USED __attribute__ ((unused)) +#define VARIABLE_MAY_NOT_BE_USED __attribute__ ((unused)) +#else +#define FUNCTION_MAY_NOT_BE_USED +#define VARIABLE_MAY_NOT_BE_USED +#endif + /* Need to include these first. * #include * #include