579 Commits
Author SHA1 Message Date
Matthew Miner bd4f21a452 Fix private key file arg in sign example command 2026-02-14 10:35:37 +01:00
Václav Slavík 9f43e81c1d Increase version to 0.9.2 2025-10-13 18:42:27 +02:00
Václav Slavík b959a7e7e7 Ensure message text is not cut off
When setting message text, make sure the minimal size is set accurately.
This ensures that even if Wrap() fails to do its job (which it may for
some languages that don't use spaces, e.g. Chinese, Japanese or Thai),
the text won't be cut off. The window may look a bit too wide and ugly,
but that's far better than not having the text shown fully.

Fixes #261.
2025-10-13 18:38:40 +02:00
Václav Slavík f5af673acb Update translations from Crowdin 2025-10-13 18:37:00 +02:00
Václav Slavík 5c8d26e73d Add hard newlines to zh, ja translations
The wrapping algorithm used is native and doesn't correctly handle
languages that don't use spaces.

To accomodate this, manually break particularly long, spaceless strings
in Chinese and Japanese appropriately.

See #261.
2025-10-13 18:36:47 +02:00
Václav Slavík 5e2ad7cb1e winsparkle-tool: Fix superfluous null in base64 output
CryptBinaryToString() returns, when passed aNULL buffer, not size of the
encoded string, but size of the buffer requires, i.e. including the
trailing null.

The code incorrectly used this value to as std::string's size, resulting
in embedded trailing null in the output.

Fix by sizing the string properly. Note that this is safe in C++17,
which we rely on by using non-const data(): the buffer returned by
data() is guaranteed to be terminated with a trailing '\0' and this
value is writeable, as long as the value written is '\0' - which is what
CryptBinaryToString() will do.

Fixes #289.
2025-06-28 12:02:44 +02:00
Václav Slavík 5867f8def5 winsparkle-tool: don't crash on empty key files 2025-06-28 11:58:59 +02:00
Václav Slavík 1e688dfe72 Add Uzbek translation 2025-06-24 17:55:45 +02:00
Václav Slavík c11731ce07 Update French translation from Crowdin 2025-06-24 17:53:47 +02:00
Václav Slavík 29e5fe2f25 Increase version to 0.9.1 2025-05-15 18:22:23 +02:00
Andrey Pshenkin f532495a8f VerifyEdDSAPubKey should take arg pubkey 2025-04-23 10:30:38 +02:00
Václav Slavík 32dd7d19c9 Include wxWidgets.natvis
Add the natvis file for wx into its project to make debugging nicer.
2025-04-18 16:18:54 +02:00
Václav Slavík 96a34cb0ac NuGet: Bump to fix wrong winsparkle-tool.exe arch
Push a hotfix release to fix a wrong binary.

See #286.
2025-04-02 17:14:45 +02:00
Václav Slavík 240676da41 NuGet: fix accidental use of ARM64 winsparkle-tool
Fix a typo in <file> rule where arm64 binary was copied instead of the intended amd64/x64.

Fixes #286.
2025-04-01 07:52:45 +02:00
Václav Slavík 80955b3d7a Fix typo in NEWS 2025-03-27 12:09:52 +01:00
Václav Slavík b740334308 Update NEWS for 0.9.0 2025-03-27 11:40:17 +01:00
Václav Slavík 73490b95e3 Update translations from Crowdin 2025-03-27 10:37:14 +01:00
Václav Slavík 7adb8dcc12 Merge branch 'eddsa'
Fixes #187
2025-03-27 09:59:49 +01:00
Václav Slavík 30842545ca Update Microsoft.Web.WebView2 2025-03-26 18:50:12 +01:00
Václav Slavík 245a3bfd6b Update Gettext.Tools to 0.23.1 2025-03-26 18:46:43 +01:00
Václav Slavík f4787e06e1 Switch examples to using EdDSA signatures 2025-03-26 18:40:34 +01:00
Václav Slavík 71e29960d9 Update README signing instructions for EdDSA 2025-03-26 18:40:34 +01:00
Václav Slavík d1e4644abe Rename DSA scripts to legacy_*.bat 2025-03-26 18:40:34 +01:00
Václav Slavík 66b44e337c Include winsparkle-tool in nuget package
Add the tool to tools subdirectory.

Also add a $(WinSparkleTool) MSBuild property pointing to it.
2025-03-26 18:40:34 +01:00
Václav Slavík c891755260 Include winsparkle-tool in binary tarballs 2025-03-26 18:40:34 +01:00
Václav Slavík ef51a4d60e Fix warnings when compiling for x86 arch 2025-03-26 18:40:34 +01:00
Václav Slavík 70a2ab8fe4 Accept (Mac) Sparkle's old private keys too
For maximum compatibility, accept EdDSA private keys in the format used
by older versions of Sparkle, where private and public keys derived by
ed25519_create_keypair() were stored concatenated.

WinSparkle and new versions of Sparkle store just the seed as the
private key, but it's useful to be able to use Sparkle keys generated
some time ago with WinSparkle.
2025-03-26 18:40:34 +01:00
Václav Slavík 3c4e4843bd Tool: add verify command 2025-03-26 18:40:34 +01:00
Václav Slavík 6ac95fc1e7 GHA: Include winsparkle-tool.exe in CI artifacts 2025-03-26 18:40:34 +01:00
Angelo Convento be50c5dcfc Correct typo in generate_keys.bat (#285) 2025-03-26 16:11:56 +01:00
Václav Slavík 80f2698f8b README: Remove outdated section about dev buils 2025-03-26 09:44:09 +01:00
Václav Slavík 0db9f4da39 NuGet: put DLLs into runtimes/* location too
This makes them easier to use from .NET projects.
2025-03-26 09:44:09 +01:00
Václav Slavík 2f552b30b7 Fix broken URL in README.md 2025-03-26 09:21:21 +01:00
Václav Slavík 83a06a325a Tool: add sign command 2025-03-26 09:16:16 +01:00
Václav Slavík b677a28b9b Tool: add commands to generate and print EdDSA keys 2025-03-26 09:16:16 +01:00
Václav Slavík 3c8398fd29 Fix typo in 4ee50b2e resulting in logic error 2025-03-25 18:03:11 +01:00
Václav Slavík 3bc97580ee Add skeleton winsparkle-tool to the build
Add a tool for performing tasks such as signing, creating keys etc.

This is just a skeleton to include it in the build system, doesn't yet
implement any meaningful functionality.
2025-03-25 17:25:45 +01:00
Václav Slavík ac26a3486f Fix psdk example to use app icon for its window 2025-03-23 07:32:37 +01:00
Václav Slavík c02be0a553 Use non-embarrassing icon for the sample app
Use MIT-licenses WinUI icon, which is vaguely appropriate: non-describe,
Windows 11 styled, MIT licensed.

Replaces ancient Poedit icon.
2025-03-23 07:32:37 +01:00
Václav Slavík 75413a33b2 Increase version to 0.9.0 2025-03-22 17:48:19 +01:00
Václav Slavík 7d3ad32df1 Tweak README decorations 2025-03-22 17:48:19 +01:00
Václav Slavík 6e6e9bebca New WinSparkle icon/logo
Replace the icon with a custom-designed one.

Include all sizes as well as an ICO file. Note that the 256px size in
the ico is slightly lossy compressed to keep the size down. All sizes
are PNGs (supported since Windows Vista) and built using
https://gist.github.com/vslavik/6ca955b60d09a92bd39a28b2187fb0f9
2025-03-22 17:47:10 +01:00
Václav Slavík a2a3c00fdb Mark DSA API as deprecated
Mark win_sparkle_set_dsa_pub_pem() as deprecated.

Document that DSA signatures are ignored if EdDSA public key is set.

Output runtime warning when DSA signatures are used for checking.
2025-03-10 17:48:45 +01:00
Václav Slavík c859a6c029 Rename EdDSA API to win_sparkle_set_eddsa_public_key() 2025-03-10 17:00:08 +01:00
Václav Slavík 8ac52b1548 Fixup ed25519 vcxproj files to match others 2025-03-10 17:00:08 +01:00
Václav Slavík aed682045f Merge branch 'devel/eddsa-updates-pr' into eddsa 2025-03-10 16:33:51 +01:00
Václav Slavík 3f13a27c21 Minor formatting and typos fixes 2025-03-10 15:44:33 +01:00
Václav Slavík 4ee50b2e99 Fix file-handling errors in VerifyEdDSASignatureValid
- triple-closing of the file (CFile destructor takes care of it)
- incorrectly treating FILE* and win32 as interchangeable
2025-03-10 15:44:33 +01:00
Václav Slavík 56c67a714a Remove NODE_EDDSASIGNATURE
EdDSA signatures were never supported outside of enclosures, so remove
all the code for parsing them there. It's only an enclosure attribute.
2025-03-10 14:36:37 +01:00
Václav Slavík 71fa8f693c Bump EdDSA availability to v0.9.0 2025-03-08 11:57:45 +01:00