Revision history for Perl extension Win32::Security
?.?? FUTURE Development Goals
- Add support for Unicode characters in Win32::Security::NamedObject
and Win32::Security::Recursor, and trustees (usernames/groups).
- Improve test suite coverage for DENY vs ALLOW ACEs
- Expand test suite to explicitly cover:
- Win32::Security::ACL
- Win32::Security::NamedObject
- Win32::Security::SID
- Significantly expanded testing for PermChg.pl
- PermChg.pl -f is not really trustworthy or fully defined
0.60 Fri Sep 20 2024
- First release in 20.5 years!
- Fixes to test scripts to support updates in Windows since 2004!
- Added support for Strawberry Perl 5.40 x64 Perl while retaining
x86 support at least as far back as ActivePerl 5.16!
- Fixed inheritance validation bug related to DENY and ALLOW ACEs being
treated as identical ACEs for permission occlusion.
- Significant changes/bug fixes to AdjustTokenPrivileges and use thereof.
- Attempt privilege escalation to enable reading/manipulating security
information when elevated privileges are available
- Bug fix for setting ownerTrustee/SID on recent versions of Windows.
- Bug fix for remote registry access (thanks nobull67@gmail.com)
- Added support for -file option to PermDump.pl.
- Extensive changes to NamedObject and Recursor to improve performance,
especially when dumping both owner and dacl information.
- Significant performance improvements were made to Data::BitMask, which
are available in Data::BitMask 1.00. PermDump.pl saw a ~20% speed up.
- Adding support for x64 (while retaining x86 support) required extensive
changes in Raw.pm, along with some in NamedObject.pm.
- Added test suite for Win32::Security::Raw.
- Fixes in t/scripts.t to support newer versions of cacls.exe that return
"(ID)" (Inherited from Directory) for inherited permissions.
- Added version numbers to all module files (and updated copyright dates)
- Enabled extended tests (computers got faster over the past 20 years).
0.50 Sat Mar 20 2004
- Moved to using Build.PL (i.e. Module::Build).
- Moved utility scripts into script dir so they will install to Perl/bin
- Used subclassing in Build.PL to avoid turning them into BAT files
- Added package lines to (ACE|ACL|NamedObject|Recursor).pm to get them to
show up in META.yml
- Changed .t files to PC line endings
- Added support to ACTION_distdir in Build.PL to turn off extended tests
- Overrode make_tarball in Build.PL to avoid Archive::Tar (which is broken)
and use tar and gzip from the command line. I will remove this when
a default install of Archive::Tar and Module::Build under ActivePerl
does not result in a flat tar file!
- Fixes to error_.* calls in W::S::Recursor::SE_FILE_OBJECT::PermDump
- Added PPM support to Build.PL
- Removed dacl_noprop from PermChg.pl because of an obscure bug involving
inheritance blocking preventing a subsequent dacl update from rippling
the updates.
- Added test for and fixed bug involving standalone -b passed to PermChg.pl
0.28 Sat Mar 13 2004
- Fixed owner code in Win32::Security::Recursor::SE_FILE_OBJECT::PermDump
- Looked over PermFix.pl and tidied up some typos in the docs
- Added CI, OI, IO, etc. flag aliases to Win32::Security::ACE
- Got PermChg.pl working (albeit without owner support)
- Developed the first real test suites - extended.t and scripts.t
- Tore up and rewrote huge chunks of the inheritance checking code as a
result of the above. The black box that implements permission
inheritance is a wiley adversary to understand.
- Decided to release with PermFix.pl and PermChg.pl in beta.
0.27 Mon Jan 19 2004
- Flattened Recursor into a queue based loop - no more proper recursion
- Updated PermDump.pl to function.
- Decided to release without PermChg.pl and PermFix.pl, which are both
still under development and in testing.
- Moved Win32 into lib directory and updated MANIFEST and Makefile.PL
0.26 ??? Dec ?? 2003
- Delayed due to flood in downstairs of house. Highly recommend that
people check and replace their washing machine hoses on a regular
basis. Stainless steel braid jacketed ones are worth it.
- Another Recursor refactoring
0.25 ??? Nov ?? 2003
- I really need to spend the time on this and release it
- aclRevision is now largely gone (replaced by routines that DWIW)
- Recursor refactoring
0.24 ??? Oct ?? 2003
- Implementation of mutable objects via proper
flyweight pattern
- Addition of SE_REGISTRY_KEY support
- Clean-up of mutability support
0.23 ??? Sep 20 2003
- Fifth almost:) CPANed release
- Implementation of multiple-inheritance via C::P
0.22 ??? Sep 10 2003
- Fourth almost:) CPANed release
- Recursor.pm becomes a reality
0.21 Wed Sep 3 2003
- Third almost:) CPANed release
- ACEs are now subclassed on AceType and fake subclassed on objectType
- DACL.pm becomes ACL.pm
0.20 Sat Aug 30 2003
- second almost:) CPANed release
- ACEs are now first-class objects
- Lots of bug fixes resulting from that
0.10 Tue Aug 26 2003
- first almost:) CPANed release