rpms/esc/devel esc-1.0.1-log-fixes.patch, NONE, 1.1 esc, 1.7, 1.8 esc.spec, 1.27, 1.28

Jack Magne (jmagne) fedora-extras-commits at redhat.com
Tue Jul 17 18:47:36 UTC 2007


Author: jmagne

Update of /cvs/pkgs/rpms/esc/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv9548

Modified Files:
	esc esc.spec 
Added Files:
	esc-1.0.1-log-fixes.patch 
Log Message:
Add diagnostics logging fixes.

esc-1.0.1-log-fixes.patch:

--- NEW FILE esc-1.0.1-log-fixes.patch ---
--- ./esc/src/lib/coolkey/CoolKey.cpp.fix5	2007-06-20 11:41:52.000000000 -0700
+++ ./esc/src/lib/coolkey/CoolKey.cpp	2007-06-20 11:46:20.000000000 -0700
@@ -16,6 +16,7 @@
  * END COPYRIGHT BLOCK **/
 
 #define FORCE_PR_LOG 1
+#define LINE_BUF_SIZE           512
 
 #include "SlotUtils.h"
 
@@ -46,6 +47,161 @@
 HRESULT ClearActiveKeyList(void);
 ActiveKeyNode *GetNodeInActiveKeyList(const CoolKey *aKey);
 
+class CoolKeyLogger {
+public:
+
+    CoolKeyLogger(char *logFileName, int maxNumLines);
+    ~CoolKeyLogger();
+
+    void LogMsg(int logLevel, const char *fmt, ...);
+    void LogMsg(int logLevel,const char *msg, va_list argp);
+
+    void init();
+
+    int IsInitialized() { return initialized; }
+
+private:
+
+    void LockLog();
+    void UnlockLog();
+
+    PRLock *logLock;
+
+    int maxLines;
+
+    char *pathName;
+    PRFileDesc *fd;
+
+    int initialized;
+
+};
+
+CoolKeyLogger::CoolKeyLogger(char *logFileName, int maxNumLines)
+{
+    fd = NULL;
+    logLock = NULL;
+
+    maxLines = maxNumLines;
+    if(logFileName)
+        pathName = strdup(logFileName);
+    initialized = 0;
+}
+
+CoolKeyLogger::~CoolKeyLogger()
+{
+   char tBuff[56];
+
+   PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s ~CoolKeyLogger:\n",GetTStamp(tBuff,56)));
+   LockLog();
+
+   PR_Close(fd);
+
+   fd = NULL;
+
+   UnlockLog(); 
+
+   PR_DestroyLock(logLock);
+
+   logLock = NULL;
+
+   if(pathName)
+       free(pathName);
+
+   pathName = NULL;
+}
+
+void CoolKeyLogger::LockLog()
+{
+    PR_Lock(logLock);
+}
+
+void CoolKeyLogger::UnlockLog()
+{
+   PR_Unlock(logLock); 
+}
+
+void CoolKeyLogger::init()
+{
+    char tBuff[56];
+
+    PRFileInfo info;
+
+    if( !pathName)
+         return;
+
+    logLock = PR_NewLock();
+
+    PRStatus rv = PR_GetFileInfo(pathName,&info);
+
+    int fileSize = 0;
+
+    if(rv == PR_SUCCESS)
+    {
+        fileSize = info.size;
+        PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s File info size %d! \n",GetTStamp(tBuff,56),fileSize));
+    }
+  
+    //Assume average line size of about 40
+ 
+    if((fileSize / 40) > maxLines)
+    {
+
+       PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s Number of lines too big, truncate file %d! \n",GetTStamp(tBuff,56),fileSize / 80));
+
+        fd = PR_Open(pathName, PR_WRONLY |  PR_CREATE_FILE | PR_TRUNCATE, 0600);
+    }
+    else
+    {
+        fd = PR_Open(pathName, PR_WRONLY |  PR_CREATE_FILE | PR_APPEND, 0600);
+    }
+
+    if(!fd)
+        return; 
+
+    initialized = 1;
+
+    return;
+}
+
+void CoolKeyLogger::LogMsg(int logLevel, const char *fmt, ...)
+{
+    va_list ap;
+    char line[LINE_BUF_SIZE]; 
+
+    if(!initialized)
+        return;
+
+    va_start(ap, fmt);
+
+    int end = PR_vsnprintf(line, sizeof(line)-1, fmt, ap);
+
+    LockLog();
+
+    PR_Write(fd,line,end);
+
+    UnlockLog();
+
+    va_end(ap);
+}
+
+void CoolKeyLogger::LogMsg(int logLevel, const char *msg, va_list argp)
+{
+    char line[LINE_BUF_SIZE];
+
+    if(!initialized)
+        return;
+
+    int end = PR_vsnprintf(line, sizeof(line)-1, msg, argp);
+
+    LockLog();
+
+    PR_Write(fd,line,end);
+
+    UnlockLog();
+}
+
+static CoolKeyLogger *g_Log = NULL;
+
 COOLKEY_API HRESULT CoolKeyInit(const char *aAppDir)
 {
     char tBuff[56];
@@ -92,6 +248,9 @@
         g_NSSManager = 0;
     }
 
