Simon Tatham
39faf94ea2
Move the char16 functions into their own file.
...
This completes the removal of the monolithic fake-lib.[ch].
2017-05-18 07:16:21 +01:00
Simon Tatham
3b3a5fd6bf
Move system_argv_* into their own file.
2017-05-18 07:10:17 +01:00
Simon Tatham
48919caa7b
Move dupcat out into its own file, and add dupstr.
...
Also a handy #define to replace all those tedious castings of NULL.
2017-05-18 07:10:17 +01:00
Simon Tatham
69d886c575
Redo the bounds checks in MsiGetFileVersion.
...
Now any failing bounds check causes the whole function to fail, rather
than returning a made-up value.
2017-05-18 06:57:29 +01:00
Simon Tatham
9e3e915426
Move snew/sfree out into their own header+src.
2017-05-18 06:46:55 +01:00
Simon Tatham
ca59ebf60d
Move MD5 out into its own file.
...
This begins a programme of code reorganisation at the end of which I'd
like to end up with something almost legible :-)
2017-05-18 06:43:51 +01:00
Simon Tatham
74592eecf3
Implement MsiGetFileHash.
...
A quick experiment or two with the real Windows version suggests that
the hash function in question is just MD5, repackaged as an array of
four little-endian 32-bit words instead of 16 bytes.
2017-05-16 19:06:45 +01:00
Simon Tatham
af3d986af7
Implement MsiGetFileVersion.
...
This is pretty ugly code, but it works well enough to deliver the
right versions for the files in my test MSI. I can polish it later.
2017-05-16 19:06:37 +01:00
Simon Tatham
29795aed5b
We now get as far as building a non-empty MSI file!
...
But I haven't tested it yet, so it's probably got a zillion things
wrong inside it.
2017-05-15 20:04:18 +01:00
Simon Tatham
b19fd4ee77
Build cab files using lcab.
2017-05-15 19:19:10 +01:00