| Age | Commit message (Collapse) | Author |
|
- Add TLSConfig and TLSPort fields to Server struct
- Add WithTLS option function for configuration
- Add ServeWithTLS and ServeFileTransfersWithTLS methods
- Update ListenAndServe to start TLS listeners when configured
- Add -tls-cert, -tls-key, -tls-port command-line flags
- Fix data race in rateLimiters map access with mutex
- Add TLS documentation with certificate generation instructions
|
|
|
|
Updated all file close operations to use anonymous functions that ignore
return values to satisfy golangci-lint errcheck warnings.
|
|
- Fix incorrect error message for banner loading
- Convert all error logging to structured format
- Remove server shutdown during config reload failures
|
|
Replace all instances of filepath.Join with path.Join across the codebase
to improve Windows compatibility following the guidance from
https://github.com/golang/go/issues/44305.
Key changes:
- Replaced filepath.Join with path.Join in 14 files
- Updated import statements appropriately
- Resolved variable shadowing issues where function parameters
named 'path' were conflicting with the path package
- Maintained filepath imports where needed for OS-specific functions
like filepath.Walk, filepath.IsAbs, filepath.Dir, and filepath.Base
All tests pass, confirming the changes maintain functionality while
improving cross-platform compatibility.
|
|
- Refactor copyDir: Add proper error handling, resource cleanup with defer,
true recursion, better permissions (0755), and separation of concerns
- Refactor configSearchPaths -> findConfigPath: Add directory validation,
better naming, and clearer documentation
- Add comprehensive test suite for all functions with 100% test coverage
- Remove panic in copyDir, replace with proper error propagation
- Fix resource leaks by using defer for file cleanup
|
|
|
|
|
|
|
|
|
|
|
|
Bonjour doesn't seem happy inside Docker, so I'm making it optional and off by default.
|
|
Limit default guest permissions to:
File System Maintenance
* Can Download files
* Can Download folders
* Can Upload Files
* Can Upload Folders
Messaging
* Can Send Messages
News
* Can Read Articles
* Can Post Articles
Chat
* Can Initiate Private Chat
* Can Read Chat
* Can Send Chat
Misc
* Can Use Any Name
|
|
|
|
|
|
|
|
|
|
* Added ability to reload config, agreement, news, and user accounts without restarting the server by sending SIGHUP to the running process
* Added ability to use modern unix or windows line breaks in Agreement.txt and MessageBoard.txt instead of classic MacOS `\r` breaks.
* Extensive refactor towards swappable backends for the active server state
* Extensive refactored towards making the hotline package generic and re-usable for alternate server implemenations
* Fix bug where users whose accounts have been deleted would not be disconnected
|
|
|
|
|
|
|
|
|
|
|
|
* Split CLI client into separate project
* Convert more functions to follow common Golang idioms e.g io.Reader, io.Writer
* Use ldflags for versioning
* Misc cleanup and simplification
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
New banner image for default hotline server installs incorporating Mobius branding.
|
|
'^\.*' works on macOS but is ignoring all files on Linux.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Old behavior:
if config dir found, exit with message
New behavior:
if config dir found, log a message and continue
This simplifies the process for new users.
|
|
|
|
|
|
re: #29
TODO: add more stat counters
Usage:
```
./mobius-hotline-server -stats-port 5503
```
```
❯ curl -s localhost:5503 | jq .
{
"LoginCount": 0,
"StartTime": "2022-06-08T20:49:10.183921-07:00",
"DownloadCounter": 0,
"UploadCounter": 0
}
```
|
|
|
|
|
|
|
|
|