+    if(g_Log)
+        delete g_Log ;    
+
     return S_OK;
 }
 
@@ -903,7 +1062,7 @@
 
     assert(cardCtxt);
     if (!cardCtxt) {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info. Can't create Card Context !.\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info. Can't create Card Context !.\n",GetTStamp(tBuff,56));
         result = E_FAIL;
         goto done;
     }
@@ -911,7 +1070,7 @@
     conn = CKYCardConnection_Create(cardCtxt);
     assert(conn);
     if (!conn) {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info.  Can't create Card Connection!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info.  Can't create Card Connection!\n",GetTStamp(tBuff,56));
         result = E_FAIL;
         goto done;
     }
@@ -919,14 +1078,14 @@
     readerName = GetReaderNameForKeyID(aKey);
     assert(readerName);
     if (!readerName) {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info.  Can't get reader name!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info.  Can't get reader name!\n",GetTStamp(tBuff,56));
         result = E_FAIL;
         goto done;
     }
 
     status = CKYCardConnection_Connect(conn, readerName);
     if (status != CKYSUCCESS) {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info. Can't connect to Card!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info. Can't connect to Card!\n",GetTStamp(tBuff,56));
 
         result = E_FAIL;
         goto done;
@@ -938,7 +1097,7 @@
     apduRC = 0;
     status = CKYApplet_SelectCoolKeyManager(conn, &apduRC);
     if (status != CKYSUCCESS) {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info.  Can't select CoolKey manager!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info.  Can't select CoolKey manager!\n",GetTStamp(tBuff,56));
         goto done;
     }
 
@@ -946,7 +1105,7 @@
                         &apduRC);
     if(status != CKYSUCCESS)
     {
-        PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Attempting to get key issuer info.  Error actually getting IssuerInfo!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Attempting to get key issuer info.  Error actually getting IssuerInfo!\n",GetTStamp(tBuff,56));
         result = E_FAIL;
         goto done;
     }
@@ -1153,6 +1312,42 @@
    return res;
 }
 
+HRESULT CoolKeyInitializeLog(char *logFileName, int maxNumLines)
+{
+   if(g_Log)
+       return S_OK;
+   
+   g_Log = new  CoolKeyLogger(logFileName,maxNumLines);
+
+   if(g_Log)
+       g_Log->init();
+   else
+       return E_FAIL;
+       
+   if(g_Log->IsInitialized())
+      return S_OK;
+   else
+      return E_FAIL;
+}
+
+HRESULT CoolKeyLogMsg(int logLevel, const char *fmt, ...)
+{
+
+    if(!g_Log)
+        return S_OK;
+
+    va_list ap;
+
+
+    va_start(ap, fmt);
+
+    g_Log->LogMsg(logLevel,fmt,ap);
+
+    va_end(ap);
+
+    return S_OK;
+}
+
 //Utility function to get Time Stamp
 char *GetTStamp(char *aTime,int aSize)
 {
--- ./esc/src/lib/coolkey/CoolKey.h.fix5	2007-06-20 11:42:04.000000000 -0700
+++ ./esc/src/lib/coolkey/CoolKey.h	2007-06-20 11:46:37.000000000 -0700
@@ -176,6 +176,11 @@
 
 COOLKEY_API int CoolKeyGetAppletVer(const CoolKey *aKey, const bool isMajor);
 
+COOLKEY_API HRESULT CoolKeyInitializeLog(char *logFileName, int maxNumLines);
+
+COOLKEY_API HRESULT CoolKeyLogMsg(int logLevel, const char *fmt, ...);
+
+
 //Utility time function
 char *GetTStamp(char *aTime,int aSize);
 }
--- ./esc/src/lib/coolkey/CoolKeyHandler.cpp.fix5	2007-06-20 11:42:18.000000000 -0700
+++ ./esc/src/lib/coolkey/CoolKeyHandler.cpp	2007-06-20 11:46:26.000000000 -0700
@@ -453,7 +453,7 @@
     const char *readerName =  NULL;
 
     if (!aKey || aKey->mKeyType != eCKType_CoolKey ||  !aKey->mKeyID) {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Insuficient input parameters. \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Insuficient input parameters. \n",GetTStamp(tBuff,56));
       goto done;
     }
   
@@ -466,14 +466,14 @@
 
   
     if (!readerName) {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Cannot locate card reader name! \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Cannot locate card reader name! \n",GetTStamp(tBuff,56));
         goto done;
     }
  
     mDataLock = PR_NewLock();
     if (!mDataLock)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation.  Cannnot initialize internal locking mechanism.\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation.  Cannnot initialize internal locking mechanism.\n",GetTStamp(tBuff,56));
         return E_FAIL;
 
     }
