Paul Hollinsky
111d377d4a
Legacy: Fix icsneoGetVnetSimpleNetid
...
The NetID is written to the out* parameter, not returned.
2022-02-21 21:16:12 -05:00
Paul Hollinsky
c3469f5fb6
Legacy: Fix icsneoGetNetidforSlaveVNETs
...
The NetID is written to the out* parameter, not returned.
2022-02-21 21:16:07 -05:00
Paul Hollinsky
0219eccc94
Legacy: Formatting
2022-02-21 21:14:31 -05:00
Paul Hollinsky
e22f70a35a
Legacy: Correct Ethernet message translation
...
* Fixes NetIDs over 255
* Fixes data lengths over 255
* Avoids writing unexpected messages to client
2022-02-21 21:14:31 -05:00
Paul Hollinsky
b019c20ad0
Legacy: Prevent incorrect access to NetID maps
2022-02-21 21:14:31 -05:00
Paul Hollinsky
6fa469de5f
Tests: Spaces to Tabs
2022-02-21 20:26:57 -05:00
Paul Hollinsky
be219288dc
CI: Add Windows
2022-02-21 20:13:28 -05:00
Paul Hollinsky
d35653e3d0
Windows: PCAP: Fix WinPCAP loading
...
Used when LIBICSNEO_NPCAP_INCLUDE_DIR is not defined
2022-02-14 19:37:41 -05:00
Paul Hollinsky
0ce7326b83
Windows: PCAP: Fix a race which could cause transmit delays
...
If you had a chain of packets being sent all at once, the latter
section of packets could be delayed, theoretically infinitely.
If queue1 was filled and enqueued for transmit, then queue2
had packets enqueued in it while queue1 was still transmitting,
we'd try to fill queue2 further rather than waiting for queue1's
transmit to finish.
However, in that case, we wouldn't check if we could transmit
queue2 again until the next packet. If the user application
was waiting for the response from something in queue2
before pushing more packets, it could hang indefinitely.
This also fixes a subtle bug where hitting the "not safe to try
to fit any more packets in this queue" limit would cause a
packet to drop, as it would be dequeued and then tossed.
Closes GH-42
2022-02-14 19:37:41 -05:00
Paul Hollinsky
714db03a05
CMake: Set CXX_STANDARD to C++11 if not set elsewhere
...
We need at least C++11.
If we're statically compiling into an application, we want to be using the same
CXX_STANDARD as it for ABI compatibility (particularly with icsneo::optional),
hence having the check around it.
2021-11-16 19:49:08 -05:00
Paul Hollinsky
d097fb9a74
CANPacket: Remove unused byte from datastream
2021-11-16 19:48:55 -05:00
Paul Hollinsky
9d5bad94d4
Encoder: Add 1 to host-to-device long format packets
...
Vehicle Spy 3 does this, it's a long-standing firmware idiosyncrasy.
Due to the way the device handles packets, this didn't cause a loss of
communication, only a "host to device byte" app error under certain
circumstances.
2021-11-16 19:35:20 -05:00
Paul Hollinsky
181223375a
ValueCAN 4 Industrial: Disable 16-bit alignment over Ethernet
...
This is a continuation of a1a544045b
2021-11-16 19:27:38 -05:00
Paul Hollinsky
51626b9e63
POSIX: PCAP: Use EthernetPacketizer
2021-11-16 18:00:04 -05:00
Paul Hollinsky
a1a544045b
Ethernet Comm Devices: Disable unnecessary align16bit
2021-11-16 18:00:04 -05:00
Paul Hollinsky
719dbcefc8
EthernetPacketizer: Coalesce small PC-to-device packets
2021-11-16 18:00:04 -05:00
Kyle Schwarz
c5314884ce
Build: Associate pcap include dir with icsneocpp
...
If an external project links to the icsneocpp target and pcap has
been installed in a non-standard location, the build will fail to find
pcap.h because PCAP_INCLUDE_DIR is not associated with the
target.
Closes #58
2021-09-20 21:38:34 -04:00
Kyle Schwarz
82954d9190
Build: Associate libusb include dir with icsneocpp
...
If an external project links to the icsneocpp target and libusb has
been installed in a non-standard location, the build will fail to find
libusb.h because LIBUSB_INCLUDE_DIR is not associated with the
target.
Closes #57
2021-09-20 21:31:13 -04:00
Paul Hollinsky
68715d515d
Decoder: Allow older ResetStatus packets without voltage or temperature
2021-08-22 13:12:36 -04:00
Paul Hollinsky
27184a203f
Legacy: Use new layout for SDeviceSettings
...
This fixes issues where the settings values would be shifted.
2021-08-20 10:36:55 -04:00
Paul Hollinsky
c7e7222140
Legacy: Ensure stddef.h is present for size_t
...
Many compilers won't need this, but better to
have it so it's correct.
2021-08-05 15:07:02 -07:00
Paul Hollinsky
84c6b202c7
RAD-Star 2: Fix invalid serial numbers being reported
2021-07-06 19:31:44 -04:00
Paul Hollinsky
0c67cdf078
macOS: PCAP: Fix typo
2021-07-05 23:54:15 -04:00
Paul Hollinsky
02c14aeb35
macOS: PCAP: Add code necessary for device discovery
...
You will still need chmod_bpf or similar to find devices
2021-06-17 21:07:22 -04:00
Tomasz Ziobrowski
ca83d7c4f2
Fixed ValueCan4 Industrial settings interpretation.
...
Description:
Possibly was an type - casting was done different structure.
Was not possible to determine or setup settings for ValueCan4 Industrial.
Whitespace fixed from the original commit
Co-authored-by: Paul Hollinsky <phollinsky@intrepidcs.com>
2021-06-16 21:02:42 -04:00
sbo79
4da5f63e57
Update README.md
...
Just experienced list filters got introduced to cmake in 3.6.... still failed run trough in ubuntu 18.04. works above 3.12.
2021-06-15 19:19:47 -04:00
Paul Hollinsky
37d06807e4
POSIX: PCAP: Update inferface name to match Windows implementation
2021-06-15 19:09:13 -04:00
Paul Hollinsky
b13a33f0be
Windows: PCAP: Less verbose name for the interface
...
Fixing some tabs/spaces formatting here as well
2021-06-15 19:09:05 -04:00
Tomasz Ziobrowski
af2c30885b
Added support for MinGW32 - to be working with qticsneo
2021-06-15 20:15:08 +02:00
Paul Hollinsky
3cff831c6b
Examples: C++: Correct compilation in a C++20 project
...
Otherwise nonstd::optional doesn't match std::optional
2021-06-14 14:42:37 -04:00
Paul Hollinsky
a8562aca60
API: Legacy: Make icsneoFindDevices edge cases match icsneo40
2021-06-14 14:41:54 -04:00
Paul Hollinsky
da4ab6ef62
API: Legacy: Fix MSVC build issues
2021-06-11 18:44:33 -04:00
Paul Hollinsky
a9840028ff
Windows: DynamicLib: DLLExport before _stdcall for Legacy
2021-06-11 18:43:33 -04:00
Paul Hollinsky
4b7cb28bdf
API: Legacy: Disable octal mappings for non-stubbed functions
2021-06-11 18:42:33 -04:00
Paul Hollinsky
c888aad5ae
VersionPacket: Use C++11 function signature
2021-06-11 18:40:50 -04:00
Paul Hollinsky
4588cb55fa
POSIX: DynamicLib: Force visibility of exports in case of -fvisibility=hidden
2021-06-11 15:20:41 -04:00
Paul Hollinsky
9b2eae4a6c
API: Legacy: Fix icsneoFindDevices
2021-06-11 15:19:40 -04:00
Paul Hollinsky
45c879c2b6
API: Legacy: Update def file with the correct ordinals
2021-06-11 13:52:09 -04:00
Paul Hollinsky
a43c0117d6
API: C: Check nullptr in icsneo_serialStringToNum
...
Otherwise it will implicitly call the std::string constructor
and that constructor does not check nullptr.
2021-06-11 13:06:47 -04:00
Paul Hollinsky
f3e456e7ea
API: Legacy: Fix build issues caused by the merge
2021-06-11 13:05:39 -04:00
Paul Hollinsky
843fa92564
API: Legacy: Add standard DLLExport to LegacyDLLExport
2021-06-11 12:39:20 -04:00
Paul Hollinsky
34f7bfabd2
API: Legacy: Remove unused variable
2021-06-11 12:36:37 -04:00
David Rebbe
d82a069842
API: Legacy: Add icsneoOpenDevice
...
Needed for compatibility with the latest python-ics
2021-06-11 12:35:28 -04:00
Sangeetha Hariharasudhan
9e70a9d51f
API: Legacy: Implement functions necessary for J2534
...
icsneoEnableNetworkComEx
icsneoGetDeviceSettingsType
icsneoGetDeviceSettings
icsneoSetDeviceSettings
icsneoGetMiniportAdapterInfo
icsneoEnableDOIPLine
icsneoGetVnetSimpleNetid
icsneoGetNetidforSlaveVNETs
icsneoSetBitRateEx
icsneoSetFDBitRate
icsneoSerialNumberFromString
icsneoJ2534Cmd
_stdcall convention added with .def file (octal support)
use NumberBytesHeader instead of NodeID in txmessagesEx
2021-06-10 16:58:11 -04:00
Paul Hollinsky
4095f23ded
Settings: Make getBaudrateFor work for SWCAN and LSFTCAN
2021-06-10 15:18:31 -04:00
Paul Hollinsky
1b7db51a45
Windows: PCAP: Fix Npcap loading for _UNICODE
2021-06-10 15:18:23 -04:00
Paul Hollinsky
165eb0f8a2
Windows: Correct dynamic load helper when _UNICODE is defined
2021-06-10 15:18:13 -04:00
Paul Hollinsky
ed94012046
Examples: Interactive C: Fix initializers
2021-06-10 15:18:05 -04:00
Paul Hollinsky
7b7320bc27
Support the RAD-Epsilon
2021-06-10 15:17:57 -04:00
Paul Hollinsky
19aabdfacf
POSIX: PCAP: Cancel after pcap_breakloop() to EINTR out of poll()
...
This is necessary as pcap_breakloop() does not actually wake the
thread from blocking operations, such as poll.
2021-06-10 15:17:43 -04:00