From: SourceForge.net <no...@so...> - 2008-11-20 01:45:47
|
Bugs item #2316307, was opened at 2008-11-19 19:45 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=712784&aid=2316307&group_id=128809 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: sfcb Group: Function Status: Open Resolution: None Priority: 5 Private: No Submitted By: Kristi Schettler (krgavin) Assigned to: Chris Buccella (buccella) Summary: SFCB segfaults on missing instance file Initial Comment: I was running some recovery testing on SFCB 1.2.5, and noticed that when I started up SFCB with a missing instance file, it caused a sefault in the indication handler. More specifically, the following steps were taken: 1) SFCB is started (with indication support compiled in) 2) A client application creates an instance of CIM_ListenerDestinationCIMXML. This creates the following files in the repository: /var/lib/sfcb/registration/repository/cim_listenerdestinationcimxml.idx (index file) /var/lib/sfcb/registration/repository/cim_listenerdestinationcimxml (instance file) 3) SFCB is killed 4) The instance file is deleted: rm /var/lib/sfcb/registration/repository/cim_listenerdestinationcimxml 5) SFCB is restarted 6) Indication handler segfaults: -#- IndCIMXMLHandler - 29530 provider exiting due to a SIGSEGV signal It appears that SFCB is not checking for a NULL file handle when it opens the instance file for reading. If the index file exists, it assumes the instance file also exists. Normally this would be a safe assumption, since users don't normallly delete instance files from the file system. However, the following scenario is also plausible and could cause the same error: - SFCB is running - client invokes create instance method - SFCB creates the index file - SFCB process is killed before instance file is created - SFCB is restarted - segfault occurs The attached patch is incomplete, but shows suggestions as to where the code should handle this scenario. Additional configuration information: ======================================= Configuration (at time of error) ======================================= I have SFCB/SFCC compiled for x86 and running as follows: sfcc v2.0.1 + * Tracker 1946188 sfcb v1.2.5 + * Tracker 1945374 * Tracker 1983569 * Tracker 1998030 * Tracker 2015639 * Tracker 2023638 * Tracker 2039216 * Tracker 2093273 * Tracker 1945390 * Tracker 1893302 * Tracker 1983569 * Tracker 1914551 * Tracker 1891702 * Tracker 1946202 * Tracker 2101035 * Tracker 2164750 * Tracker 2193250 sfcb compile/configure options in effect: --enable-slp --enable-ssl --enable-slp-hostname-lib Config file is as follows: httpPort: 5988 enableHttp: true httpProcs: 8 httpsPort: 5989 enableHttps: false httpsProcs: 8 provProcs: 32 doBasicAuth: false basicAuthLib: sfcBasicAuthentication slpHostnameLib: sfcSlpHostname useChunking: false keepaliveTimeout: 1 keepaliveMaxRequest: 10 sslKeyFilePath: /etc/sfcb/file.pem sslCertificateFilePath: /etc/sfcb/server.pem sslClientTrustStore: /etc/sfcb/client.pem sslClientCertificate: ignore certificateAuthLib: sfcCertificateAuthentication registrationDir: /var/lib/sfcb/registration providerDirs: /usr/lib /usr/lib/cmpi enableInterOp: true Using CIM Schema 2.17 + some files from CIM Schema 2.17 experimental ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=712784&aid=2316307&group_id=128809 |