@@ -481,7 +481,7 @@
     mDataCondVar = PR_NewCondVar(mDataLock);
     if (!mDataCondVar)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Cannot initialize internal syncronization mechanism.\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Cannot initialize internal syncronization mechanism.\n",GetTStamp(tBuff,56));
         return E_FAIL;
 
     }
@@ -493,7 +493,7 @@
 
     if(!mCharHostName || !mRAUrl)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Didn't collect proper config information.\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Didn't collect proper config information.\n",GetTStamp(tBuff,56));
         error_no = config_error_no;
         goto done;
     }
@@ -502,7 +502,7 @@
 
     mCardContext = CKYCardContext_Create(SCARD_SCOPE_USER);
     if (!mCardContext) {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Cannot create card context! \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Cannot create card context! \n",GetTStamp(tBuff,56));
         error_no = CARD_CONTEXT_ERROR;
         goto done;
     }
@@ -510,7 +510,7 @@
     mPDUWriter = new PDUWriterThread(this);
     if (!mPDUWriter) {
         error_no = PDU_WRITER_ERROR;
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Cannot begin CoolKey operation. Cannot  create internal PDU writer thread!\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Cannot begin CoolKey operation. Cannot  create internal PDU writer thread!\n",GetTStamp(tBuff,56));
         goto done;
     }
 
@@ -581,7 +581,7 @@
 
     if(!keyID)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR,("%s Collecting CoolKey preferences. Cannot get keyID , cannot proceed. \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR,"%s Collecting CoolKey preferences. Cannot get keyID , cannot proceed. \n",GetTStamp(tBuff,56));
 
         return;
     }
@@ -621,7 +621,7 @@
 
         if(!tps_url)
         {
-            PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Collecting CoolKey preferences. Cannot find value for the TPS URL. \n",GetTStamp(tBuff,56)));
+            CoolKeyLogMsg( PR_LOG_ERROR, "%s Collecting CoolKey preferences. Cannot find value for the TPS URL. \n",GetTStamp(tBuff,56));
 
             return;
         }
@@ -651,7 +651,7 @@
         pos = tps_url_str.find(non_ssl_str,0);
         if(pos == string::npos)
         {
-            PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Collecting CoolKey preferences.  TPS URL has specified an illegal protocol! \n",GetTStamp(tBuff,56))); 
+            CoolKeyLogMsg( PR_LOG_ERROR, "%s Collecting CoolKey preferences.  TPS URL has specified an illegal protocol! \n",GetTStamp(tBuff,56)); 
             return;
         }
 
@@ -692,7 +692,7 @@
 
     if(!host_name_port_str.length())
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Collecting CoolKey preferences.  Bad hostname and port value!.\n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg(PR_LOG_ERROR, "%s Collecting CoolKey preferences.  Bad hostname and port value!.\n",GetTStamp(tBuff,56));
         return;
      }
 
@@ -1198,7 +1198,7 @@
     PR_LOG( coolKeyLogHN, PR_LOG_DEBUG, ("%s CoolKeyHandler::ProcessTokenPDU:\n",GetTStamp(tBuff,56)));
     if(!req || !context)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Processing HTTP message.  Bad input data. \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Processing HTTP message.  Bad input data. \n",GetTStamp(tBuff,56));
         return;
     }
 
@@ -1210,7 +1210,7 @@
 
     if(size == 0)
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Processing HTTP message.  Can't extract PDU data from message! \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg(PR_LOG_ERROR, "%s Processing HTTP message.  Can't extract PDU data from message! \n",GetTStamp(tBuff,56));
         context->HttpDisconnect();
         return;
     }
@@ -1231,10 +1231,10 @@
     CKYStatus status = CKYCardConnection_ExchangeAPDU(context->GetCardConnection(),
                                                   requestAPDU, &response);
     if (status != CKYSUCCESS) {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, 
-            ("%s Processing HTTP message.  Can't write apdu to card! status %d response[0] %x response[1] %x error %d \n"
+        CoolKeyLogMsg( PR_LOG_ERROR, 
+            "%s Processing HTTP message.  Can't write apdu to card! status %d response[0] %x response[1] %x error %d \n"
          ,GetTStamp(tBuff,56)   ,status,CKYBuffer_GetChar(&response,0),CKYBuffer_GetChar(&response,1),
-        CKYCardConnection_GetLastError(context->GetCardConnection())));
+        CKYCardConnection_GetLastError(context->GetCardConnection()));
 
         context->HttpDisconnect(ERR_CONN_TOKEN);
 
@@ -1248,7 +1248,7 @@
 
     if(pduSizeRet == 0 || !pduDataRet )
     {
-        PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Processing HTTP message. No PDU response from card! \n",GetTStamp(tBuff,56)));
+        CoolKeyLogMsg( PR_LOG_ERROR, "%s Processing HTTP message. No PDU response from card! \n",GetTStamp(tBuff,56));
         context->HttpDisconnect(ERR_CONN_TOKEN);
         return;
     }
