Commit Graph

239 Commits

Author SHA1 Message Date
Uwe Seimet
126592d411 Fixed buffer overflow, cfilesystem.cpp:1185 assumes size of 11 bytes 2021-07-19 12:22:31 +02:00
Uwe Seimet
d275589ca1 Display name of (remote) host in error message 2021-07-19 12:02:44 +02:00
Uwe Seimet
43744cb372 Added new option to usage info, rascsi: use -s instead of -l for consistency 2021-07-19 12:00:17 +02:00
Uwe Seimet
728fa53dd4 Updated help message 2021-07-19 11:03:59 +02:00
Uwe Seimet
4c93c08ed9 Merge remote-tracking branch 'upstream/develop' into remote_host 2021-07-19 10:48:48 +02:00
Uwe Seimet
bd9a18d9ec Data type update 2021-07-19 10:40:59 +02:00
Uwe Seimet
f29626e58f Fixed data types 2021-07-19 10:40:26 +02:00
Uwe Seimet
d85af02c50 Comment update 2021-07-19 10:24:10 +02:00
Uwe Seimet
cca438d993 Removed CR/LF 2021-07-19 10:14:26 +02:00
Uwe Seimet
297e6e9259 Use fd instead of fp 2021-07-19 10:08:15 +02:00
Uwe Seimet
17f5a46902 Updated error handling 2021-07-19 09:53:19 +02:00
Uwe Seimet
6150b6391d Re-added CR/LF 2021-07-19 09:16:59 +02:00
Uwe Seimet
7358bec318 Updated help message 2021-07-19 09:06:21 +02:00
Uwe Seimet
b5b2a15503 Resolved merge conflicts 2021-07-19 08:59:41 +02:00
Uwe Seimet
3b02172513 Squashed commit of the following:
commit 6698b8b90a
Author: akuker <34318535+akuker@users.noreply.github.com>
Date:   Mon Jul 19 01:19:41 2021 -0500

    Remove extraneous carriage return (#135)

    Co-authored-by: Tony Kuker <akuker@gmail.com>

commit af6e311e6e
Author: uweseimet <48174652+uweseimet@users.noreply.github.com>
Date:   Mon Jul 19 00:15:13 2021 +0200

    protobuf-based rasctl/rascsi command interface (#129)

    * Initial protobuf definition

    * protobuf result message draft

    * Merge with develop branch

    * Makefile generates protobuf-based source files

    * Interface update

    * Fixed typo

    * Fixed typo

    * Updated returning status

    * Serialize return data

    * Use correct descriptor

    * Made interface fields required

    * Deserialize result

    * Serialization update

    * Updated serialization

    * Serialization update

    * Updated deserialization

    * status handling update

    * Evaluate status

    * Revert "Evaluate status"

    This reverts commit 3d8f2c3252.

    * Completed sense_key enum

    * Renaming

    * Added protobuf Command

    * Updated command evaluation

    * Interface update

    * Interface update

    * Added DeviceType enum

    * Improved type-safety

    * Fixed typo

    * Type-safety update

    * Fixed typo

    * Error handling update

    * Updated list handling

    * Error handling update

    * Use more C++ strings

    * protobuf enums can provide their names

    * Fixed listing devices

    * Updated logging

    * Enum usage cleanup

    * More enum cleanup

    * Fixed command check

    * Updated type check

    * Updated enums

    * Removed unused variable

    * Removed goto, added exception

    * Socket handling cleanup

    * Code locality cleanup

    * Added helper method

    * Extracted code

    * Updated socket/file handling

    * Use C++ I/O

    * Use tolower()

    * Renaming

    * Simplified has_suffix

    * Fixed typo

    * Use spdlog namespace

    * Simplified formatting (endl) of error messages

    * Added -s option for changing the runtime log level to rasctl

    * Renaming

    * Renaming

    * Updated error reporting

    * Fixed log string formatting

    * String conversion cleanup

    * Fixed typo

    * Log mmap error (happens on 64 bit)

    * Improved proto3 compatibility, updated error handling

    * CHanges based on review

    * Fixed comment

    * Comment update

    * Updated ListDevice to not directly write to the stream

    * Use size_t

    * Renaming

    * Buffering update

    * MapController should not use fp

    * Use fd, not fp

    * rasctl has to display *all* results

    * rasctl has to display *all* results

    * Error handling update

    * Updated to proto3 protocol

    * Optimization by using protobuf-lite

    * RaspBian outdated protoc does not support _Name

    * Added protobuf-compiler to easyinstall.sh

    Co-authored-by: akuker <34318535+akuker@users.noreply.github.com>
2021-07-19 08:41:16 +02:00
akuker
6698b8b90a
Remove extraneous carriage return (#135)
Co-authored-by: Tony Kuker <akuker@gmail.com>
2021-07-19 08:19:41 +02:00
uweseimet
af6e311e6e
protobuf-based rasctl/rascsi command interface (#129)
* Initial protobuf definition

* protobuf result message draft

* Merge with develop branch

* Makefile generates protobuf-based source files

* Interface update

* Fixed typo

* Fixed typo

* Updated returning status

* Serialize return data

* Use correct descriptor

* Made interface fields required

* Deserialize result

* Serialization update

* Updated serialization

* Serialization update

* Updated deserialization

* status handling update

* Evaluate status

* Revert "Evaluate status"

This reverts commit 3d8f2c3252.

* Completed sense_key enum

* Renaming

* Added protobuf Command

* Updated command evaluation

* Interface update

* Interface update

* Added DeviceType enum

* Improved type-safety

* Fixed typo

* Type-safety update

* Fixed typo

* Error handling update

* Updated list handling

* Error handling update

* Use more C++ strings

* protobuf enums can provide their names

* Fixed listing devices

* Updated logging

* Enum usage cleanup

* More enum cleanup

* Fixed command check

* Updated type check

* Updated enums

* Removed unused variable

* Removed goto, added exception

* Socket handling cleanup

* Code locality cleanup

* Added helper method

* Extracted code

* Updated socket/file handling

* Use C++ I/O

* Use tolower()

* Renaming

* Simplified has_suffix

* Fixed typo

* Use spdlog namespace

* Simplified formatting (endl) of error messages

* Added -s option for changing the runtime log level to rasctl

* Renaming

* Renaming

* Updated error reporting

* Fixed log string formatting

* String conversion cleanup

* Fixed typo

* Log mmap error (happens on 64 bit)

* Improved proto3 compatibility, updated error handling

* CHanges based on review

* Fixed comment

* Comment update

* Updated ListDevice to not directly write to the stream

* Use size_t

* Renaming

* Buffering update

* MapController should not use fp

* Use fd, not fp

* rasctl has to display *all* results

* rasctl has to display *all* results

* Error handling update

* Updated to proto3 protocol

* Optimization by using protobuf-lite

* RaspBian outdated protoc does not support _Name

* Added protobuf-compiler to easyinstall.sh

Co-authored-by: akuker <34318535+akuker@users.noreply.github.com>
2021-07-18 17:15:13 -05:00
Uwe Seimet
d7ba1d8819 Support connecting from a different host 2021-07-18 21:45:44 +02:00
Uwe Seimet
795f0c4e21 Added option for hostname 2021-07-18 21:39:15 +02:00
Uwe Seimet
327e57e8e9 Set hostname 2021-07-18 21:32:08 +02:00
uweseimet
6136b29515
Daynaport: Fixed potential buffer overflow and removed INQUIRY excess bytes (#123)
* Fixed potential buffer overflow and removed INQUIRY excess bytes

* Daynaport: Report an error for LUNs > 0
2021-07-15 19:52:01 -05:00
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 61a1ecbca7.

* 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 2c83626862.
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
Eric Helgeson
54cf4322aa
Merge pull request #113 from akuker/security_fixes
Update version of pillow
2021-06-22 19:42:07 -05:00
akuker
9e0ce1eacc update version of pillow 2021-06-22 19:37:52 -05:00
akuker
7dd93728f9 Regenerated text versions of man pages. This was missed in PR #110 2021-06-22 19:30:33 -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
uweseimet
88f59a6f1e
Fixed typos (#110) 2021-06-19 10:17:23 -05:00
akuker
a41855c038
Merge Hw 2p4 to develop (#109)
* First attempt at adding 2.5 inch drive connector

* Clean up silkscreen and fix DRC issues

* additional cleanup. Made Pin 1 of the PB connector square

* minor tweaks

* Updates for ordered version

* Generated .STEP file for RaSCSI

* Added STEP file and updated symbol and 3d model references to reference the correct gender of parts. Should be no functional change

* Added STEP file and updated symbol and 3d model references to reference the correct gender of parts. Should be no functional change

* Added 3D models and correct footprints for STEP file

* Merge version 20.12.0 into the master branch (#75)

* Update README.md

Added reference to gitflow

* Updated to match new versioning structure (#73)

* Updated to match new versioning structure

* fix version number

Co-authored-by: Tony Kuker <akuker@gmail.com>

* 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>

* Updated for new version number

* Change reported version back to development build

Co-authored-by: Tony Kuker <akuker@gmail.com>

* Generate step file and schematic pdf

* First draft of powerbook drive bracket

* Added side holes and hole for MIPI connector

* Set theme jekyll-theme-midnight

* Set theme jekyll-theme-dinky

* Create CNAME

* Delete CNAME

* Additional updates to the powerbook 3d printed bracket

* Moved RaSCSI board 1mm in + lots of cleanup

* Added optional floppy power connector. As-ordered version 2.4a

* Added optional floppy power connector. As-ordered version 2.4a

* Update rascsi_version.cpp

* Update Makefile

* Update Makefile

Revert extraneous whitepace

* Update scsidev_ctrl.cpp

Revert unneeded change.

Co-authored-by: Tony <akuker@gmail.com>
2021-06-08 19:06:29 -05:00
akuker
641130c4d7
Merge pull request #106 from akuker/stdout-buffering-fix
Stdout buffering fix
2021-06-01 20:05:50 -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
a580562d03
Merge pull request #103 from akuker/eric/devupdates
Web and easy install updates.
2021-05-23 11:35:19 -05:00
akuker
01798b2af5
Merge pull request #102 from akuker/rascsi_checkout
Loopback test to checkout RASCSIs
2021-05-23 11:09:26 -05:00
Eric Helgeson
b5d82c1037 Update readme for dev setup of web 2021-05-23 10:55:24 -05:00
Tony Kuker
b7a9f6badd Remove schematic 2021-05-22 10:48:18 -05:00
akuker
4c86524b92 Added loopback schematic 2021-05-21 22:58:05 -05:00