Commit Graph
100 Commits
Author SHA1 Message Date
RandyTheSilly fb5449cf1f Remove poorly placed "verifyEntryDoesNotExist" check, as clients should be responsible for performing this check long before attempting to write the entry 2025-01-18 19:29:15 -05:00
RandyTheSilly 55be8a3075 Return immediately after clearing clipboard (useful for GUI/TUI clients) 2025-01-16 15:57:34 -05:00
RandyTheSilly c71cacb507 Fix build failures on several platforms 2025-01-16 15:49:57 -05:00
RandyTheSilly 81b78068a7 Add exported ExpandPathWithHome utility 2025-01-16 14:22:07 -05:00
RandyTheSilly 89b74cec1e Allow removing keys from config file 2025-01-16 13:47:30 -05:00
RandyTheSilly 0162b737c8 Fix crash for SSH dialing errors on interactive clients 2025-01-12 21:16:21 -05:00
RandyTheSilly 1c650d4751 Avoid hard closing/crashing interative clients on SSH dialing failures 2025-01-12 20:47:20 -05:00
RandyTheSilly 5028fb21b0 Add 3-second timeout for SSH connection attempts 2025-01-12 20:35:43 -05:00
RandyTheSilly 4ca97834f4 Fix formatting of copyright date in version info output 2025-01-11 18:11:27 -05:00
RandyTheSilly b37dfdb912 Bump copyright date 2025-01-11 17:58:46 -05:00
RandyTheSilly cdb2318dc1 Bump golang.org/x/crypto to v0.32.0; bump golang.org/x/sys to v0.29.0 2025-01-11 17:49:44 -05:00
RandyTheSilly 68e3108741 Allow returning lists of synchronized entries from sync.RunJob 2025-01-11 17:47:27 -05:00
RandyTheSilly b5dd8ec502 Specify that termux binaries should target Android 2024-12-29 19:49:41 -05:00
RandyTheSilly d2034b458b Export WriteToStdin for use by clients 2024-12-29 19:38:05 -05:00
RandyTheSilly fc2e77d8b8 Bump version constant to "0.D.0" to indicate development version of v0.3.0 2024-12-29 16:28:18 -05:00
RandyTheSilly c28d45c9da Allow forcing one-off functions in sync package to operate in offline mode 2024-12-29 16:25:13 -05:00
RandyTheSilly 2feeeb74d7 Return errors from ParseConfig (facilitates GUI development) 2024-12-29 16:23:08 -05:00
RandyTheSilly 1a1d4ed1e4 Fix typo in ParseConfig documentation 2024-12-28 19:53:14 -05:00
RandyTheSilly a4a39a3a99 Support passphrase-protected SSH identity files on non-CLI clients 2024-12-28 15:09:17 -05:00
RandyTheSilly 1b9237af0b Fix support for non-Linux/BSD platforms; rename file for clarity 2024-12-21 17:30:42 -05:00
RandyTheSilly 049af83390 Rename "returnOnExit" build tag to "interactive" 2024-12-21 16:07:45 -05:00
RandyTheSilly f9aa2fc374 Export LaunchClipClearProcess; use more reliable method to manipulate os.Args for GUI clients 2024-12-21 16:05:04 -05:00
RandyTheSilly 3b57d59ddc Allow clearing the clipboard instantly; improve code sharing between platforms; facilitate GUI/TUI client development regarding the clipboard 2024-12-21 15:31:14 -05:00
RandyTheSilly 9ed7b8ad9b Fix typo in README.md 2024-12-20 20:55:16 -05:00
RandyTheSilly a4864b6544 Specify "clipclear" now only needs to be accepted for non-interactive CLI implementations 2024-12-20 20:49:54 -05:00
RandyTheSilly 619e4220a6 Implement unique clipboard clearing behavior for interactive GUI/TUI implementations 2024-12-20 20:29:16 -05:00
RandyTheSilly f2f9c523f4 Do not declare outputSlice variable in DecryptGPG 2024-12-20 19:44:36 -05:00
RandyTheSilly 1cebb39546 Fix soft exit function not specifying a return value 2024-12-16 13:10:07 -05:00
RandyTheSilly 1db9467446 Prepare for release v0.2.4 2024-12-13 12:17:08 -05:00
RandyTheSilly 3e966ade11 Bump golang.org/x/crypto to v0.31.0 to address CVE-2024-45337 2024-12-13 12:00:55 -05:00
RandyTheSilly dd6bde5e4d Bump Go to v1.23.4; bump dependencies 2024-12-10 16:47:00 -05:00
RandyTheSilly 91fdeb53d5 Do not infer MIME type when copying data on UNIX-like systems 2024-12-10 16:28:42 -05:00
RandyTheSilly d613ace494 Remove commit.sh 2024-10-29 17:18:35 -04:00
RandyTheSilly 003c373cc8 Update roadmap 2024-10-19 17:05:10 -04:00
RandyTheSilly cdb58e9984 Add "1output" to .gitignore; add Go bump to patch notes 2024-10-19 16:27:28 -04:00
RandyTheSilly 4f923e7272 Prepare for release v0.2.3 2024-10-19 16:20:34 -04:00
RandyTheSilly fcde9689c8 Bump dependencies 2024-10-19 16:11:56 -04:00
RandyTheSilly ab3f6be41b Bump Go to v1.23.2 2024-10-19 16:07:39 -04:00
RandyTheSilly 1fb2834844 Fix renaming an entry/folder to an invalid path still attempting the rename on the server 2024-10-18 12:34:17 -04:00
RandyTheSilly 7b4241b2cd Prepare for release v0.2.2 2024-08-20 21:00:24 -04:00
RandyTheSilly de508d17f2 Fix edited entries (edited to have fewer lines than before) not being truncated during sync (regression from 88b7a6be6d) 2024-08-20 01:05:11 -04:00
RandyTheSilly f5a635004a Prepare for release v0.2.1 2024-08-13 21:30:46 -04:00
RandyTheSilly 4c54349b39 Assign error-specific exit codes to constants 2024-08-13 20:48:20 -04:00
RandyTheSilly a1c9827c04 Move FSSpace, FSPath, and FSMisc constants to core package to avoid import cycles 2024-08-13 20:28:33 -04:00
RandyTheSilly be46b0d6b2 Fix init if devices directory does not exist/is empty 2024-08-13 20:21:11 -04:00
RandyTheSilly b1fc8e3c4d Bump: golang.org/x/sys v0.23.0 => v0.24.0 2024-08-13 18:43:33 -04:00
RandyTheSilly 645bd964e6 Create and close sshClient instances in one-off sync functions (ShearRemoteFromClient, RenameRemoteFromClient, AddFolderRemoteFromClient) 2024-08-13 18:41:47 -04:00
RandyTheSilly 88b7a6be6d Create all config/entry files (both local and remote) with 0600 permissions 2024-08-13 17:20:15 -04:00
RandyTheSilly cbf9139713 Handle remaining errors in sync/client.go 2024-08-13 16:21:55 -04:00
RandyTheSilly d67114b9ba Simplify TOTP copy message 2024-08-13 15:54:59 -04:00
RandyTheSilly 7d51d12b55 Remove old device ID from server in DeviceIDGen 2024-08-12 15:53:40 -04:00
RandyTheSilly e861b2b6f3 Close sshClient at the end of RunJob 2024-08-12 14:22:58 -04:00
RandyTheSilly bb1ecc5bae Handle or explicitly ignore all remaining errors 2024-08-12 14:13:48 -04:00
RandyTheSilly ed9c4e91ff Implement error-specific exit codes 2024-08-11 20:21:01 -04:00
RandyTheSilly 06b9527a33 Properly format function documentation comments 2024-08-11 16:37:28 -04:00
RandyTheSilly 9f43337437 Call GetSSHClient once in a full sync procedure, reusing the client (fixes multiple keyfile passphrase prompts) 2024-08-11 15:01:24 -04:00
RandyTheSilly 102ef6955c Mention MUTN in README.md 2024-08-08 20:10:14 -04:00
RandyTheSilly 38f3896e99 [wiki] Add bug mentioned in developer guide to known bugs list 2024-08-08 20:04:29 -04:00
RandyTheSilly cf796c984d [wiki] Add server binary build info; link to developer guide from README.md 2024-08-08 20:00:04 -04:00
RandyTheSilly 49ec3d6c62 [wiki] Fix links to various wiki pages 2024-08-08 19:45:25 -04:00
RandyTheSilly baf4236162 Add roadmap to README.md 2024-08-08 19:43:00 -04:00
RandyTheSilly 13af0a97b5 Add gofmt targets 2024-08-08 19:16:26 -04:00
RandyTheSilly e31e451bf5 Update .gitignore 2024-08-08 18:44:06 -04:00
RandyTheSilly f5e5cd31bb Move libmuttonserver.go to this repo 2024-08-08 17:39:18 -04:00
RandyTheSilly d82188f566 [wiki] Remove extra subdirectory 2024-08-08 16:57:13 -04:00
RandyTheSilly ef2a3dbbb2 Add go.mod and go.sum 2024-08-08 16:53:29 -04:00
RandyTheSilly c83a3aa018 Rename "backend" package to "core" 2024-08-08 16:49:34 -04:00
RandyTheSilly ba4f7f2340 Move packages out of src/ 2024-08-08 16:35:03 -04:00
RandyTheSilly 57d7cdf8f9 Restore README.md and commit.sh (lost in migration) 2024-08-08 16:15:10 -04:00
RandyTheSilly a0d9318fe9 Prepare for release v0.2.0 2024-08-06 14:57:09 -04:00
RandyTheSilly 9df37b0890 Announce TOTP code has been copied only after the entry has already been decrypted 2024-07-30 18:32:14 -04:00
RandyTheSilly afaef3685b [wiki/MUTN] Add basic setup and usage instructions 2024-07-19 17:56:42 -04:00
RandyTheSilly a382d31997 Fail early if adding an entry to a directory that does not exist (or if the directory is a file) 2024-07-19 15:53:54 -04:00
RandyTheSilly af88c89b50 Fix rename prompting for new location before verifying old one exists 2024-07-19 13:48:14 -04:00
RandyTheSilly 0f4eff440e [wiki/libmutton] Update known bugs list and add a relevant bug to the developer guide 2024-07-18 17:51:05 -04:00
RandyTheSilly a76452d9bb Improve StringGen to allow creating file name-safe complex strings; remove in-code references to future additions 2024-07-18 17:04:48 -04:00
RandyTheSilly fa35469ca9 When server and client clocks are out of sync, warn the user that they should update mod times even if the pending upload operations appear correct 2024-07-18 16:16:50 -04:00
RandyTheSilly 6366800c84 Do not upload/download any entries if the client and server time are more than 30 seconds out of sync; appropriately warn the user 2024-07-18 15:55:50 -04:00
RandyTheSilly 7a48544932 Fix ANSI escapes (on Windows) not being interpreted after using GPG pinentry 2024-07-17 18:54:29 -04:00
RandyTheSilly d5e07bdeb6 Allow writing to different section headers in libmutton.ini 2024-07-17 15:49:45 -04:00
RandyTheSilly 3ae85adc18 Move text editor determination to cli package 2024-07-17 14:59:57 -04:00
RandyTheSilly 7ab0c91c0e Allow parsing different section headers in libmutton.ini 2024-07-17 14:44:18 -04:00
RandyTheSilly 93f8e1d867 [wiki/libmutton] Add config file info to developer guide 2024-07-15 14:54:47 -04:00
RandyTheSilly a2a92985af Replace use of ASCII control characters with unicode characters allowed in Windows filenames (fixes shearing with a Windows server) 2024-07-10 15:23:13 -04:00
RandyTheSilly 6b3a136c5e Fix "shear" throwing errors if no device ID is present (instead of running in offline mode) 2024-07-10 02:07:59 -04:00
RandyTheSilly d5146d7625 Split sync.Rename into separate functions for client and server to avoid compiling SSH into the server binary 2024-07-10 00:01:59 -04:00
RandyTheSilly cef8c47161 Implement synchronized renaming 2024-07-09 23:18:13 -04:00
RandyTheSilly f8d23489c0 Append UNIX timestamp to device ID to guarantee uniqueness 2024-07-09 16:42:47 -04:00
RandyTheSilly 6273485aea Do not always save executable name in memory in sync package 2024-07-09 16:04:03 -04:00
RandyTheSilly 9a8f2db78e Fix printing full executable path in error messages on Windows 2024-07-09 15:20:36 -04:00
RandyTheSilly 08af2a3761 [wiki/libmutton] Add developer guide (for third-party implementations) 2024-07-07 23:52:33 -04:00
RandyTheSilly 40c5db5940 [wiki/libmutton] Add guide for migrating from other password managers 2024-07-07 23:25:25 -04:00
RandyTheSilly 5691ff852d [wiki/libmutton] Add list of planned breaking changes 2024-07-07 22:23:21 -04:00
RandyTheSilly 8f68da4d28 [wiki/MUTN] Add list of Windows quirks 2024-07-06 00:18:32 -04:00
RandyTheSilly 6ab274b99f Implement initial markdown wiki w/copy of clipboard troubleshooting info from sshyp 2024-07-05 23:42:40 -04:00
RandyTheSilly eea4570a89 Replace most occurrences of os.Exit(0) in the backend and sync packages with a custom backend.Exit function that can allow "soft exit" in GUI/TUI environments to avoid killing the entire process; currently all major errors still result in killing the entire process 2024-07-05 22:18:17 -04:00
RandyTheSilly ec0587ba5b Remove mention of "mutn" in sync package error messages to account for third-party CLI clients 2024-07-05 21:55:56 -04:00
RandyTheSilly 349cd49e4d Handle error for failing to create local device ID file 2024-06-05 18:29:38 -04:00
RandyTheSilly 779d9d0c78 Improve error clarity in cli.editNote 2024-06-05 18:19:01 -04:00
RandyTheSilly dea4f56190 Handle error in writeToStdin; remove unused function removeFile 2024-06-05 18:05:26 -04:00