Bug 133162
Summary: | FAMSuspendMonitor and FAMResumeMonitor are not provided (?) | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Aleksey Nogin <aleksey> |
Component: | gamin | Assignee: | Daniel Veillard <veillard> |
Status: | CLOSED RAWHIDE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | ||
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | 0.0.12 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2004-10-05 06:57:43 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Aleksey Nogin
2004-09-21 23:55:01 UTC
Okay to get an idea of the FAM crappyness, see from the fam-2.6.10 sources include/fam.h (it's the latest version we ever shipped): -------------------------------------- /***************************************************************************** * ERROR HANDLING * * If an error occurs inside of libfam, a global named FAMErrno is set * to a non-zero value and the routine that the error occurred in will * return an error value (usually NULL). FAMErrlist is a global * string array (indexed by FAMErrno) that describes the last error * that happened; * * NOTE: currently FAMErrno and FamErrList are unused *****************************************************************************/ extern int FAMErrno; extern char *FamErrlist[]; /* *[NOTE: Eventually, there will be a bunch of defines right here defining what * errors can happen in using libfam ] */ -------------------------------------- I.e. basically thy put unimplemented work in progress API definitions in the public headers, with an object which size could not be defined clearly. I doubt there is any way to avoid the size message. The good point is that nobody (except your program apparently uses those). For FAMSuspendMonitor() and FAMResumeMonitor() they look very dubious to me from a semantic perspective, only an event lossy implementation makes any sense to me, that's why I didn't put an implementation yet. I could at least put an entry point returning -1 and signalling it's not implemented. Accepted, Daniel Actually, in omake, the calls to FAM{Suspend,Resume} are there so that the FAM API in OCaml is complete. However, we never call the functions. I agree, they are dubious, and the better plan is probably just to delete them from omake. We use FamErrlist[] in the hope that someday we will get sensible error messages. I'm not sure of the corresponding error mechanism in gamin, but it sure would be nice to get proper error reporting. For our Win32 FAM-like implementation, the FAMErrno is set properly, so we actually get better error reporting on Win32 than Linux:/ Jason The current versions in rawhide should fix that bug (0.0.14). I made sure FAMErrno is set on errors, provided strings (not localized though) and provided entry points for FAM{Suspend,Resume} returning a non-implemented status. Daniel |