@@ -1267,7 +1267,7 @@
 
         if(res == 0)
         {
-            PR_LOG( coolKeyLogHN, PR_LOG_ERROR, ("%s Processing HTTP message. Write back to TPS failed , disconnecting. \n",GetTStamp(tBuff,56)));
+            CoolKeyLogMsg( PR_LOG_ERROR, "%s Processing HTTP message. Write back to TPS failed , disconnecting. \n",GetTStamp(tBuff,56));
             context->HttpDisconnect();
         }
         else
@@ -1619,32 +1619,33 @@
     case ENROLL:
         if (result == 0) {
 
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Enrollment success.\n",GetTStamp(tBuff,56)));
+            CoolKeyLogMsg(PR_LOG_ALWAYS,"%s Key Enrollment success.\n",GetTStamp(tBuff,56));
             CoolKeyAuthenticate(context->GetAutoCoolKey(), context->GetPIN());
             CoolKeyNotify(context->GetAutoCoolKey(), eCKState_EnrollmentComplete,
                    context->GetScreenName() == NULL ? 1 : 0);
         } else {
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Enrollment failure. Error: %d.\n",GetTStamp(tBuff,56),description));
+            CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Key Enrollment failure. Error: %d.\n",GetTStamp(tBuff,56),description);
 	    CoolKeyNotify(context->GetAutoCoolKey(), eCKState_EnrollmentError, description); // XXX: Need INIT_FAILED error code!
         }
         break;
     case RESET_PIN:
         if (result == 0) {
      
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Reset Password success.\n",GetTStamp(tBuff,56))); 
+            CoolKeyLogMsg(PR_LOG_ALWAYS,"%s Key Reset Password success.\n",GetTStamp(tBuff,56));
+
             CoolKeyAuthenticate(context->GetAutoCoolKey(), context->GetPIN());
             CoolKeyNotify(context->GetAutoCoolKey(), eCKState_PINResetComplete, 0);
         } else {
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Reset Password failure. Error: %d.\n",GetTStamp(tBuff,56),description));
+            CoolKeyLogMsg(PR_LOG_ALWAYS, "%s Key Reset Password failure. Error: %d.\n",GetTStamp(tBuff,56),description);
             CoolKeyNotify(context->GetAutoCoolKey(), eCKState_PINResetError, description); // XXX: Need PIN_RESET_FAILED error code!
         }
         break;
     case FORMAT:
         if (result == 0) {
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Format success.\n",GetTStamp(tBuff,56)));
+            CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Key Format success.\n",GetTStamp(tBuff,56));
             CoolKeyNotify(context->GetAutoCoolKey(), eCKState_FormatComplete, 0);
         } else {
-            PR_LOG( coolKeyLogHN, PR_LOG_ALWAYS, ("%s Key Format failure. Error: %d.\n",GetTStamp(tBuff,56),description));
+            CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Key Format failure. Error: %d.\n",GetTStamp(tBuff,56),description);
             CoolKeyNotify(context->GetAutoCoolKey(), eCKState_FormatError, description); // XXX: Need FORMAT_FAILED error code!
         }
         break;
--- ./esc/src/app/xpcom/rhCoolKey.cpp.fix5	2007-06-20 11:39:16.000000000 -0700
+++ ./esc/src/app/xpcom/rhCoolKey.cpp	2007-06-20 11:43:35.000000000 -0700
@@ -726,6 +726,14 @@
 
 }
 
