logging: split FileHandlerFactory into two classes
[folly.git] / folly / experimental / logging / FileHandlerFactory.h
index 2e8cbba8edc7e6d1e16c8b942a261e7c387f45ac..29e74abfb44edba14b3dd8ad9a7f8f4a8d2c884f 100644 (file)
@@ -23,8 +23,13 @@ namespace folly {
  * FileHandlerFactory is a LogHandlerFactory that constructs log handlers
  * that write to a file.
  *
- * It can construct handlers that use either ImmediateFileWriter or
- * AsyncFileWriter.
+ * Note that FileHandlerFactory allows opening and appending to arbitrary files
+ * based on the handler options.  This may make it unsafe to use
+ * FileHandlerFactory in some contexts: for instance, a setuid binary should
+ * generally avoid registering the FileHandlerFactory if they allow log
+ * handlers to be configured via command line parameters, since otherwise this
+ * may allow non-root users to append to files that they otherwise would not
+ * have write permissions for.
  */
 class FileHandlerFactory : public LogHandlerFactory {
  public: