* Make install script portable
* Modify rascsi-web service to accommodate portability
* Remove initialChecks call
* Introduce USER global variable
* Make the web app portable
* Make netatalk installation script portable
* Cleanup
* Cleanup
* Configure default image dir in rascsi.service
The DWORDs in `cdb *` are not raw packed data from the wire, they
are manually copied in a previous function. Trying to cast that
unpacked, aligned-on-byte-boundary data into the packed
scsi_cmd_read_6_t structure is not correct and does not put the
correct DWORDs into the proper fields.
Just do away with this struct and refer to the 2 cdb DWORDs (opcode
and length) manually.
All traffic from the DaynaPort will have a control value of 0xc0 or
0x80, so any commands that don't should be ignored.
This helps the Mac Plus which will try to READ(6) from the DaynaPort
device if it's attached at boot and then try to interpret the
ethernet packet as hard drive data and crash.
See issue akuker#419
* Use the effective filename when checking for duplicates
* Fixed check for asynchronous notifications
* Added additional filename check
* Applied fix also for attach
* Split up source into modules
* Add symlink to .pylintrc in the racsci-web dir
* Resolve pylint warnings
* Resolve pylint warnings
* Split out methods into separate modules
* Resolve pylint warnings
* Clean up docstrings
* Clean exit on errors
* Avoid unnecessary scrolling
* Fix bug where removable media wasn't updated
* Add signal handler, solution from https://stackoverflow.com/questions/1112343/how-do-i-capture-sigint-in-python
* Display a splash screen on startup
* Introduce stop splash
* Add parameters to enable the SIGTERM handling to take effect
* Change to a less busy stop splash
* Less busy start splash
* Iterate on splash bitmaps
* Iterate on splash bitmap
* Add check for libopenjp2-7-dev in the start script
* Iterate on splash bitmap
* Iterate on splash bitmap
* Read rotation from the 1st command line arg
* Configure screen rotation during installation
* Better argument validation + use human readable arguments
* Cleanup
* Show only the two last chars of type to save space
* Display rascsi version
* Show more relevant info on removable and bridge devices; Also cleanup
* MO is also removable
* Special handling for BR device
* OLED screen output scrolls vertically when overflowing
* Bring back data important to the user to a more prominent location
* Tweak labels
* More help text
* Tweak messages shown in UI to better align with current develop
* Added TERMINATE command
* Help text update
* Created ras_util namespace
* Created protobuf_util namespace
* Extracted RascsiImage from rascsi for better modularity
* Fixed wrong filenames (class name differed)
* No need for response handler to be a singleton
* Class renaming
* Renaming
* Moved code
* Moved code
* Image folder handling optimizations
* Updated device factory handling
* DeviceFactory constructor should be private (singleton)
* Renamed TERMINATE to SHUT_DOWN
* Fixed capacity calculation for INQUIRY data
* ATTACH and DETACH return the resulting device list for convenience
* Interface comment update
* Moved code, check fd
* Use new command when returning result for ATTACH/DETACH
* Updated interface comments
* Removed size validation for MOs
* rasctl -D detaches all devices
* Detach all devices on Ctrl-C (KILL signal)
* Added comment
* Also detach all devices on SIGTERM
* Updated logging
* Updated logging
* Updated logging
* Updated ID/LUN parsing
* Updated handling of max_id
* The -HD option sets type to SAHD
* Replaced is_sasi by device type
* Updated logging
* Logging update
* Improved LUN evaluation
* Check LUN against UnitMax
* Comment update
* LUN parsing update
* Logging update
* Logging update
* Updated ReportLuns
* Updated REPORT LUNS
* Cleanup
* Updated REPORT LUNS
* Updated Execute()
* Updated LUN handling
* Check for consecutive LUNs
* Added LUN check for remotely attached devices
* Remember LUN selected by IDENTIFY
* Evaluate LUN from IDENTIFY message
* Added comment
* Updated REPORT LUNS
* Initlize LUN
* Logging update
* Support 32 LUNs
* rasctl display update
* Updated LUN check for LUNSs > 7
* Simplified LUN validation
* Fixed wrong ID/LUN handling with values > 9
* Log level update
* Manpage update
* rascsi parser update
* Updated error handling
* Updated error handling
* Updated LUN setup validation
* Updated logging
* Improved validation of consecutive LUNs
* Renaming
* Detach all LUNs equal to or higher than the one specified
* Add support for LUN in the device list
* Add ability to show device info for LUNs
* Make it possible to detach and eject LUNs
* Show full path to prop file
* Show only LUN columns when non-0 LUNs present
* Support for attaching LUNs
* Add helptext
* Fix handling of removable media
* Retain the previous behavior of recommending the next unoccupied id
* SCSI ID validation no longer needed due to changed logic
* Make use of recommended id everywhere
* Docstring
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Removed ISO CD-ROM block size check
* Removed CD size checks
* Replicate read-only status when copying an image file
* Cleanup
* Copied images can optionally be created read-only
* Check path of default image folder
* Comment update
* Updated error message
* Fix minor errors in easyinstall.sh and start.sh
* Make easyinstall directory portable
* Remove directory check from easyinstall.sh
* Revert to requiring the checkout dir to be /home/pi/RASCSI
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Added VERSION_INFO
* Added LOG_LEVEL_INFO
* Added RESERVED_IDS_INFO
* Renaming
* Renaming
* Split rasctl
* Code cleanup
* Removed unused method
* Include cleanup
* More cleanup
* More cleanup
* Simplified sending commands
* Fully set up command
* Further simplified sending commands
* Moved code
* Include cleanup
* Reject reserving an ID that is in use
* Update rascsi-web for the changes in protobuf interface
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Implement pad_image method
* Reintroduce list_files method, rename the other to list_images
* Add iso file padding UI
* HDD image UI
* Tweak label
* Store padded image in the right dir
* Show only images that need padding
* Support padding MO images
* Cleanup
* UI flow to show drive properites (#270)
* Adjust MO padding to align with current develop
* Add docstrings
* Fix image padding code
* Tweak labels
* Implement pad_image method
* Reintroduce list_files method, rename the other to list_images
* Add iso file padding UI
* HDD image UI
* Tweak label
* Store padded image in the right dir
* Show only images that need padding
* Support padding MO images
* Cleanup
* UI flow to show drive properites (#270)
* Adjust MO padding to align with current develop
* Add docstrings
* Remove image padding code
* Cleanup
* Cleanup
* Fixed compile time issues
* Fix compile time error in sasidump.cpp
* Fix comment in Makefile
* Fix compile time error in sasidump.cpp
* Restore rasdump and sasidump to BIN_ALL
* Fix typo
* Install rasdump and sasidump
* manpage for rasdump
* Create manpage for sasidump
Co-authored-by: Uwe Seimet <Uwe.Seimet@seimet.de>
* Fixed compile time issues
* Fix compile time error in sasidump.cpp
* Fix comment in Makefile
* Fix compile time error in sasidump.cpp
* Restore rasdump and sasidump to BIN_ALL
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Translate code comments
* Remove documentation that is contained in wiki
* Translate code comments
* Remove documentation that is contained in wiki
* Translate configuration file
* Remove documentation that is covered by wiki
* Translate code comments
* Translate strings and code comments
* Cleanup
* Fixed issue with attaching protected devices
* Fixed same issue when inserting a file
* Added IMAGE_FILE_INFO command
* rasctl output update
* Added file mode and type
* Datat type update
* Reverted change
* Update web ui for protobuf changes
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Added MAPPING_INFO command, returning the mapping of extensions to types
* Updated help message
* Set explicit vendor/product/revision for .hda extension
* Added leading blanks to vendor and product for .hda
* Product string update
* Fixed typo in help string
* Manpage update
* Spoof hda as a Quantum Fireball
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
* Issue 232 -- will not generate PC98 emulator image formats
* Introducing dropdown for selecting device type which defaults to a recommendation based on file ending, while removing the quiet logic to autodetect type on the frond end side
* Added device type to PbImageFile
* Comment update
* Code cleanup
* More code cleanup
* Extraced methods
* Extracted methods
* Renaming
* Moved code
* Visility update
* Updated error handling
* Removed duplicate error handling
* Removed duplicate code
* Code cleanup
* Moved code
* Moved code
* Leverage new device type field for files in protobuf interface
* Tweak label
* Tweak template
* Fix bug
* Add types legend
* Add tip about renaming image files
Co-authored-by: Uwe Seimet <Uwe.Seimet@seimet.de>
* Handle a case where reserved ids on the Web UI side are not actually reserved on the backend side
* Better error handling when no device is found in list_devices
* Better warning message
* Tag message as error
* Fix device_info
* Get reserved ids from the server instead of storing a client side state, which caused front and backend to get out of sync in certain cases.
* Initial implementation of sidecar configuration reading and writing
* Use bytes for drive image creation internally
* Add named drive section
* Move header to base.html
* Create the disk profile list page
* Make lists of HDDs, CDRs, and Removable drives
* Implement disk image + sidecar creation
* Implement CD-ROM device sidecar creation method
* Add more device configurations
* Add disclaimer
* Hide URL if none is provided
* Make the web ui use the new protobuf parameter maps
* Make daynaport attaching UI more flexible
* Use the protobuf interface to create image files
* Use new create image method for the sidecar flow as well
* Move file deletion logic to protobuf commands; Refactor saving/loading config files
* Update disk image creation
* Fix error
* Disk images the script makes are in Mac format
* Add blurb about the risks with using Lido driver (issue#40) to the easyinstall script, while pushing less for using that feature.
* Make shutdown and reboot async operations
* More informative footer contents
* Wordsmith the Mac drive options
* Link to relevant section in the wiki
* Added GET_IMAGE_FILES
* Added default folder to GET_IMAGE_FILES
* Renaming
* Updated setting image folder
* Lists available net interfaces as a drop down when attaching daynaport
* Macs should use the hds image file ending
* Fixed default image folder handling
* Refer to device properties, instead of sidecars
* Added NETWORK_INTERFACES_INFO
* Filter "lo"
* Use PF_INET in favor of PF_INET6
* Added network interfaces to server info
* Drive property file ending defined in one place; Add handling of common urllib and file system exceptions.
* Use protobuf interface to get network interface info
* Use protobuf interface for list_files
* Repeated field cleanup
* Renaming
* Added DEVICE_TYPES_INFO
* Comment update
* Added -y option to rasctl
* Add the remaining recommended drive profiles provided by rpajarola
* Fix typos
* Add warnings to CD-ROM descriptions
* Add more recommended Sun drives
* Add capacity to name
* Move footer into base.html
* Handle removable drive insertion in the attach method (easy to do with protobuf)
* Limit which arguments to pass to an image injection command
* Cleanup
* Sort image and config files alphabetically
* Make compatible with updated protobuf interface
* Sort drives alphabetically by name
* Decriptive text for CD-ROM section
* Better description
* Hyperlink to disks page instead of button
Co-authored-by: Uwe Seimet <Uwe.Seimet@seimet.de>
* Added GET_IMAGE_FILES
* Added default folder to GET_IMAGE_FILES
* Renaming
* Updated setting image folder
* Fixed default image folder handling
* Added NETWORK_INTERFACES_INFO
* Filter "lo"
* Use PF_INET in favor of PF_INET6
* Added network interfaces to server info
* Filter rascsi_bridge
* Use list of available network interfaces as default parameters