MonoFileSystem.cs 875 B

123456789101112131415161718192021
  1. using Emby.Common.Implementations.IO;
  2. using MediaBrowser.Model.Logging;
  3. using Mono.Unix.Native;
  4. namespace MediaBrowser.Server.Mono.Native
  5. {
  6. public class MonoFileSystem : ManagedFileSystem
  7. {
  8. public MonoFileSystem(ILogger logger, bool supportsAsyncFileStreams, bool enableManagedInvalidFileNameChars) : base(logger, supportsAsyncFileStreams, enableManagedInvalidFileNameChars, false)
  9. {
  10. }
  11. public override void SetExecutable(string path)
  12. {
  13. // Linux: File permission to 666, and user's execute bit
  14. Logger.Info("Syscall.chmod {0} FilePermissions.DEFFILEMODE | FilePermissions.S_IRWXU | FilePermissions.S_IXGRP | FilePermissions.S_IXOTH", path);
  15. Syscall.chmod(path, FilePermissions.DEFFILEMODE | FilePermissions.S_IRWXU | FilePermissions.S_IXGRP | FilePermissions.S_IXOTH);
  16. }
  17. }
  18. }