win32-file-security 1.0.8 → 1.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGES +7 -0
- data/README +1 -1
- data/appveyor.yml +6 -3
- data/certs/djberg96_pub.pem +15 -15
- data/lib/win32/file/security.rb +4 -3
- data/test/test_win32_file_security_version.rb +1 -1
- data/win32-file-security.gemspec +1 -1
- metadata +18 -19
- metadata.gz.sig +0 -0
- data/lib/win32/file/security/helper.rb +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a150aebadf5c454cf002aaca445c7ac8116f1c7
|
4
|
+
data.tar.gz: a70ba25cea5d887f06cb513d1d74d1aa43226044
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b62cafb62679573e461b0ace5c6b77150b8e6ef44bbcb636eac37dd7dc2b88c7ae8b6750075431fb0c600d441d19588951ef27ab3e6ae27dafe6f5df69f01b3a
|
7
|
+
data.tar.gz: f46ee2b011223e6465e3b978d42b0e776e48241c53e6ea5c9ff6fb2a7fb0bf1eb5dc1f9cc9155c23b6cb12255cadf60012f4f5fa13b58a3ab173459d825f9be8
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGES
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
= 1.0.9 - 27-Feb-2017
|
2
|
+
* Fixed a bug in the File.set_permissions method. Thanks go to Thomas Bernhart
|
3
|
+
for the spot and the patch.
|
4
|
+
* Removed the helper.rb file, since the methods are already available from
|
5
|
+
the dependencies.
|
6
|
+
* Removed Ruby 1.9.x from the test matrix, and added Ruby 2.3.x.
|
7
|
+
|
1
8
|
= 1.0.8 - 30-Jan-2016
|
2
9
|
* Fixed an issue for account names that do not contain a backslash. Thanks go
|
3
10
|
to Ben Jansen for the spot and patch.
|
data/README
CHANGED
data/appveyor.yml
CHANGED
@@ -6,8 +6,6 @@ skip_tags: true
|
|
6
6
|
clone_depth: 10
|
7
7
|
environment:
|
8
8
|
matrix:
|
9
|
-
- ruby_version: 193
|
10
|
-
ruby_dir: 1.9.1
|
11
9
|
- ruby_version: 200
|
12
10
|
ruby_dir: 2.0.0
|
13
11
|
- ruby_version: 200-x64
|
@@ -20,6 +18,10 @@ environment:
|
|
20
18
|
ruby_dir: 2.2.0
|
21
19
|
- ruby_version: 22-x64
|
22
20
|
ruby_dir: 2.2.0
|
21
|
+
- ruby_version: 23
|
22
|
+
ruby_dir: 2.3.0
|
23
|
+
- ruby_version: 23-x64
|
24
|
+
ruby_dir: 2.3.0
|
23
25
|
install:
|
24
26
|
- ps: >-
|
25
27
|
$env:path = "C:\Ruby" + $env:ruby_version + "\bin;" + $env:path
|
@@ -38,13 +40,14 @@ install:
|
|
38
40
|
|
39
41
|
if ((gem query -i win32-security) -eq $False){ gem install win32-security --no-document }
|
40
42
|
cache:
|
41
|
-
- C:\Ruby193\lib\ruby\gems\1.9.1
|
42
43
|
- C:\Ruby200\lib\ruby\gems\2.0.0
|
43
44
|
- C:\Ruby200-x64\lib\ruby\gems\2.0.0
|
44
45
|
- C:\Ruby21\lib\ruby\gems\2.1.0
|
45
46
|
- C:\Ruby21-x64\lib\ruby\gems\2.1.0
|
46
47
|
- C:\Ruby22\lib\ruby\gems\2.2.0
|
47
48
|
- C:\Ruby22-x64\lib\ruby\gems\2.2.0
|
49
|
+
- C:\Ruby23\lib\ruby\gems\2.3.0
|
50
|
+
- C:\Ruby23-x64\lib\ruby\gems\2.3.0
|
48
51
|
build: off
|
49
52
|
test_script:
|
50
53
|
- cmd: rake
|
data/certs/djberg96_pub.pem
CHANGED
@@ -1,21 +1,21 @@
|
|
1
1
|
-----BEGIN CERTIFICATE-----
|
2
2
|
MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MREwDwYDVQQDDAhkamJl
|
3
3
|
cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
|
4
|
-
|
4
|
+
MB4XDTE2MTIxMjAwMTQ1M1oXDTE3MTIxMjAwMTQ1M1owPzERMA8GA1UEAwwIZGpi
|
5
5
|
ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
6
|
+
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVtTm/wETO8yKVKRPBO
|
7
|
+
VgPRvE94iEfKryOb/tQrmhGhchG2ALqdw/r54cGJvLaXeItrYJ6N8pSE/FSnN5jM
|
8
|
+
xugUhHBprPl+AsQ4E+IBy0dKwyU8XjFoVYzWvT1wnqwQdSazdgFCfQqb51QCgUIT
|
9
|
+
PGGakKlyzCb3Mbq30is8+QlRrqXt/JbpkUZbQwUqCdAulMT4oyPBk/L+48pbVX0s
|
10
|
+
4yj7YaVAqfGByAMTPXEmUS388lX+0xq8+GGir2Fuh0TpNW0ggr9BxprwqL0Mg4Oo
|
11
|
+
YhM5L1y8Plolo8mOTN3+K8I3afZ0lD0BtwniVb6g+Ut/4aBjKy2+GyFwwNOu0gSj
|
12
|
+
desCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFJfg
|
13
|
+
HmQ0uDU3Z9A9hB1lQMjr5VZSMB0GA1UdEQQWMBSBEmRqYmVyZzk2QGdtYWlsLmNv
|
14
14
|
bTAdBgNVHRIEFjAUgRJkamJlcmc5NkBnbWFpbC5jb20wDQYJKoZIhvcNAQEFBQAD
|
15
|
-
|
16
|
-
|
17
|
-
/
|
18
|
-
|
19
|
-
|
20
|
-
|
15
|
+
ggEBACjRCHRP944MHIQJNCglZbDnZowybV2HxmG1uhnvRwrOjBA7CXemc+QSAL7K
|
16
|
+
7eXC4FdojVEJrnU7ZxuCmfQU+fvkEQKOnah1osG1874aPiDlwtjHclpeqcDgTUI7
|
17
|
+
A7CF+OXK8x7ksFx205ruhPHKaPYtwVG/W/J+y7Wx8yl9rvwUgRBL5cVzTBiEz+AB
|
18
|
+
NRT7yoHXXfFXjuQWN1eHunSbNds2ZTGQd64yBCujb17Xdl+F9tu4klkTga3gxP3P
|
19
|
+
y3zoX1VttxnIZBojRM/s2A7c2aubMH2SVbXMR3ccVkB9XbYKl1OvCe7q85xEHit2
|
20
|
+
Kbpico5nnyHqf7YSPmvZe8bCU94=
|
21
21
|
-----END CERTIFICATE-----
|
data/lib/win32/file/security.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require_relative 'security/constants'
|
2
2
|
require_relative 'security/structs'
|
3
3
|
require_relative 'security/functions'
|
4
|
-
require_relative 'security/helper'
|
5
4
|
require 'socket'
|
6
5
|
|
7
6
|
class File
|
@@ -12,7 +11,7 @@ class File
|
|
12
11
|
extend Windows::File::Functions
|
13
12
|
|
14
13
|
# The version of the win32-file library
|
15
|
-
WIN32_FILE_SECURITY_VERSION = '1.0.
|
14
|
+
WIN32_FILE_SECURITY_VERSION = '1.0.9'
|
16
15
|
|
17
16
|
class << self
|
18
17
|
remove_method(:chown)
|
@@ -387,7 +386,6 @@ class File
|
|
387
386
|
wide_file = string_check(file).wincode
|
388
387
|
raise TypeError unless perms.kind_of?(Hash)
|
389
388
|
|
390
|
-
account_rights = 0
|
391
389
|
sec_desc = FFI::MemoryPointer.new(:pointer, SECURITY_DESCRIPTOR_MIN_LENGTH)
|
392
390
|
|
393
391
|
unless InitializeSecurityDescriptor(sec_desc, 1)
|
@@ -403,6 +401,9 @@ class File
|
|
403
401
|
perms.each{ |account, mask|
|
404
402
|
next if mask.nil?
|
405
403
|
|
404
|
+
# reset account_rights for each entry in perms:
|
405
|
+
account_rights = 0
|
406
|
+
|
406
407
|
server, account = account.split("\\")
|
407
408
|
|
408
409
|
if ['BUILTIN', 'NT AUTHORITY'].include?(server.upcase)
|
@@ -8,6 +8,6 @@ require 'win32/file/security'
|
|
8
8
|
|
9
9
|
class TC_Win32_File_Security_Version < Test::Unit::TestCase
|
10
10
|
test "version is set to expected value" do
|
11
|
-
assert_equal('1.0.
|
11
|
+
assert_equal('1.0.9', File::WIN32_FILE_SECURITY_VERSION)
|
12
12
|
end
|
13
13
|
end
|
data/win32-file-security.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: win32-file-security
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel J. Berger
|
@@ -13,25 +13,25 @@ cert_chain:
|
|
13
13
|
-----BEGIN CERTIFICATE-----
|
14
14
|
MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MREwDwYDVQQDDAhkamJl
|
15
15
|
cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
|
16
|
-
|
16
|
+
MB4XDTE2MTIxMjAwMTQ1M1oXDTE3MTIxMjAwMTQ1M1owPzERMA8GA1UEAwwIZGpi
|
17
17
|
ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
18
|
+
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVtTm/wETO8yKVKRPBO
|
19
|
+
VgPRvE94iEfKryOb/tQrmhGhchG2ALqdw/r54cGJvLaXeItrYJ6N8pSE/FSnN5jM
|
20
|
+
xugUhHBprPl+AsQ4E+IBy0dKwyU8XjFoVYzWvT1wnqwQdSazdgFCfQqb51QCgUIT
|
21
|
+
PGGakKlyzCb3Mbq30is8+QlRrqXt/JbpkUZbQwUqCdAulMT4oyPBk/L+48pbVX0s
|
22
|
+
4yj7YaVAqfGByAMTPXEmUS388lX+0xq8+GGir2Fuh0TpNW0ggr9BxprwqL0Mg4Oo
|
23
|
+
YhM5L1y8Plolo8mOTN3+K8I3afZ0lD0BtwniVb6g+Ut/4aBjKy2+GyFwwNOu0gSj
|
24
|
+
desCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFJfg
|
25
|
+
HmQ0uDU3Z9A9hB1lQMjr5VZSMB0GA1UdEQQWMBSBEmRqYmVyZzk2QGdtYWlsLmNv
|
26
26
|
bTAdBgNVHRIEFjAUgRJkamJlcmc5NkBnbWFpbC5jb20wDQYJKoZIhvcNAQEFBQAD
|
27
|
-
|
28
|
-
|
29
|
-
/
|
30
|
-
|
31
|
-
|
32
|
-
|
27
|
+
ggEBACjRCHRP944MHIQJNCglZbDnZowybV2HxmG1uhnvRwrOjBA7CXemc+QSAL7K
|
28
|
+
7eXC4FdojVEJrnU7ZxuCmfQU+fvkEQKOnah1osG1874aPiDlwtjHclpeqcDgTUI7
|
29
|
+
A7CF+OXK8x7ksFx205ruhPHKaPYtwVG/W/J+y7Wx8yl9rvwUgRBL5cVzTBiEz+AB
|
30
|
+
NRT7yoHXXfFXjuQWN1eHunSbNds2ZTGQd64yBCujb17Xdl+F9tu4klkTga3gxP3P
|
31
|
+
y3zoX1VttxnIZBojRM/s2A7c2aubMH2SVbXMR3ccVkB9XbYKl1OvCe7q85xEHit2
|
32
|
+
Kbpico5nnyHqf7YSPmvZe8bCU94=
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2017-02-27 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: ffi
|
@@ -111,7 +111,6 @@ files:
|
|
111
111
|
- lib/win32/file/security
|
112
112
|
- lib/win32/file/security/constants.rb
|
113
113
|
- lib/win32/file/security/functions.rb
|
114
|
-
- lib/win32/file/security/helper.rb
|
115
114
|
- lib/win32/file/security/structs.rb
|
116
115
|
- lib/win32/file/security.rb
|
117
116
|
- lib/win32-file-security.rb
|
@@ -147,7 +146,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
146
|
version: '0'
|
148
147
|
requirements: []
|
149
148
|
rubyforge_project:
|
150
|
-
rubygems_version: 2.
|
149
|
+
rubygems_version: 2.6.7
|
151
150
|
signing_key:
|
152
151
|
specification_version: 4
|
153
152
|
summary: File security methods for the File class on MS Windows
|
metadata.gz.sig
CHANGED
Binary file
|
@@ -1,23 +0,0 @@
|
|
1
|
-
class String
|
2
|
-
unless instance_methods.include?(:wincode)
|
3
|
-
# Convenience method for converting strings to UTF-16LE for wide character
|
4
|
-
# functions that require it.
|
5
|
-
def wincode
|
6
|
-
unless encoding == Encoding::UTF_16LE
|
7
|
-
(self.tr(File::SEPARATOR, File::ALT_SEPARATOR) + 0.chr).encode('UTF-16LE')
|
8
|
-
end
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
unless instance_methods.include?(:wstrip)
|
13
|
-
# Read a wide character string up until the first double null, and delete
|
14
|
-
# any remaining null characters.
|
15
|
-
def wstrip
|
16
|
-
unless encoding == Encoding::UTF_16LE
|
17
|
-
self.force_encoding('UTF-16LE')
|
18
|
-
end
|
19
|
-
|
20
|
-
self.encode('UTF-8',:invalid=>:replace,:undef=>:replace).split("\x00")[0].encode(Encoding.default_external)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|