Changeset 664
- Timestamp:
- 10/11/06 20:25:03 (2 years ago)
- Files:
-
- nepenthes/trunk/nepenthes-core/include/ConsoleLogger.hpp (modified) (1 diff)
- nepenthes/trunk/nepenthes-core/include/FileLogger.hpp (modified) (1 diff)
- nepenthes/trunk/nepenthes-core/include/LogHandler.hpp (modified) (2 diffs)
- nepenthes/trunk/nepenthes-core/include/RingFileLogger.hpp (modified) (1 diff)
- nepenthes/trunk/nepenthes-core/src/FileLogger.cpp (modified) (2 diffs)
- nepenthes/trunk/nepenthes-core/src/RingFileLogger.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
nepenthes/trunk/nepenthes-core/include/ConsoleLogger.hpp
r652 r664 45 45 virtual ~ConsoleLogger(); 46 46 virtual void log(uint32_t mask, const char *message); 47 virtual bool setOwnership( int32_t uid, int32_t gid) { return true; }47 virtual bool setOwnership(uid_t uid, gid_t gid) { return true; } 48 48 }; 49 49 nepenthes/trunk/nepenthes-core/include/FileLogger.hpp
r652 r664 46 46 virtual void log(uint32_t mask, const char *message); 47 47 virtual void setLogFile(const char *filename); 48 virtual bool setOwnership( int32_t uid, int32_t gid);48 virtual bool setOwnership(uid_t uid, gid_t gid); 49 49 50 50 private: nepenthes/trunk/nepenthes-core/include/LogHandler.hpp
r652 r664 32 32 33 33 #include <stdint.h> 34 #include <sys/types.h> 34 35 35 36 namespace nepenthes … … 46 47 virtual ~LogHandler(); 47 48 virtual void log(uint32_t mask, const char *message) = 0; 48 virtual bool setOwnership( int32_t uid, int32_t gid) = 0;49 virtual bool setOwnership(uid_t uid, gid_t gid) = 0; 49 50 50 51 protected: nepenthes/trunk/nepenthes-core/include/RingFileLogger.hpp
r652 r664 48 48 virtual void setMaxFiles(uint8_t count); 49 49 virtual void setMaxSize(size_t size); 50 virtual bool setOwnership( int32_t uid, int32_t gid);50 virtual bool setOwnership(uid_t uid, gid_t gid); 51 51 52 52 private: nepenthes/trunk/nepenthes-core/src/FileLogger.cpp
r660 r664 110 110 111 111 112 bool FileLogger::setOwnership( int32_t uid, int32_t gid)112 bool FileLogger::setOwnership(uid_t uid, gid_t gid) 113 113 { 114 114 #if !defined(CYGWIN) && !defined(CYGWIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) && !defined(WIN32) … … 139 139 } 140 140 141 if ( chown(m_Filename, uid, gid) != 0)141 if( s.st_uid != uid || s.st_gid != gid ) 142 142 { 143 logCrit("Failed to change ownership for file %s: %s\n", m_Filename, strerror(errno)); 144 return false; 143 if ( chown(m_Filename, uid, gid) != 0 ) 144 { 145 logCrit("Failed to change ownership for file %s: %s\n", m_Filename, strerror(errno)); 146 return false; 147 } 148 149 logInfo("Logfile %s ownership is now %d:%d (%s:%s)\n", m_Filename, uid, gid, getpwuid(uid)->pw_name, 150 getgrgid(gid)->gr_name); 145 151 } 146 147 logInfo("Logfile %s ownership is now %d:%d (%s:%s)\n", m_Filename, uid, gid, getpwuid(uid)->pw_name,148 getgrgid(gid)->gr_name);149 152 #endif 150 153 nepenthes/trunk/nepenthes-core/src/RingFileLogger.cpp
r660 r664 166 166 167 167 168 bool RingFileLogger::setOwnership( int32_t uid, int32_t gid)168 bool RingFileLogger::setOwnership(uid_t uid, gid_t gid) 169 169 { 170 170 #if !defined(CYGWIN) && !defined(CYGWIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) && !defined(WIN32) … … 197 197 } 198 198 199 if ( chown(filename, uid, gid) != 0)199 if( s.st_uid != uid || s.st_gid != gid ) 200 200 { 201 logCrit("Failed to change ownership for file %s: %s\n", filename, strerror(errno)); 202 return false; 201 if ( chown(filename, uid, gid) != 0 ) 202 { 203 logCrit("Failed to change ownership for file %s: %s\n", filename, strerror(errno)); 204 return false; 205 } 206 207 logInfo("Logfile %s ownership is now %d:%d (%s:%s)\n", filename, uid, gid, getpwuid(uid)->pw_name, 208 getgrgid(gid)->gr_name); 203 209 } 204 205 logInfo("Logfile %s ownership is now %d:%d (%s:%s)\n", filename, uid, gid, getpwuid(uid)->pw_name,206 getgrgid(gid)->gr_name);207 210 } 208 211 #endif
