Uwe Seimet
8bd06ea5cd
Improve how commands are internally executed ( #1247 )
...
* Improve how commands are internally executed
* Use const CommandContext for execution
* Update error handling
* Fix SonarQube issues
* Remove duplicate code
* Use mutex instead of atomic_bool
* Add hasher
* Add param_map
* Do not log unknown operations as an error for backward/foward compatibility
2023-10-30 13:57:46 +01:00
Uwe Seimet
b7cb23e391
Add statistics and make scsictl accept generic key/value parameters (#1237/#1238) ( #1262 )
...
* Add statistics and make scsictl accept generic key/value parameters
2023-10-30 13:32:45 +01:00
Uwe Seimet
8f45e4f491
Add options to only run INQUIRY and to scan the bus to scsidump ( #1092 ) ( #1261 )
...
* Add options to only run INQUIRY and to scan the bus to scsidump
2023-10-30 11:34:07 +01:00
Uwe Seimet
c78ba80088
Move default device parameters from DeviceFactory to the respective devices #1257 ( #1259 )
...
* Move default parameter handling
2023-10-30 11:24:18 +01:00
Uwe Seimet
d6116bf5c2
Remove unused duplicate code dealing with MODE SELECT ( #1268 ) ( #1269 )
...
* Remove unused code
2023-10-29 13:01:12 +01:00
Uwe Seimet
43088ab3bc
Remove non-working Banana Pi code ( #1252 )
...
* Remove non-working Banana Pi code
* Remove SonarQube suppressions which can be resolved by a code update
* Update device detection
2023-10-22 17:29:26 +02:00
Uwe Seimet
2acb742043
Fix output formatting ( #1254 )
2023-10-22 16:19:40 +02:00
Uwe Seimet
02d18b3359
Do not write data when executing VERIFY10/VERIFY16 ( #1250 )
2023-10-22 16:18:33 +02:00
Uwe Seimet
aa927cb504
Move top-level .cpp files into their respective folders ( #1249 )
...
* Update Makefile, move top-level .cpp files
* Move top-level .cpp files into their respective folders
2023-10-16 18:27:18 +02:00
Uwe Seimet
41bdcd4aed
Issues 1179 and 1182 ( #1232 )
...
* Update logging
* Remove duplicate code
* Update unit tests
* Clean up includes
* Merge ProtobufSerializer into protobuf_util namespace
* Precompile regex
* Add const
* Add Split() convenience method, update log level/ID parsing
* Move log.h to legacy folder
* Elimininate gotos
* Fixes for gcc 13
* Update compiler flags
* Update default folder handling
* Use references instead of pointers
* Move code for better encapsulation
* Move code
* Remove unused method argument
* Move device logger
* Remove redundant to_string
* Rename for consistency
* Update handling of protobuf pointers
* Simplify protobuf usage
* Memory handling update
* Add hasher
2023-10-15 08:38:15 +02:00
Tony Kuker
68e0c29d83
Disable the Timer Test #1227 ( #1228 )
...
The Timer test isn't reliable on all variants of the Raspberry Pi. This will temporarily comment it out.
When the RPi5 support is being added, this test should be made optional and only triggered when a CLI option is present.
2023-10-09 20:10:46 -05:00
Uwe Seimet
bd9b776c47
Fix block size evaluation ( #1212 ) ( #1213 )
...
* Fix block size evaluation (#1212 )
2023-10-01 23:50:30 +02:00
Daniel Markstedt
ee658c359d
Clarify docs and error strings for scsimon ( #1175 )
...
* Better usage hints in scsimon man page
* In error message, clarify that piscsi needs to be shut down
2023-06-24 13:20:15 -07:00
Tony Kuker
9c5296a65b
Update version for next development version
2023-04-22 19:46:26 -05:00
Tony Kuker
ba1d867ad5
Update revision number for release
2023-04-22 19:42:55 -05:00
Daniel Markstedt
3cceb515cd
For HD Product name, use GiB unit from 10,000 Mib and higher. ( #1147 )
...
* For HD Product name, use GiB unit from 10,000 Mib and higher.
* Update unit test
2023-04-20 08:38:31 -05:00
Uwe Seimet
07e953fa77
Fixed a potential issue with the unit test order (reserved file cleanup was missing) ( #1137 )
...
* Fixed a potential issue with the unit test order
* Updated error handling
2023-03-28 10:21:36 +02:00
Uwe Seimet
2092b35c89
Added optional LDFLAGS in order to control linking, e.g. for faster linking ( #1128 )
2023-03-24 08:54:05 +01:00
Uwe Seimet
ef6cd97656
Improve OpenVMS/VAX compatibility (issue #1117 ) ( #1123 )
...
* Set TB, PER and DTE bits in read/write error recovery page
* Fixed typo
* Added unit test
* Comment update
2023-03-15 22:38:44 +01:00
nsafran1217
bf97201580
Add support for SCSI-1 CD Drives, .is1 extension ( #1109 )
...
* Add SCSI-1 option for scsicd with file extension is1
Update tests
Update documentation with is1 file extension
* Fix tests
2023-02-26 20:52:19 -06:00
Tony Kuker
76e5b812d7
Update version for next development version
2023-02-11 12:34:43 -06:00
Tony Kuker
caf004b1ae
Update revision number for release
2023-02-11 12:32:56 -06:00
Daniel Markstedt
071fdd2dd5
Move os_integration to root level ( #1085 )
...
* Move the os_integration dir from cpp/ to root level
Co-authored-by: nucleogenic <nr@nucleogenic.com>
2023-01-28 15:03:41 -08:00
Uwe Seimet
b6941c9e81
Do not abort but only warn on unexpected CD-ROM image size ( #1084 )
...
* Do not abort but only warn on unexpected CD-ROM image size
* Unit test update
* Updated exception handling
* Cleanup
* Fixed typo
2023-01-28 17:28:21 +01:00
Uwe Seimet
649655ba40
Fixed shutdown issues ( #1067 )
...
* Fixed wrong shutdown mode string (must be 'rascsi', not 'piscsi')
* Fixed spurious segfaults in termination handler
2023-01-14 19:26:49 +01:00
Uwe Seimet
78206ed670
Ignore dummy network interfaces when setting up interface list ( #1066 )
2023-01-14 19:26:33 +01:00
Uwe Seimet
ae4b9a70ba
Fixed unit tests and version formatting ( #1062 )
2023-01-07 09:50:37 +01:00
Tony Kuker
bf2b210c4c
update revision number for release
2022-12-23 15:11:24 -06:00
akuker
754347f833
Chinese translation updates ( #1054 )
...
* Updated translations from Li Xing
Co-authored-by: Tony Kuker <akuker@gmail.com>
Co-authored-by: Daniel Markstedt <markstedt@gmail.com>
2022-12-23 15:04:03 -06:00
Daniel Markstedt
63ee7df782
Add zh locale ( #1055 )
2022-12-23 13:37:17 -06:00
akuker
75b42d74eb
Chinese (zh) translation ( #1035 )
...
Co-authored-by: Tony Kuker <akuker@gmail.com>
Co-authored-by: iml6 <72815764+iml6@users.noreply.github.com>
2022-12-18 21:38:30 -06:00
akuker
5b3626dcf5
SCSI Dump Usability Enhancements & Cleanup ( #1026 )
...
Co-authored-by: Tony Kuker <akuker@gmail.com>
2022-12-09 09:50:45 -06:00
akuker
09ba19a24f
Optimize setting the data gpio bits ( #1022 )
...
Co-authored-by: Tony Kuker <akuker@gmail.com>
2022-12-07 11:09:30 -06:00
Daniel Markstedt
52c2aa474f
Rebrand project to PiSCSI ( #1016 )
...
* Rebrand project to PiSCSI
- rascsi ->piscsi
- rasctl -> scsictl
- rasdump -> scsidump
- ras* -> piscsi* (rasutil -> piscsi_util, etc.)
* Refined the formatting and wording of the app startup banner
* Kept some references to rascsi and rasctl where backwards compatibility is concerned
* Point to the new github repo URL
Co-authored-by: nucleogenic <nr@nucleogenic.com>
Co-authored-by: Uwe Seimet <Uwe.Seimet@seimet.de>
2022-12-05 09:58:23 -08:00
akuker
12068cafb8
Reliability fix for Banana Pi M2+ ( #1014 ) Also incremented version number
...
Co-authored-by: Tony Kuker <akuker@gmail.com>
2022-12-04 11:55:38 -06:00
akuker
eb71c31cf1
Initial merge of (incomplete) Banana Pi updates ( #993 )
2022-12-02 22:20:27 -06:00
Uwe Seimet
ae66bbdc26
Dry-run shall not change any state (21.10.01 regression) ( #998 )
2022-11-21 09:30:10 +01:00
Uwe Seimet
8c5dcd2f49
Fix bogus "Invalid magic" message when socket connection is established ( #988 )
2022-11-16 10:01:51 +01:00
Uwe Seimet
454c61ac0d
Added rascsi filter to limit logging to a particular device ( #978 )
...
* Support for ID and LUN parameter for the -L option in rascsi
* Added DeviceLogger class
* Removed dupiicate code
* Fixed SonarQube issues
* Added unit tests, improved code sharing
* Fixed regression (#979 )
2022-11-11 21:08:48 +01:00
Uwe Seimet
4fa513090a
Improve code sharing and dependencies, address code duplication ( #976 )
2022-11-10 07:44:06 +01:00
Uwe Seimet
1c0179e7e3
rasdump and monitor updates, made rasdump work, improved bus abstraction ( #973 )
...
* Moved rasdump and monitor to sub-folders, cleaned up code
* Fixes rasdump issues and added additional features like device type check, LUN support and configurable buffer size
2022-11-09 08:40:26 +01:00
Uwe Seimet
1cae530d42
Added command byte count to SCSI command mapping ( #966 )
...
* Extended mapping table with command byte count
* Terminate early if command is unknown
2022-11-06 19:44:44 +01:00
Uwe Seimet
c98c52ffb8
Cleaned up dependencies on controller manager ( #964 )
...
* Cleaned up dependencies on controller manager
* Removed global fields
* Simplified setting up RascsiResponse and RascsiExecutor
* Got rid of remaining raw pointers
* Use references instead of pointers
* Improved encapsulation
2022-11-04 08:22:32 +01:00
Uwe Seimet
83d1595a35
Improved testability of rascsi/rasctl/scsimon/rasdump, eliminated global fields ( #960 )
...
* Moved rascsi/rasctl/scsimon/rasdump.cpp to classes (for better testability)
* Moved bus.* to hal folder
* Removed some global variables
* Fixed code redundancies
2022-11-02 23:41:45 +01:00
Uwe Seimet
c41373d9bd
Use lambdas for dispatcher, code cleanup, test updates ( #958 )
...
* Using lambdas instead of member function pointers simplifies the command dispatching and reduces the code volume
* Removed duplicate error handling
* Fix for issue #956
* Unit test updates
* Resolved SonarQube issues
2022-11-02 15:36:19 +01:00
akuker
31dd063611
Create devices after bus creation ( #954 )
2022-11-02 08:58:59 -05:00
Uwe Seimet
621cc7d5a2
Code cleanup, especially casts, lambdas, data types, encapsulation ( #952 )
...
* Unit test updates
* Lambda syntax cleanup
* Use new-style casts
* Use std::none_of when saving the cache
* Use to_integer instead of casts
* Use accessors for getting CDB data
* Made ctrl_t private
* Improved encapsulation
* Replaced pointers by references
* Removed all remaining occurrences of DWORD and BYTE, making os.h obsolete
2022-11-02 07:36:25 +01:00
Uwe Seimet
9a4f433baf
Validate SCSI error codes (sense key, asc) in unit tests (issue #895 ) ( #950 )
2022-10-29 18:16:03 +02:00
Uwe Seimet
f84a13b3e2
Prevent copying of files in use ( #951 )
2022-10-29 18:15:30 +02:00
Uwe Seimet
6e35577368
Removed wrong inheritance of SCDP and SCBR from Disk class ( #948 )
...
* Fixed TODOs, updated SCBR and SCDP
* Introduced ByteWriter interface
* Use accessors instead of directly accessing length/block fields
2022-10-29 18:10:00 +02:00
Uwe Seimet
c1f63c6745
Added missing command mapping for DEVICES_INFO ( #947 )
2022-10-27 16:31:32 +02:00
Uwe Seimet
2cecf4b35c
Image file deletion: Fixed error handling ( #944 )
...
* Fixed ID/LUN check when deleting image
* Updated error handling when deleting image file
* Prevent renaming of image file in use
2022-10-26 17:43:11 +02:00
Daniel Markstedt
08194af424
Move C++ code into cpp/ dir ( #941 )
...
- Moved C++ code to cpp/ from src/raspberrypi
- Related updates to Makefile, easyinstall.sh, and the github build rules
- Removed the native X68k C code in src/x68k from the repo
2022-10-25 12:59:30 -07:00