Author: rfm
Date: Fri May 29 17:29:53 2015
New Revision: 38585

URL: http://svn.gna.org/viewcvs/gnustep?rev=38585&view=rev
Log:
Try to improve logging of snmp errors

Modified:
    libs/ec/trunk/ChangeLog
    libs/ec/trunk/EcAlarmSinkSNMP.m

Modified: libs/ec/trunk/ChangeLog
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/ChangeLog?rev=38585&r1=38584&r2=38585&view=diff
==============================================================================
--- libs/ec/trunk/ChangeLog     (original)
+++ libs/ec/trunk/ChangeLog     Fri May 29 17:29:53 2015
@@ -1,3 +1,8 @@
+2015-05-29  Richard Frith-Macdonald <[email protected]>
+
+       * EcAlarmSinkSNMP.m: log SNMP errors via the main logging mechanism
+       or NSLog.
+
 2015-03-26  Richard Frith-Macdonald <[email protected]>
 
        * Control.plist:

Modified: libs/ec/trunk/EcAlarmSinkSNMP.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/ec/trunk/EcAlarmSinkSNMP.m?rev=38585&r1=38584&r2=38585&view=diff
==============================================================================
--- libs/ec/trunk/EcAlarmSinkSNMP.m     (original)
+++ libs/ec/trunk/EcAlarmSinkSNMP.m     Fri May 29 17:29:53 2015
@@ -225,6 +225,21 @@
 static oid     *trendIndicator_oid = 0;
 static size_t  trendIndicator_len = 0;
 
+static int
+logSNMP(int major, int minor, void* server, void* client)
+{
+  struct snmp_log_message *slm = (struct snmp_log_message *)server;
+
+  if (nil == EcProc)
+    {
+      NSLog(@"%s", slm->msg);
+    }
+  else
+    {
+      [EcProc cmdAlert: @"%s", slm->msg];
+    }
+  return 0;
+}
 
 static const char *
 stringFromDate(NSDate *d)
@@ -1087,8 +1102,14 @@
   NSString             *p;
   NSDictionary         *d;
 
+  init_snmp_logging();
+  snmp_disable_filelog();
+  snmp_disable_stderrlog();
   snmp_enable_calllog();
-  snmp_enable_stderrlog();
+
+  /* register the callback function to record SNMP errors */
+  snmp_register_callback(SNMP_CALLBACK_LIBRARY, SNMP_CALLBACK_LOGGING,
+    logSNMP, NULL);
 
   /* Make us an agentx client.
    */


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to