Refactor/mirc script split#71
Merged
Merged
Conversation
- Removed LogKey and associated functionality from the core key management module. - Updated key system initialization to exclude log key handling. - Removed log key derivation functions from the key derivation module. - Eliminated log encryption and decryption functions from the DLL interface. - Updated logging module to remove file-based logging and encryption logic. - Refactored logger initialization to utilize the core logging system. - Cleaned up Mirc script to remove encrypted logging commands and aliases. - Adjusted documentation to reflect changes in key management and logging.
- Split monolithic 2293-line fish_11.mrc into modular files - Create fish11_startup.mrc for DLL loading and initialization - Create fish11_key_management.mrc for key operations - Create fish11_key_exchange.mrc for X25519 protocol - Create fish11_encrypt_out.mrc for outgoing encryption - Create fish11_encrypt_in.mrc placeholder for incoming decryption - Create fish11_channel.mrc for FCEP-1 and channel keys - Create fish11_masterkey.mrc for master key management - Create fish11_legacy.mrc for FiSH 10 compatibility - Create fish11_menus.mrc for all mIRC menus - Create fish11_utils.mrc for helpers, debug, and utilities Bug fixes: - Enable FiSH11_SetMircDir call at startup (was commented out) - Initialize %fish_config_file properly in startup - Fix timer uniqueness for key exchange (per-contact labels) - Fix fish11_remove_channel_key to safely ignore DLL return - Fix INI_SetString vs INI_SetInt mismatch for boolean config values - Add fish11_SetIniIntValue helper for integer/boolean settings - Translate French comments to English - Remove unused variables
Implement fallback decryption handlers for incoming encrypted messages when fish_11_inject.dll is not loaded: - Add fish11_try_decrypt_incoming() helper for private messages - Add fish11_try_decrypt_channel() helper for channel messages - Add handlers for TEXT, NOTICE, and ACTION events - Support both FiSH 11 (ChaCha20-Poly1305) and FiSH 10 (Blowfish) - Add manual decryption command: /fish11_decrypt_msg (shorthand: /fdec) - Update help text with incoming decryption information The inject DLL handles most decryption transparently via SSL hooking. These handlers provide a fallback for cases where the inject DLL is not loaded or for manual decryption purposes.
Features added: - FCEP-1 channel encryption in outgoing messages (B.5) * Outgoing encryption now detects channel targets (# or &) * Automatically uses FiSH11_EncryptMsg for channel keys (manual or FCEP-1) * Falls back to legacy Blowfish for private messages with legacy keys - Key TTL display (B.6) * Add /fish11_keyttl <nickname> command (shorthand: /fkeyttl) * Shows remaining lifetime of exchange keys (24-hour TTL) * Displays EXPIRED, NO_TTL, or time remaining in hours/minutes Bug fixes: - Fix backup/restore functionality (B.4) * FiSH11_BackupKeys/RestoreKeys not yet implemented in DLL * Updated backup menu to show placeholder message * Removed broken DLL calls that would fail silently - Update help text with new commands
- Remove duplicate var %keys declaration in fish11_file_list_keys - Remove unused %x variable in fish11_debug (use noop instead) - Remove unused %delkey variable in fish11_debug (use noop instead) - Make fish11_display_multiline_result a local alias (alias -l) - All section headers verified present in all modules - All French comments already translated to English
- Show key TTL (expiration) in fish11_showkey window display - Add fish_keyttl11 shortcut alias for fish11_keyttl - Show EXPIRED, NO_TTL, or time remaining when viewing keys - Window size increased to accommodate TTL info
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Modularize and enhance the mIRC script (fish_11.mrc) for better maintainability, fix bugs, and add missing features.
Key Changes
Modularization (10 modules)
Bug fixes
New features
Code quality
Files changed