188 Commits

Author SHA1 Message Date
uweseimet
f3978e6bd2
Removed minimum image size check. There is no such limit for SCSI drives. (#130) [Issue #72]
This fixes issue #72
2021-07-15 19:51:34 -05:00
uweseimet
fef21a6cf5
Support for providing sense data for REQUEST SENSE (#120)
* Error() supports passing Sense Key and ASC, REQUEST SENSE returns these data

* Synchronized error handlign with sasidev_ctrl

* Added warning for missing sense key

* Logging and comment update

* Updated invalid LUN handling

* Updated REQUEST SENSE

* Revert "Updated REQUEST SENSE"

This reverts commit 61a1ecbca75badf5a7061bbcc288634b071a34f1.

* Report MEDIUM NOT PRESENT if capacity cannot be determined

* Updated handling of non-existing LUNs. This change results issue #124.

* Log a warning if drive capacity cannot be determined

* Added enums for sense keys and ASCs

* Updated Error() signature to use enums

* Fixed compiler warnings

* Merge with develop branch
2021-07-15 19:49:54 -05:00
uweseimet
0f5baa8839
Cplusplus level update to c++-17 (#127)
* Raised C++ level to c++-20

* Raspberry PI OS compiler does not yet support c++-20
2021-07-09 11:38:48 -05:00
uweseimet
910d3af525
Changed scsi_command enum base type so that the dispatcher can use enum again (#128) 2021-07-09 11:37:46 -05:00
uweseimet
6d1f661ab8
Removed useless assertions (#125)
* Removed useless assertions

* Finalized removal

* Pointer was passed instead of integer value

* Fixed data type issue on 64 bit compile platforms

* Added missing virtual destructor (gcc warning)
2021-07-08 11:40:31 -05:00
uweseimet
da3629510d
Removed meaningless assertions, minor code locality cleanup (#122)
* Removed meaningless assertions, locality of code cleanup

* More assertion and code locality cleanup

* Added TODO

* More assertion and code locality cleanup

* Added missing initializations in constructors

* Added FIXMEs

* Revert "Added FIXMEs"

This reverts commit 2c83626862b0ef5e38f4fb01cd2817a366767828.
2021-07-07 16:46:45 -05:00
uweseimet
da70ce7055
Option for setting the log level at rascsi startup, improved device file support (#121)
* Added option for setting log level at rascsi startup

* Report an error if only an extension without a basename is provided

* Improved device file support
2021-07-07 16:34:55 -05:00
uweseimet
9898cb1a13
SCSI command dispatcher update, reduction of circular dependencies (#117)
* Unified command handling of SCSI command dispatcher

* Added missing cast

* Updated casts

* Comment update

* Moved enums to base class to reduce circular dependencies

* Added EXTRA_FLAGS to Makefile and fixed typo (#118)

* scsidev_ctrl inherited from sasidev without any need

* Reverted last change ...

* Removed unused include

* Added missing field initialization in constructor

* Formatting update

* Fixed command names used for logging

* Replaced SCSI command dispatch switch

* Source code formatting update

* Renaming

* Renaming

* Renaming

* Renaming

* For SCSI (scsidev_ctrl) the scsi_command enum is not relevant anymore

* Always log status code in status phase

* Log additional sense code (ASC)
2021-07-04 19:50:24 -05:00
uweseimet
e2409098dd
Added EXTRA_FLAGS to Makefile and fixed typo (#118) 2021-06-26 22:26:04 -05:00
uweseimet
b7011efd95
Removed unused code, added some translations (#114)
* Removed unused code, added some translations

* Fixed typo

* Added translation
2021-06-23 12:26:12 -05:00
uweseimet
86aeeb0a31
Segmentation fault fix for missing unit 0 (#115)
* Removed unused code, added some translations

* Fixed segmentation fault when there is no unit 0

* Removed unrelated changes
2021-06-23 12:16:27 -05:00
uweseimet
51210a7002
Use exception for unsupported LUN handling, reduces duplicate code (#111)
* Use exception for unsupported LUN handling in order to reduce duplicate code

* Code improvements based on review

* Added header
2021-06-22 19:05:47 -05:00
uweseimet
7e45d11215
Fixes for gcc 10.3.0 (#112)
* Fixes for gcc 10.3.0

* Fixes for gcc 10.3.0

* Removed obsolete declaration

* Changes based on review
2021-06-22 19:03:53 -05:00
PhrAx
ae07648551 fixing typo 2021-05-29 23:50:00 -07:00
PhrAx
e42adab4f9 improving stdout for logging by disabling buffering 2021-05-29 23:46:08 -07:00
akuker
dbf78b772b
Merge pull request #96 from akuker/daynaport3
Add DaynaPort Functionality into the Development branch
2021-05-26 10:50:13 -05:00
Tony Kuker
fa80c7fb9a Updates for pull request comments 2021-05-23 14:44:47 -05:00
Tony Kuker
4a72d2ecea Updates for pull request comments 2021-05-23 14:44:34 -05:00
akuker
642deb8b84 updated version number 2021-05-02 14:35:42 -05:00
Tony Kuker
61c7644250 Merge branch 'develop' into daynaport3 2021-04-05 16:11:54 -05:00
Tony Kuker
a05c7f34d4 Added short delay after the DaynaPort reports its metadeta during a READ operation 2021-04-05 14:17:05 -05:00
Tony Kuker
e68f6f09e2 Fix compiler warnings for release builds 2021-04-05 12:14:51 -05:00
Quentin Smith
da8880576a Remove no-longer-used os.cpp 2021-04-04 23:13:52 +01:00
Quentin Smith
2579437b57 Allow generating pcap files of Daynaport traffic
If rasctl is given a file to "attach" to a daynaport interface, rascsi
will generate a pcap file at that path containing all sent/received
packets.
2021-04-04 23:13:51 +01:00
Quentin Smith
5ef97b99db Use native ioctls to create/join bridge interface 2021-04-04 23:13:36 +01:00
akuker
6333d3aad5
Merge pull request #85 from akuker/phrax0-patch-1
Update controllers
2021-03-21 19:57:31 -05:00
Quentin Smith
5f7a0a0d86 Fix CD support on DaynaPort branch
The CD device relies on SASIDEV.buf being at least 0x800 long.
2021-03-18 03:36:08 +00:00
Quentin Smith
cdf2b6b39f Initialize selevreq
selevreq was previously being passed to ioctl without being fully initialized.
2021-03-18 03:35:13 +00:00
PhrAx
6d79023a5c
FIxing code and comment alignment
going through the various files and putting comments on one line for easier reading.
2021-03-07 17:29:30 -08:00
PhrAx
1fb0269645
Update controllers
Includes comment alignment, and added RESERVE(6), RESERVE(10), RELEASE(6) and RELEASE(10) for SCSI, along with RESERVE(16) and RELEASE(17) for SASI.
2021-03-07 17:11:17 -08:00
Tony Kuker
d794f046dc #27 Files to configure the network bridge 2021-02-26 17:36:59 -06:00
Tony Kuker
9070903772 Temporarily remove MAC address filtering. It seems to cause issues 2021-02-26 17:26:24 -06:00
Tony Kuker
994e90abac Added error message if there is an error while reading the tap #27 2021-02-26 11:40:16 -06:00
Tony Kuker
33f09490be Remove magic number that was left over from debugging #27 2021-02-26 11:39:37 -06:00
Tony Kuker
0d25785f03 moved bridge setup into ctapdriver 2021-02-07 16:46:59 -06:00
Tony Kuker
99538d8225 Merged latest develop branch with the daynaport functionality 2021-02-07 13:00:48 -06:00
akuker
852f4f11fd
Revert "Add Daynaport SCSI/Link Functionality" (#78) 2021-02-02 19:55:38 -06:00
Tony Kuker
3bf6c3ecd0 Updated to use a multi-thread safe logger 2021-01-31 20:11:33 -06:00
akuker
50bb0664dd
Update scsi_daynaport.cpp
Missing semicolon when building non-debug build.
2021-01-30 16:02:21 -06:00
Tony Kuker
3a7674d47c Cleanup extraneous debug printouts 2021-01-30 14:12:29 -06:00
Tony Kuker
144abd4524 Cleanup extraneous debug printouts 2021-01-30 14:08:09 -06:00
Tony Kuker
f1f60f281f Updated ctapdriver to use the forked system call 2021-01-30 14:07:40 -06:00
Tony Kuker
04a2f46f51 added additional event loggin 2021-01-30 14:07:05 -06:00
Tony Kuker
bc561d65dd Changed system call to use fork/wait. Moved some disk functions out of the header 2021-01-30 12:36:18 -06:00
Tony Kuker
788b2a3b46 Added DaynaPort SCSI/Link emulation functionality 2021-01-27 15:16:52 -06:00
akuker
bac4f4a80b Change reported version back to development build 2021-01-25 13:27:21 -06:00
akuker
350010462c
Scsimon improvements (#74)
* Updated scsimon to save data on a nano-second time scale, instead of micro-second

* Cleanup error messages and data types

Co-authored-by: Tony Kuker <akuker@gmail.com>
2021-01-25 10:07:49 -06:00
akuker
96673a44b0
Updated to match new versioning structure (#73)
* Updated to match new versioning structure

* fix version number

Co-authored-by: Tony Kuker <akuker@gmail.com>
2021-01-25 10:07:30 -06:00
akuker
3536e8aa02
Added -DNDEBUG to disable the real ASSERT macro in production code (#67)
Co-authored-by: Tony Kuker <akuker@gmail.com>
2020-12-28 18:53:00 -06:00
Tony Kuker
4cd07f63ee Additional translation from Japanese to English 2020-12-27 20:13:21 -06:00