aboutsummaryrefslogtreecommitdiff
path: root/LICENCE (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-08-26Migrate Python code to Python 3.Simon Tatham2-15/+17
2018-05-14Stop using real pointers as handles in makemsi.c.Simon Tatham1-22/+81
Upgrading to Ubuntu 18.04, which seems to have become more prone to allocating process memory above the 4G boundary, has revealed that the client code of the phony msi.dll functions is not in fact prepared to accept arbitrary machine-word sized pointer values. It's expecting 32-bit handles, so we were segfaulting because MsiDatabaseImportW was only being given the bottom 32 bits of the 64-bit pointer that MsiOpenDatabaseW had returned. So now I just keep a trivial registry of small integer handle values and the pointers they map to. I don't even bother to recycle them - the process isn't expected to run for long enough for me to care.
2017-06-07First draft of licence and readme files.Simon Tatham2-0/+116
2017-05-28Fix WORD16 and WORD32 macros.Simon Tatham1-11/+11
I made the mistake of using the same variable name _offset for the temporary variable in WORD16 and WORD32, and for the one in BYTE which the other two use as a subroutine - meaning that the declaration on the first line of BYTE read 'size_t _offset = _offset+3' or similar, in which the RHS _offset referred to the newly declared LHS one rather than to the one in the outer scope. WORD32 had the additional goof that I had declared its return-value accumulator variable as a 16- rather than 32-bit integer due to copy-and-paste error. Between those two mistakes - surely introduced at the last minute when I was doing code cleanup on this source base, because I know this function was working OK before then - I had completely broken the extraction of version strings from PE executables.
2017-05-28Add a command-line test program.Simon Tatham8-3/+50
At the moment it only tests MsiGetFileVersion, because that's the piece I just found a problem in, but I could easily extend it to have convenient command-line test rigs for other parts of this setup too.
2017-05-18Rename the last 'fake' file.Simon Tatham2-16/+3
2017-05-18Move CAB-reading into its own file.Simon Tatham3-35/+43
2017-05-18Rename the libraries to remove the extra ".so" in the names.Simon Tatham1-4/+4
I don't know why those strange names seemed necessary to start with and now don't seem to be. I probably changed something subtle somewhere without noticing.
2017-05-18General MD5 cleanups.Simon Tatham1-34/+24
I did these in passing while looking for the bug in the previous commit, and they seem like general improvements, so I'll keep them.
2017-05-18Fix parenthesis goof in the revised file-MD5ing code.Simon Tatham1-1/+1
Every block I read was being condensed down to one byte.
2017-05-18Fix a memory-management goof.Simon Tatham1-2/+1
That's what I get for actually trying to free my memory :-)
2017-05-18Make the symlinking in 'make install' idempotent.Simon Tatham1-2/+4
2017-05-18Rename fake-msi.c to makemsi.c.Simon Tatham2-6/+14
It's now a sensible source flie containing a set of routines that do something coherently connected to each other, so it doesn't deserve that 'fake-' prefix that I used for the previous monolithic files full of tangled-together stuff. While I'm here, I've also made up nicer (i.e. more distinguishable) random magic numbers for the structure-type disambiguation.
2017-05-18Move CAB-creation routines into their own file.Simon Tatham3-69/+88
Also tidy up some of the memory management, while I'm here.
2017-05-18Move the char16 functions into their own file.Simon Tatham8-21/+13
This completes the removal of the monolithic fake-lib.[ch].
2017-05-18Move system_argv_* into their own file.Simon Tatham8-57/+72
2017-05-18Move dupcat out into its own file, and add dupstr.Simon Tatham7-58/+68
Also a handy #define to replace all those tedious castings of NULL.
2017-05-18Redo the bounds checks in MsiGetFileVersion.Simon Tatham3-51/+58
Now any failing bounds check causes the whole function to fail, rather than returning a made-up value.
2017-05-18Move MsiGetFileVersion out into its own file.Simon Tatham3-184/+197
2017-05-18Move snew/sfree out into their own header+src.Simon Tatham8-25/+36
2017-05-18Move MD5 out into its own file.Simon Tatham5-255/+275
This begins a programme of code reorganisation at the end of which I'd like to end up with something almost legible :-)
2017-05-17Set up an autotools system.Simon Tatham5-21/+65
Supersedes the hand-hacked Makefile I was previously working with.