Commit Graph

864 Commits

Author SHA1 Message Date
Bryan Ashby b7ca78ebc4 Fix WebSocket disconnect 2017-08-14 21:22:03 -06:00
Bryan Ashby 278eb8e7cf setAnsi() method, various cleanup and optimizations 2017-08-06 11:32:32 -06:00
Bryan Ashby 70a53e9613 Nothing really 2017-08-06 11:31:56 -06:00
Bryan Ashby 0a079ee4d8 Display ANSI in file area desc view 2017-08-06 11:31:21 -06:00
Bryan Ashby 9cb31367fd Mask out key/authCode from log 2017-08-06 11:22:37 -06:00
Bryan Ashby 941b180227 Remove unused & commented table 2017-08-06 11:22:15 -06:00
Bryan Ashby 254b5712be Fixes to ANSI escape parser @ end of row 2017-08-06 11:21:27 -06:00
Bryan Ashby 9720258303 Merge branch 'master' of github.com:NuSkooler/enigma-bbs into 0.0.7-alpha 2017-08-06 10:33:53 -06:00
Bryan Ashby d5954f8198 #118: Crash on STDIO doors when logged in via WebSocket 2017-08-06 10:20:55 -06:00
Bryan Ashby 848b0f7cf6 EnigAssert() vs assert() and fix a logging issue 2017-07-30 14:31:16 -06:00
Bryan Ashby 84c0614dcd Merge branch 'master' of ssh://numinibsd/git/base/enigma-bbs into 0.0.7-alpha 2017-07-25 19:30:25 -06:00
Bryan Ashby e5ea457db0 Update to send proper term size for pty 2017-07-25 19:30:03 -06:00
Bryan Ashby ab81b247c6 Fix file newscan pointer 2017-07-23 18:11:33 -06:00
Bryan Ashby 429e03185c Merge from master 2017-07-23 13:05:28 -06:00
Bryan Ashby ca45656c11 Add Exodus door server support 2017-07-23 13:03:47 -06:00
Bryan Ashby d57ca0873e * File Base newscan basic functionality
* Try to handle unknown options in telnet server
2017-07-17 19:46:38 -06:00
Bryan Ashby d230a2f58b * Don't allow 'system' filters to be deleted
* Code cleanup
* Static UUID for "default/system" filters
2017-07-09 20:00:36 -06:00
Bryan Ashby fb9ecbfb93 New MCI codes for system up/down stats 2017-07-09 16:48:53 -06:00
Bryan Ashby 0366f0139c Add application/x-arj and text/x-ansi MIME types 2017-06-23 22:49:46 -06:00
Bryan Ashby 4b8369a41f Merge branch 'master' of github.com:NuSkooler/enigma-bbs 2017-06-22 22:20:40 -06:00
Bryan Ashby 7c81cbed51 Fix route handling for HTTPS 2017-06-22 22:20:05 -06:00
Bryan Ashby 7343ab2ff2 Updated Events - use glob for finding nested modules/etc. 2017-06-22 22:19:34 -06:00
Bryan Ashby b7ad850bdc Merge branch 'master' of github.com:NuSkooler/enigma-bbs into 0.0.7-alpha 2017-06-21 21:42:56 -06:00
Andrew Pamment bb76939745 Fixes thtrue in #115 2017-06-22 12:38:57 +10:00
Josh M. McKee b383950314 Add getModulePaths to module_util, call it from events.registerModules 2017-06-11 19:44:34 -07:00
Bryan Ashby 02d32a9e51 Add config getter 2017-06-11 20:23:12 -06:00
Josh M. McKee 06e84eee94 Spaces to tabs, to match upstream convention 2017-06-10 18:52:11 -07:00
Josh M. McKee c45824b3ad Rename connect event to term_detected, add connected and disconnected events 2017-06-10 18:46:28 -07:00
Josh M. McKee 002b0e941e Events system, first pass 2017-06-10 17:29:00 -07:00
Bryan Ashby 64aa63e8b5 Fix disconnect of WebSocket 2017-06-06 20:04:28 -06:00
Bryan Ashby ff5896e80c Fix proxied check for remoteAddress 2017-06-01 18:56:05 -06:00
Bryan Ashby ab8cb77f81 * secureProxy -> proxied in webSocket config
* Add support for X-Forwarded-For and X-Real-IP in WebSocket for remoteAddr
2017-06-01 18:48:14 -06:00
Bryan Ashby 385edc0953 X-Forwarded-Proto isSecure override option 2017-05-31 22:13:44 -06:00
Bryan Ashby 74bab3d6c5 Better configuration for WebSockets 2017-05-30 21:31:35 -06:00
Bryan Ashby 2e18833014 Working WebSocket connections - not yet complete, but working well 2017-05-26 08:25:41 -06:00
Bryan Ashby 3a41a6b2e1 fb move FILENAME_WC ... DST support: Allow moving entries via their filenames inc. wildcard support 2017-05-23 21:55:22 -06:00
Bryan Ashby 1c92b349cd Clean up oputil help a bit
Minor code tidy + notes
2017-05-22 21:35:06 -06:00
Bryan Ashby d0e2d41c00 Ability to scan single archive (e.g. compressed .pdf) -> extract useful description 2017-05-21 11:45:50 -06:00
Bryan Ashby 019596d709 Convert to using graceful-fs vs vanilla fs module 2017-05-19 21:20:19 -06:00
Bryan Ashby a49abc7c67 Catch spawn errors 2017-05-19 20:28:15 -06:00
Bryan Ashby 54a7f4f774 * Lots of improvements to info extraction system
* MUCH faster browsing in file base
* Better release year estimation
* New tool: exiftool2desc
2017-05-19 18:41:13 -06:00
Bryan Ashby b8595f667d Short desc extraction for non-archives 2017-05-13 20:59:42 -06:00
Bryan Ashby a1e51c41ee Call main... main! 2017-05-10 21:29:04 -06:00
Bryan Ashby 0e5d0c53d2 Use Config.fileTypes with mime-db backed MIME types; remove old archives.formats{} 2017-05-10 21:21:07 -06:00
Bryan Ashby 50dda3300a Faster, better predefined MCI handling 2017-05-10 21:17:19 -06:00
Bryan Ashby 8ca0c31fb8 Add password blacklist "BADPASS.TXT" support. Using top 10k passowrds from https://github.com/danielmiessler/SecLists/ by default 2017-03-14 20:21:51 -06:00
Bryan Ashby f510fca656 Tic File Processor didn't work on nodelist file #111 2017-03-13 20:11:43 -06:00
Bryan Ashby d6e5dcbdf1 Optutil not working #110 2017-03-13 19:54:22 -06:00
Bryan Ashby 732e2eefd5 Don't trim() Ldesc; may muck with FILE_ID.DIZ type descriptions 2017-03-10 21:21:09 -07:00
Bryan Ashby 221ec08bc8 * Don't archive non-good non-pkt files (e.g. TICs that are *not* rejected)
* asyncSeries() for TIC import (SQLite transaction)
2017-03-10 21:13:30 -07:00
Bryan Ashby 043987bacb Fix 'Size' 2017-03-10 08:31:36 -07:00
Bryan Ashby 76aa54f22c Don't try to log error that doesn't exist 2017-03-08 23:01:25 -07:00
Bryan Ashby 57dc7c91ef * TIC import support!!!
* reject/retain paths for FTN networks
* Fix bug in FileEntry.findFiles() with meta pairs
* New well known file meta - mostly related to TIC
* Index of file_sha256
* FileEntry.persist() can update entries
2017-03-08 22:37:02 -07:00
Bryan Ashby f95e8dfe4c TIC file reader 2017-03-06 20:31:26 -07:00
Bryan Ashby 213f63ae12 More deleted user robustness 2017-03-02 18:50:58 -07:00
Bryan Ashby be38bbf3c7 Crash on exporting packet #104 2017-03-01 20:02:45 -07:00
Bryan Ashby bd8718beaa Remove FSC-48 packet writing stuff for now 2017-02-27 21:10:33 -07:00
Bryan Ashby f5899bc10f * Bump version to 0.0.5-alpha
* Add email password reset support
2017-02-26 21:28:05 -07:00
Bryan Ashby 97e19957ce * Default upload descriptions based on file names if no FILE_ID.DIZ/etc. could be found
* Add default desc & prompt for desc to oputil fb scan
2017-02-24 23:39:31 -07:00
Bryan Ashby 9a2b48ac47 * Update ACS parser PEG.js script to include some missing functionality
* Regenerate acs_parser.js with latest pegjs & new rules
2017-02-24 23:38:30 -07:00
Bryan Ashby 79c1ad6ce6 Hopefully fix FTN 2+ packet export when using a point address 2017-02-23 21:30:06 -07:00
Bryan Ashby 9bb28b36cd Crash on Telnet Bridge connecting to Tradewars server #105 2017-02-22 23:20:05 -07:00
Bryan Ashby 3f873f5877 Fix writing packet headers for origins that have dot addresses 2017-02-21 21:27:32 -07:00
Bryan Ashby 4cea9e023a Fix bug with FTN export scheduler 2017-02-21 21:26:56 -07:00
Bryan Ashby 3af1858c39 Add 'fb move' to oputil 2017-02-20 22:31:01 -07:00
Bryan Ashby 72b0eafc7b Minor fixes to oputil 2017-02-20 11:46:18 -07:00
Bryan Ashby 0ca2ca9bf2 * Add oputil import support for *.NA and AREAS.BBS 2017-02-20 11:31:24 -07:00
Bryan Ashby 5c58fd2cfa Fix loading order on fb info 2017-02-18 23:05:40 -07:00
Bryan Ashby 6717cd5179 Add fb 'info' support to oputil 2017-02-18 19:00:09 -07:00
Bryan Ashby 058ff3f367 * Rework user.js and User object to ES6
* Update download stats for user when web download is completed
2017-02-18 13:21:18 -07:00
Bryan Ashby 6406d32165 Handle (default) case of web server being disabled in file areas/web link generation 2017-02-18 09:56:23 -07:00
Bryan Ashby 701f3c9728 Fix client IP when connected via SSH 2017-02-18 09:37:22 -07:00
Bryan Ashby e70f28fffe * Use proper unrar for .rar riles (7za has issues)
* Fix short/long desc issues when filenames have paths
2017-02-17 21:56:28 -07:00
Bryan Ashby ec3e3f0755 Add 'overrideUrlPrefix' support to web server 2017-02-16 21:40:05 -07:00
Bryan Ashby 6a684266a2 Fix crash when file does not exist... and 404 page contents don't exist :) 2017-02-16 21:09:53 -07:00
Bryan Ashby 6285193545 Very minor fixes 2017-02-16 20:53:14 -07:00
Bryan Ashby f80492d869 Merge branch 'master' into FILE_BASE 2017-02-15 21:46:35 -07:00
Bryan Ashby bced59da09 MUCH faster crc32 impl 2017-02-15 21:40:22 -07:00
Bryan Ashby d0511d5d74 * Split out oputil stuff into modules based on <command>
* oputil: better syntax
* oputil: allow areaTag@storageTag for scan, e.g. oputil fb scan <args> retro_pc@some_specific_storage
2017-02-15 20:27:16 -07:00
Bryan Ashby 9b0f956934 * Start work on new oputil format: oputil <command> <action> <args> <target>
* Add auto tagging for oputil scan
2017-02-13 22:51:20 -07:00
Bryan Ashby aa40d998b2 Fix from username in message post 2017-02-12 22:13:03 -07:00
Bryan Ashby f85388e747 Remove bad code :) 2017-02-12 21:52:56 -07:00
Bryan Ashby e95aba0582 Fix some DB startup issues for new installs 2017-02-12 19:49:56 -07:00
Bryan Ashby edb9d32acc * Fix CRC32 meta
* Properly store upload user info in meta @ upload
2017-02-12 00:24:24 -07:00
Bryan Ashby 50a5b8d78e Use proper resetScreen() vs clearScreen() 2017-02-12 00:23:39 -07:00
Bryan Ashby 6dccbd124f Fix upload_by_user_id parse 2017-02-12 00:22:53 -07:00
Bryan Ashby 849ab68de2 Add README.NOW support for long desc scan 2017-02-12 00:22:36 -07:00
Bryan Ashby 2e10fdfdf5 Updates to upload check, docs 2017-02-09 22:03:21 -07:00
Bryan Ashby f9e91987ac Better arg parsing for main 2017-02-09 21:08:23 -07:00
Bryan Ashby 2d9cd39ae8 Use config route path for temp files 2017-02-09 20:34:29 -07:00
Bryan Ashby a257a9ba4b * Fix up and improve oputil file-base stuff
* Specialize if user does not have upload ACS
2017-02-08 22:53:48 -07:00
Bryan Ashby 5549ff5512 * Help pages
* No results for criteria page
* noHistory can be passed to gotoMenu()
2017-02-07 22:15:34 -07:00
Bryan Ashby f0db0e3c94 * file.db: file_user_rating: Table for tracking average user rating of a file
* Default filter order to descending
* File rating support including in search/filter
* Default to passing submitted form data (if any) @ prevMenu()
* Fix issues with byte/size formatting for 0
* Allow action keys for prompts
* use MenuModule.pausePrompt() in various places
* Add quick search to file area
* Display dupes, if any @ upload
2017-02-07 20:20:10 -07:00
Bryan Ashby 5f929b3d63 comment 2017-02-07 20:14:56 -07:00
Bryan Ashby 92772eb1a9 * Added ability to serve static files from web server
* Web server can have custom error pages, e.g. 404.html
* "file_area" stuff -> "file_base"
* Fix some rare bugs in theme/art loading
* Adjust tab order dynamically for file upload details
2017-02-04 09:20:36 -07:00
Bryan Ashby ff64a7aed5 * SEXYZ: XModem & YModem
* Explicit sort avail to protocols
* MenuView.removeItem()
* Natural sort for more things
* Fix some issues with HorizontalMenuView redraw/update
* Sanatize non-blind upload filename (security)
* Validator on non-blind upload filename
2017-02-01 19:42:27 -07:00
Bryan Ashby 8261881e3e Initial support for non-blind aka non-batch uploads 2017-01-31 23:10:17 -07:00
Bryan Ashby 690d148ad5 * Move to uuid vs node-uuid
* Use uuid-parse for to/from string
2017-01-31 00:17:19 -07:00
Bryan Ashby 9c61b2b945 Use natural sort 2017-01-31 00:16:43 -07:00
Bryan Ashby 807ca9bded Fix some year est regex's, add yyyy-mm-dd 2017-01-31 00:16:28 -07:00
Bryan Ashby c7640de07e Add focusItemIndex property 2017-01-30 21:54:32 -07:00
Bryan Ashby 6f1015305b * Allow alternate matching group order for archive short/long desc
* max short/long desc file input byte size (ignore files larger than N)
* Add Arj support via 'arj'
2017-01-29 22:30:48 -07:00
Bryan Ashby 9525afddd3 * Created new npm module: temptmp: This replaces node-temp usage & solves global temp file cleanup issue with concept of temp "sessions" 2017-01-29 19:56:46 -07:00
Bryan Ashby e10d085cab Remove accidental typo in code 2017-01-29 19:56:34 -07:00
Bryan Ashby 8aa42342a2 Fix setText('')/clearText() issue with text views 2017-01-28 12:48:04 -07:00
Bryan Ashby 12d4c158c4 * ENiGMA now require Node.js 6.x LTS+
* Bump version to 0.0.4-alpha
* Update package dependencies
* Use modified node-buffers that does not use deprecated Array.get()
* Update lodash dependency to 4.x & convert to new methods/etc.
* Better 'noHistory' support for menu stack
* Fix bug in download queue init
* Misc code cleanup
2017-01-28 12:33:06 -07:00
Bryan Ashby 8889014f47 Update copyrights 2017-01-25 22:59:12 -07:00
Bryan Ashby 99ab60bf77 * Convert MenuModule to ES6 style class
* Convert modules that are MenuModule subclasses to ES6 style classes
* Convert mixins to ES6 style
* Various cleanup
2017-01-25 22:18:05 -07:00
Bryan Ashby 1c03c3021a * Temporary fix for MAJOR global temp cleanup bug: comment out node-temp .cleanup() methods
* Don't move temp uploads to area directory until user submit/completed
* New file util module
2017-01-23 23:32:40 -07:00
Bryan Ashby 99036592ae * Bump version to 0.0.2-alpha: File Base alpha here
* LHA/LZH archive support via external lha command
* Nearly complete upload processor
* Set default file base filter if none is set
* Additional MenuModule common method/helpers
* MLTEV property: tabSwitchesView
2017-01-22 21:30:49 -07:00
Bryan Ashby 8d51c7d47c * Additional helpers to MenuModule
* Gzip signature (.gz)
* Switch to sha-256 vs sha1 for internal file hashes
* Nearly complete callback / scan update support for scanFile()
* Fix data input issue after performing upload
* Support 'sz' recv (uploads)
2017-01-21 22:09:29 -07:00
Bryan Ashby fb176d3ab3 * Fix updating of existing file filter
* Update findFiles() to properly apply filters, sort order / direction, etc.
* Properly persist hash tags @ file entry persist
* Lots of improvements / additions to MCI for upload/download, etc. stats
* Persist processed entries @ upload (WIP, but close!)
2017-01-18 22:23:53 -07:00
Bryan Ashby e265e3cc97 * WIP on upload scan/processing
* WIP on user add/edit data to uploads
* Add write access (upload) to area ACS
* Add upload collision handling
* Add upload stats
2017-01-11 22:51:00 -07:00
Bryan Ashby 4c1c05e4da Fix bug with already logged in/connected check logic @ login 2017-01-11 22:48:04 -07:00
Bryan Ashby 1218fe65f9 Add new file scan year est regexp 2017-01-11 22:47:00 -07:00
Bryan Ashby a45142f2fd * Use more standard code paths & emit index events in ToggleMenuView
* Fix fetching areas & internal message attach area name
* Use proper config in new MenuModule methods
* More good progress on uploading
2017-01-01 21:53:04 -07:00
Bryan Ashby 0a92eec5e8 * WIP on upload support - protocols, modules, etc.
* Ability for KeyEntryView to only show specific/allowed keys
* Start moving/adding common methods to MenuModule vs boilerplate code
* menuFlags: String|StringArray: flags for menus, e.g. new 'noHistory' flag to prevent appending to history/stack
* New download stats/MCI codes
* Ability to redirect input stream to [protocols] temporairly
2016-12-31 14:50:29 -07:00
Bryan Ashby 6f3fe7c52d #103: FTN PKT files need to be uppercase 2016-12-06 20:51:48 -07:00
Bryan Ashby 6da7d557f9 * Improvements to ANSI parser
* Introduction of storage tags for file bases / areas
* Expiration for file web server items
* WIP work on clean ANSI (on hold for a bit while other file base stuff is worked on)
2016-12-06 18:58:56 -07:00
Bryan Ashby a7c0f2b7b0 * Add FileBaseFilters
* Add HTTP(S) file web server with temp URLs
* Get temp web d/l from file list
* Add File area filter editor (all file area stuff will be rename to file "base" later)
* Concept of "listening servers" vs "login servers"
* Ability to get servers by their package name
* New MCI: %FN: File Base active filter name
* Some ES6 updates
* VC resetInitialFocus() to set focus to explicit/detected initial focus field
* Limit what is dumped out when logging form data
2016-10-24 21:49:45 -06:00
Bryan Ashby 712cf512f0 * Add another year est regex
* Add queue file support
2016-10-14 21:57:02 -06:00
Bryan Ashby 1ef546d569 Download queue manager 2016-10-14 21:56:45 -06:00
Bryan Ashby 78607f8a48 * Add CRC32
* Fix stale entries loaded from previous item in file listing
2016-10-13 20:53:38 -06:00
Bryan Ashby 806e6539f4 * Lots of improvements (WIP) to file browsing 2016-10-12 22:07:22 -06:00
Bryan Ashby 67e2ff987f * getISOTimestampString()
* More file entry load/persist
2016-10-06 21:03:04 -06:00
Bryan Ashby 29947611f6 * New archives/archiver format - more flexible, more formats, etc.
* Add scanning inside archives ability, extract file_id.diz, etc.
* Initial year est (WIP) work
2016-10-05 23:22:59 -06:00
Bryan Ashby 61b0658743 Work on new archivers layout, short/long desc file discovery 2016-10-03 22:03:32 -06:00
Bryan Ashby 9593da5626 Additional work with archivers 2016-10-02 22:21:37 -06:00
Bryan Ashby ec716fdf2c * More file area utility methods/etc.
* Start adding oputil file-area --scan <areaTag> stuff
* New new ArchiveUtil.getInstance()
2016-10-02 21:40:37 -06:00
Bryan Ashby 35e7610670 Better code, more flexible ArchiveUtil 2016-10-02 21:39:29 -06:00
Bryan Ashby 0a98ce651f #101 set real names for message areas 2016-10-02 13:47:19 -06:00
Bryan Ashby c715bb7731 Allow tab to process as 'next' in preview mode 2016-10-02 13:46:12 -06:00
Bryan Ashby f8c4990646 Add 'pcansi' support for ZOC terminal 2016-10-01 13:30:02 -06:00
Bryan Ashby ac35d3506d File area updates WIP 2016-10-01 13:25:32 -06:00
Bryan Ashby c81b6789f4 Add 'pcansi' support for ZOC terminal 2016-10-01 13:22:34 -06:00
Bryan Ashby b9ef561058 Parse file meta values @ load (e.g. to number 2016-09-28 22:26:06 -06:00
Bryan Ashby 5a0b291a02 * Some WIP on file area releated stuff - various partially implemented pieces coming together
* Some changes to database.js: Triggers for FTS were not being created properly
* Misc fixes & improvements
2016-09-28 21:54:25 -06:00
Bryan Ashby 7da0abdc39 Work on EnigError and usage as experiment; This will go to many other areas of the code 2016-09-19 21:30:26 -06:00
Bryan Ashby 6a28b3ff35 Dump schedule info @ load 2016-09-19 21:29:46 -06:00
Bryan Ashby 9f22117e49 * Move login servers to core/servers/login 2016-09-19 21:28:50 -06:00
Bryan Ashby caa9137162 * Move login servers to core/servers/login
* A bit of minor changes related to upcoming file areas --- will likely branch before anything major
* Clean up database.js a bit
2016-09-19 21:28:21 -06:00
Bryan Ashby 34474bc610 minor cleanup 2016-09-14 21:08:59 -06:00
Bryan Ashby e90cf673e3 Updates to event scheduler 2016-09-13 21:44:35 -06:00
Bryan Ashby 70d1eb8d91 Update ssh2 3rd party module & ssh.js local server 2016-09-11 16:21:27 -06:00
Bryan Ashby ae02f35baa Fix NaN issue in string_format.js 2016-09-08 22:32:24 -06:00
Bryan Ashby d621fa9566 * renderStringLength(): Account for ESC[<N>C "forward" ESC seq
* Use string util renderStringLength() in word wrap
* Hopefully resolve all issues with renderSubstr()
* Fix width issue in message list
2016-09-06 23:20:11 -06:00
Bryan Ashby f7c21baa52 * FSE quote format is now configurable and random if there are 2:n available
* Remove old 3rd party string-format & replace with string_format.js version
* Some fix some bugs with string_format.js padding, width, and number format
2016-09-04 21:36:26 -06:00
Bryan Ashby d4d64f925d * Attempt to hide sensitive information by default (e.g. 'password' fields) in log
* New logger configuration - change logging: level -> logging: rotatingFile: level for current functionality
2016-09-04 17:46:28 -06:00
Bryan Ashby a729944af7 ANSI resources (comments) 2016-09-04 17:44:51 -06:00
Bryan Ashby 82533eae2d Don't re-add + log MCI cache if already cached. Also fix wording :) 2016-09-01 23:57:57 -06:00