+/* void CoolKeyInitializeLog (in string aPathName, in unsigned long aMaxLines); */
+NS_IMETHODIMP rhCoolKey::CoolKeyInitializeLog(const char *aPathName, PRUint32 aMaxLines)
+{
+    ::CoolKeyInitializeLog((char *)aPathName, aMaxLines);  
+
+    return NS_OK;
+}
+
 /* void CoolKeyLogMsg (in unsigned long aLogLevel, in string aMessage); */
 NS_IMETHODIMP rhCoolKey::CoolKeyLogMsg(PRUint32 aLogLevel, const char *aMessage)
 {
@@ -733,7 +741,8 @@
 
     if(aMessage && ((PRLogModuleLevel) aLogLevel >=  PR_LOG_NONE && aLogLevel <= PR_LOG_MAX))
     {
-        PR_LOG( coolKeyLog, (PRLogModuleLevel) aLogLevel, ("%s %s",GetTStamp(tBuff,56),aMessage));    
+        ::CoolKeyLogMsg((PRLogModuleLevel) aLogLevel, "%s %s \n",GetTStamp(tBuff,56),aMessage);
+        PR_LOG( coolKeyLog, (PRLogModuleLevel) aLogLevel, ("%s %s",GetTStamp(tBuff,56),aMessage));
     }
 
     return NS_OK;
@@ -776,7 +785,7 @@
 {
 
     char tBuff[56];
-    PR_LOG( coolKeyLog, PR_LOG_ALWAYS, ("%s Attempting to Enroll Key ,ID: %s \n",GetTStamp(tBuff,56),aKeyID));
+    ::CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Attempting to Enroll Key ,ID: %s \n",GetTStamp(tBuff,56),aKeyID);
     
     CoolKeyNode *node = GetCoolKeyInfo(aKeyType, aKeyID);
 
@@ -808,7 +817,7 @@
 NS_IMETHODIMP rhCoolKey::ResetCoolKeyPIN(PRUint32 aKeyType, const char *aKeyID, const char *aScreenName, const char *aPIN, const char *aScreenNamePwd)
 {
     char tBuff[56];
-    PR_LOG( coolKeyLog, PR_LOG_ALWAYS, ("%s Attempting to Reset Key PIN, ID: %s \n",GetTStamp(tBuff,56),aKeyID));
+    ::CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Attempting to Reset Key PIN, ID: %s \n",GetTStamp(tBuff,56),aKeyID);
     CoolKeyNode *node = GetCoolKeyInfo(aKeyType, aKeyID);
 
     if (!node)
@@ -859,7 +868,7 @@
 NS_IMETHODIMP rhCoolKey::FormatCoolKey(PRUint32 aKeyType, const char *aKeyID, const char *aEnrollmentType, const char *aScreenName, const char *aPIN, const char *aScreenNamePWord, const char *aTokenCode)
 {
     char tBuff[56];
-    PR_LOG( coolKeyLog, PR_LOG_ALWAYS, ("%s Attempting to Format Key, ID: %s. ",GetTStamp(tBuff,56),aKeyID));
+    ::CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Attempting to Format Key, ID: %s. ",GetTStamp(tBuff,56),aKeyID);
     CoolKeyNode *node = GetCoolKeyInfo(aKeyType, aKeyID);
 
     if (!node)
@@ -1203,7 +1212,7 @@
 
     HRESULT res =  CoolKeyGetIssuerInfo(&key, (char *)&issuerInfo,256);
 
-     PR_LOG( coolKeyLog, PR_LOG_ALWAYS, ("%s Attempting to get the key's Issuer: Key: %s, Issuer  %s. \n",GetTStamp(tBuff,56),aKeyID, (char *) issuerInfo));
+    ::CoolKeyLogMsg( PR_LOG_ALWAYS, "%s Attempting to get the key's Issuer: Key: %s, Issuer  %s. \n",GetTStamp(tBuff,56),aKeyID, (char *) issuerInfo);
 
     if(res == S_OK)
     {
--- ./esc/src/app/xpcom/rhICoolKey.idl.fix5	2007-06-20 11:39:32.000000000 -0700
+++ ./esc/src/app/xpcom/rhICoolKey.idl	2007-06-20 11:43:51.000000000 -0700
@@ -32,6 +32,7 @@
 
     void rhCoolKeyUnSetNotifyCallback(in rhIKeyNotify jsNotify);
 
+    void CoolKeyInitializeLog(in string aPathName, in unsigned long aMaxLines);
     void CoolKeyLogMsg(in unsigned long aLogLevel, in string aMessage);
     void BlinkCoolKey(in unsigned long aKeyType, in string aKeyID,in unsigned long aRate,in unsigned long aDuration);
 
--- ./esc/src/app/xul/esc/application.ini.fix5	2007-06-20 11:39:57.000000000 -0700
+++ ./esc/src/app/xul/esc/application.ini	2007-06-20 13:12:31.000000000 -0700
@@ -25,7 +25,7 @@
 Name=ESC
 ;
 ; This field specifies your application's version.  This field is optional.
-Version=1.0.1-3
+Version=1.0.1-4
 ;
 ; This field specifies your application's build ID (timestamp).  This field is
 ; required.
--- ./esc/src/app/xul/esc/chrome/content/esc/settings.xul.fix5	2007-06-20 11:40:31.000000000 -0700
+++ ./esc/src/app/xul/esc/chrome/content/esc/settings.xul	2007-06-20 11:45:03.000000000 -0700
@@ -25,8 +25,8 @@
     title="&escTitle;"
     onload="InitializeAdminBindingList()"
     onunload="cleanup()"
-    width ="730"
-    height= "460"
+    width ="720"
+    height= "415"
     name="admin"
     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 
--- ./esc/src/app/xul/esc/chrome/content/esc/ESC.js.fix5	2007-06-20 11:40:21.000000000 -0700
+++ ./esc/src/app/xul/esc/chrome/content/esc/ESC.js	2007-06-20 11:44:52.000000000 -0700
@@ -131,6 +131,9 @@
     netkey = netkey.QueryInterface(Components.interfaces.rhICoolKey);
     gNotify = new jsNotify;
     netkey.rhCoolKeySetNotifyCallback(gNotify);
+
+    var logFileName = GetESCLogPathName("esc.log");
+    netkey.CoolKeyInitializeLog(logFileName, 1000);
   } catch(e) {
      MyAlert(getBundleString("errorUniversalXPConnect") + e);
   }
@@ -167,33 +170,33 @@
 
 var Status_Messages = new Array(
     getBundleString("errorNone"),
-    getBundleString("serverError"),
-    getBundleString("errorProblemCommToken"),
+    getBundleString("errorInternalServer"),
+    getBundleString("errorInternalServer"),
     getBundleString("errorProblemCommToken"),
     getBundleString("errorProblemResetTokenPin"),
     getBundleString("errorInternalServer"),
-    getBundleString("errorInternalServer"),
+    getBundleString("errorLifeCyclePDU"),
     getBundleString("errorTokenEnrollment"),
     getBundleString("errorProblemCommToken"),
     getBundleString("errorInternalServer"),
-    getBundleString("errorCommCA"),
     getBundleString("errorInternalServer"),
-    getBundleString("errorResetPin"),
     getBundleString("errorInternalServer"),
+    getBundleString("errorInternalServer"),
+    getBundleString("errorTermSecureConn"),
     getBundleString("errorAuthFailure"),
     getBundleString("errorInternalServer"),
     getBundleString("errorTokenDisabled"),
-    getBundleString("errorProblemCommToken"),
-    getBundleString("errorInternalServer"),
+    getBundleString("errorSecureChannel"),
+    getBundleString("errorServerMisconfig"),
     getBundleString("errorTokenUpgrade"),
     getBundleString("errorInternalServer"),
-    getBundleString("errorProblemCommToken"),
-    getBundleString("errorInvalidTokenType"),
+    getBundleString("errorExternalAuth"),
     getBundleString("errorInvalidTokenType"),
+    getBundleString("errorInvalidTokenTypeParams"),
     getBundleString("errorCannotPublish"),
     getBundleString("errorCommTokenDB"),
-    getBundleString("errorTokenDisabled"),
-    getBundleString("errorPinReset"),
+    getBundleString("errorTokenSuspended"),
+    getBundleString("errorPinResetable"),
     getBundleString("errorConnLost"),
     getBundleString("errorEntryTokenDB"),
     getBundleString("errorNoTokenState"),
@@ -201,10 +204,10 @@
     getBundleString("errorTokenUnusable"),
     getBundleString("errorNoInactiveToken"),
     getBundleString("errorProcessMultiTokens"),
+    getBundleString("errorTokenTerminated"),
     getBundleString("errorInternalServer"),
-    getBundleString("errorKeyRecoveryProcessed"),
     getBundleString("errorKeyRecoveryFailed"),
-    getBundleString("errorNoOperateLostToken"),
+    getBundleString("errorInternalServer"),
     getBundleString("errorKeyArchival"),
     getBundleString("errorConnTKS"),
     getBundleString("errorFailUpdateTokenDB"),
@@ -559,9 +562,9 @@
  
 function TestStatusMessages()
 {
-    for(i = 0 ; i < 48; i++)
+    for(i = 0 ; i < 49; i++)
     {
-        MyAlert(Status_Messages[i]);
+        MyAlert( i + " " + Status_Messages[i]);
     }
 }
  
@@ -4263,9 +4266,9 @@
 
         var value = line.value;
 
-        var colonIndex = value.indexOf(":");
+        //var colonIndex = value.indexOf(":");
 
-        value = value.substring(colonIndex + 1);
+        //value = value.substring(colonIndex + 1);
 
         lines.push(value); 
     } while(hasmore);
@@ -4484,3 +4487,29 @@
             adminList.focus();
     }
 }
+
+function GetESCLogPathName(aName)
+{
+
+    if(!aName)
+        return null;
+
+    const logFileName = aName;
+
+    // Get executable directory
+
+    var file = Components.classes["@mozilla.org/file/directory_service;1"]
+                     .getService(Components.interfaces.nsIProperties)
+                     .get("ProfD", Components.interfaces.nsIFile);
+
+    file = file.parent;
+    file.append(logFileName);
+
+   
+    //alert("LogPathName " + file.path); 
+
+
+    return file.path;
+
+
+}
--- ./esc/src/app/xul/esc/chrome/locale/en-US/esc.properties.fix5	2007-06-20 11:40:51.000000000 -0700
+++ ./esc/src/app/xul/esc/chrome/locale/en-US/esc.properties	2007-06-20 11:45:50.000000000 -0700
@@ -85,40 +85,48 @@
 #ESC Error Messages from TPS
 errorNone=Operation Completed Successfully.
 serverError=Smart Card Server error.
-errorProblemResetTokenPin=Internal Smart Card Server error.
-errorTokenEnrollment=Smart card enrollment error.
+errorProblemResetTokenPin=The Smart Card Server cannot reset your smart card's password.
+errorTokenEnrollment=The Smart Card Server cannot import the required certificates into your smart card.
+errorLifeCyclePDU=The Smart Card Server cannot finalize the enrollment of your smart card.
 errorCommCA=Error communicating with the Certification Authority.
 errorInternalServer=Internal Smart Card Server error.
 errorResetPin=Error resetting the smart card's password.
 errorInternalServer=Internal Smart Card Server error.
-errorAuthFailure=Smart Card Server authentication failure.
-errorTokenDisabled=Your smart card is listed as disabled.
-errorProblemCommToken=Problem communicating with the smart card.
-errorTokenUpgrade=Cannot upgrade smart card software.
-errorInvalidTokenType=Invalid smart card type.
-errorCannotPublish=Cannot publish smart card information.
-errorCommTokenDB=Cannot communicate with smart card database.
-errorPinReset=Cannot reset the password value for the smart card.
-errorConnLost=Connection to Smart Card Server.
-errorEntryTokenDB=Can not create entry for the smart card in the smart card database.
-errorNoTokenState=Smart card found to be in an inconsistent state.
-errorInvalidLostTokenReason=Invalid reason for lost smart card submitted.
-errorTokenUnusable=Smart card found to be unusable due to compromise.
-errorNoInactiveToken=No such inactive smart card found.
-errorProcessMultiTokens=Can not process more than one active smart card.
+errorAuthFailure=The Smart Card Server cannot validate your credentials. Please try again with the correct credentials.
+errorTokenDisabled=The Smart Card Server does not know about your smart card.
+errorSecureChannel=The Smart Card Server cannot establish a secure channel with the smart card.
+errorServerMisconfig=The Smart Card Server has not been configured correctly.
+errorProblemCommToken=Your smart card can not perform the operation requested by the Smart Card Server.
+errorExternalAuth=Your smart card cannot correctly identify the Smart Card Server.
+errorTokenUpgrade=The Smart Card Server cannot upgrade the software on your smart card.
+errorTermSecureConn=The Smart Card Server can not terminate the secure cummunications channel with the smart card.
+errorInvalidTokenType=The Smart Card Server does not recognize the requested type of card enrollment.
+errorInvalidTokenTypeParams=The Smart Card Server cannot process the requested type of enrollment due to a misconfiguration.
+errorCannotPublish=The Smart Card Server cannot publish your card's certificates to the certificate directory.
+errorCommTokenDB=The Smart Card Server cannot connect to its internal database.
+errorTokenSuspended=Your smart card has been suspended.
+errorPinResetable=You are not allowed to reset the password of this smart card.
+errorConnLost=The Smart Card Manager has lost the connection to the Smart Card Server.
+errorEntryTokenDB=The Smart Card Server cannot add your smart card to its internal database.
+errorNoTokenState=The Smart Card server does not recognize your smart card's current status.
+errorInvalidLostTokenReason=The Smart Card server cannot process your smart card which has been reported lost.
+errorTokenUnusable=The Smart Card Server cannot process your smart card which has been reported stolen.
+errorNoInactiveToken=The Smart Card Server cannot restore your smart card's security keys.
+errorProcessMultiTokens=The Smart Card Server has detected that you already have one enrolled smart card. The server only allows one enrolled card per user.
+errorTokenTerminated=The Smart Card Server can not process your smart card which is marked as terminated.
 errorKeyRecoveryProcessed=Smart card key recovery has been processed.
-errorKeyRecoveryFailed=Smart card key recovery failed.
+errorKeyRecoveryFailed=The Smart Card Server can not restore the security keys onto your smart card.
 errorNoOperateLostToken=Cannot process this smart card, which has been reported lost.
-errorKeyArchival=Smart card key archival error.
-errorConnTKS=Problem connecting to the Smart Card TKS Server.
-errorFailUpdateTokenDB=Failed to update smart card database.
-errorCertRevocation=Internal certificate revocation error discovered.
-errorNotOwnToken=User does not own this smart card.
-errorESCMisconfigured=Smart Card Manager has been misconfigured.
-errorESCNoCommCardReader=Smart Card Manager can't communicate with card reader.
-errorESCNoTokenSession=Smart Card Manager can't initiate session with smart card.
-errorESCNoTalkTPS=Smart Card Manager can't talk to Smart Card Server.
-errorESCNoTalkTokenReader=Smart Card Manager can't talk to smart card reader.
+errorKeyArchival=The Smart Card Server can not restore the security keys onto your smart card due to a server misconfiguration.
+errorConnTKS=The Smart Card server cannot contact its security key server,which is required for processing.
+errorFailUpdateTokenDB=The Smart Card Server cannot reset the status of your smart card.
+errorCertRevocation=The Smart Card Server cannot mark the security keys on your smart card as revoked.
+errorNotOwnToken=The Smart Card Server cannot process a smart card which you do not own.
+errorESCMisconfigured=The Smart Card Manager has been misconfigured.
+errorESCNoCommCardReader=The Smart Card Manager cannot initiate communications with the smart card.
+errorESCNoTokenSession=The Smart Card Manager cannot establish a communications session with the smart card.
+errorESCNoTalkTPS=The Smart Card Manager cannot initiate communications with the Smart Card Server.
+errorESCNoTalkTokenReader=The Smart Card Manager cannot finalize communications with the smart card.
 #ESC text in general  Alert messages
 errorCoolKeyIsAuth=coolkey.GetCoolKeyIsAuthenticated() failed!
 errorAuthCoolKey=coolkey.AuthenticateCoolKey failed!


Index: esc
===================================================================
RCS file: /cvs/pkgs/rpms/esc/devel/esc,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- esc	26 Apr 2007 17:00:41 -0000	1.7
+++ esc	17 Jul 2007 18:47:04 -0000	1.8
@@ -30,7 +30,7 @@
 ESC_PROFILE_BASE=~/.redhat/esc
 ESC_LOG_FILE=esc.log
 
-ESC_PATH=/usr/lib/esc-1.0.1
+ESC_PATH=$LIBDIR/esc-1.0.1
 ESC_BIN_PATH=/usr/bin
 ESC_EXEC=esc
 ESCD_EXEC=escd
@@ -45,6 +45,8 @@
 
 XPTI_DAT=xpti.dat
 COMPREG_DAT=compreg.dat
+LOCK_FILE=lock
+PARENT_LOCK_FILE=.parentlock
 
 function isProgRunning {
 
@@ -61,10 +63,16 @@
 
 function removeFile {
 
-    if [  -w  $1 ]
-    then
-       rm -f $1
-    fi
+    rm -f $1
+}
+
+function cleanupProfile {
+
+    removeFile $ESC_PROFILE_BASE/*default/$XPTI_DAT
+    removeFile $ESC_PROFILE_BASE/*default/$COMPREG_DAT
+    removeFile $ESC_PROFILE_BASE/*default/$LOCK_FILE
+    removeFile $ESC_PROFILE_BASE/*default/$PARENT_LOCK_FILE
+
 }
 
 function processArgs {
@@ -108,15 +116,12 @@
     fi
 }
 
-export NSPR_LOG_MODULES=tray:2,coolKeyLib:2,coolKey:2,coolKeyNSS:2,coolKeySmart:2,coolKeyHandler:2,escDLog:5
-
 processArgs $*
 
 if [ ! -d $ESC_PROFILE_BASE ]
 then
     mkdir -p  $ESC_PROFILE_BASE
 fi
-export NSPR_LOG_FILE=$ESC_PROFILE_BASE/$ESC_LOG_FILE
 
 cd $ESC_PATH
 
@@ -140,8 +145,7 @@
     #echo "escd already running."
 else
     #echo "escd not running start."
-    removeFile $ESC_PROFILE_BASE/*default/$XPTI_DAT
-    removeFile $ESC_PROFILE_BASE/*default/$COMPREG_DAT
+    cleanupProfile
     ./$ESCD_EXEC --key_Inserted=\"/usr/bin/esc\"  --on_Signal=\"/usr/bin/esc\"
     exit 0
 fi
@@ -175,7 +179,7 @@
 else
     #echo "esc not already running start up and bring up window."
     ./$ESC_EXEC & 
-    sleep 2
+    sleep 4
 
     #echo "done sleeping bring up esc window."
     ./$ESC_EXEC


Index: esc.spec
===================================================================
RCS file: /cvs/pkgs/rpms/esc/devel/esc.spec,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- esc.spec	26 Apr 2007 16:57:41 -0000	1.27
+++ esc.spec	17 Jul 2007 18:47:04 -0000	1.28
@@ -1,6 +1,6 @@
 Name: esc 
 Version: 1.0.1
-Release: 3%{?dist} 
+Release: 4%{?dist} 
 Summary: Enterprise Security Client Smart Card Client
 License: GPL
 URL: http://directory.fedora.redhat.com/wiki/CoolKey 
@@ -12,6 +12,7 @@
 Patch2: firefox-1.1-nss-system-nspr.patch
 Patch3: esc-1.0.1-admin-row-update.patch
 Patch4: esc-1.0.1-ui-fixes-1.patch 
+Patch5: esc-1.0.1-log-fixes.patch
 
 BuildRequires: doxygen fontconfig-devel freetype-devel >= 2.1
 BuildRequires: glib2-devel libIDL-devel atk-devel gtk2-devel libjpeg-devel
@@ -66,6 +67,7 @@
 
 %patch3 -p1 -b .fix3
 %patch4 -p1 -b .fix4
+%patch5 -p1 -b .fix5
 
 
 #Unpack xulrunner where esc expects it to be.
@@ -176,10 +178,12 @@
 fi
 
 %changelog
-* Thu Apr 26 2007 Jack Magne <jmagne at redhat.com>- 1.0.0-3
+* Wed Jun 20 2007 Jack Magne <jmagne at redhat.com>- 1.0.1-4
+- Fixes to the diagnostics log files and esc  error messages.
+* Thu Apr 26 2007 Jack Magne <jmagne at redhat.com>- 1.0.1-3
 - Many UI usability fixes.
-* Tue Apr 03 2007 Jack Magne <jmagne at redhat.com>- 1.0.0-2
-* Mon Mar 05 2007 Jack Magne <jmagne at redhat.com>- 1.0.0-1
+* Tue Apr 03 2007 Jack Magne <jmagne at redhat.com>- 1.0.1-2
+* Mon Mar 05 2007 Jack Magne <jmagne at redhat.com>- 1.0.1-1
 - Stability fixes
 * Fri Oct 27 2006 Jack Magne <jmagne at redhat.com>- 1.0.0-19
 - More mac and win fixes.




More information about the fedora-extras-commits mailing list