Commit Graph

  • 02b7742f4d Fix buffer overflow in parseUrlAddrFromRtspUrlString (CVE-2023-42799) Keane O'Kelley 2023-10-06 20:51:21 -04:00
  • 116267a245 Fix parseSdpAttributeTo[U]Int() to avoid writing to the const input string Cameron Gutman 2023-10-06 18:12:08 -05:00
  • b2497a3918 Rewrite extractVersionQuadFromString() to avoid copying the input string Cameron Gutman 2023-10-06 17:43:56 -05:00
  • 8b84d17c8d Replace additional unsafe string functions Cameron Gutman 2023-10-06 17:33:37 -05:00
  • d055599608 Map Misc button to Guide for GFE hosts Cameron Gutman 2023-10-05 20:29:18 -05:00
  • 162c581754 Initialize strtokCtx to NULL for first call to strtok_r() Cameron Gutman 2023-09-27 01:27:12 -05:00
  • 1be56269a3 Fix handling of duplicate packets when OOS data was also received Cameron Gutman 2023-09-23 12:08:16 -04:00
  • 7a6d12fc4e Update ENet submodule to add ENET_NO_INSTALL option Cameron Gutman 2023-09-20 20:52:28 -05:00
  • c1744de069 Batch async control stream callbacks Cameron Gutman 2023-09-18 23:02:44 -05:00
  • a258b7e12b Fix leak in unreachable codepath Cameron Gutman 2023-09-18 22:59:03 -05:00
  • c3e9aea843 Fix non-standard forward declaration Cameron Gutman 2023-09-18 21:19:59 -05:00
  • 20130e210b Invoke control stream callbacks on a separate thread Cameron Gutman 2023-09-17 14:49:06 -05:00
  • b2528faa02 Disable GCC static analysis in CI until newer GCC is available in AppVeyor Cameron Gutman 2023-09-15 23:19:10 -05:00
  • 7f665babf9 Enable GCC static analysis in CI Cameron Gutman 2023-09-15 22:41:37 -05:00
  • 515bea6fb4 Fix GCC static analysis warnings Cameron Gutman 2023-09-15 22:03:27 -05:00
  • c13f4a323f Use connected datagram sockets for audio and video Cameron Gutman 2023-09-12 23:29:05 -05:00
  • ec6713fd80 Improve checks for runt video packets Cameron Gutman 2023-09-12 22:44:45 -05:00
  • 171858c2e7 Add CodeQL scanning Cameron Gutman 2023-09-12 21:39:17 -05:00
  • 315d0bbfa3 Use modern string parsing functions in SdpGenerator Cameron Gutman 2023-09-12 21:24:28 -05:00
  • 5a19e52921 Use modern string parsing functions in RtspParser Cameron Gutman 2023-09-12 20:53:04 -05:00
  • 91b4186b8a Use strtok_r()/strtok_s() instead of regular strtok() Cameron Gutman 2023-09-12 20:36:19 -05:00
  • 2bb026c763 Suppress connection warnings for the first sampling period Cameron Gutman 2023-08-23 21:03:40 -05:00
  • dc62a6f88e Send periodic pings and FEC status messages more frequently Cameron Gutman 2023-08-19 11:39:55 -05:00
  • e05ee6dfc8 Change FEC status message to avoid truncating large frames Cameron Gutman 2023-08-19 11:37:44 -05:00
  • 78e06eb613 Batch control stream messages Cameron Gutman 2023-08-19 11:27:16 -05:00
  • 8b0dbf7158 Send client feature flags indicating FEC status support Cameron Gutman 2023-08-19 11:03:00 -05:00
  • e0d83f61c2 Fix missing debug message when an I-frame is sent as an RFI recovery frame for AV1 Cameron Gutman 2023-08-14 21:32:38 -05:00
  • 8bca948b61 Fix unused function warning on release builds Cameron Gutman 2023-08-12 15:08:22 -05:00
  • a0b29fe3dc Avoid asserting on filler NALUs in reference frames on debug builds Cameron Gutman 2023-08-12 05:32:11 -05:00
  • 325518b47a Add LiGetHostFeatureFlags() API Cameron Gutman 2023-08-03 22:09:30 -05:00
  • 0f17b4d0c5 Add LI_TOUCH_EVENT_CANCEL_ALL Cameron Gutman 2023-07-30 19:20:15 -05:00
  • f2cea4d6b0 Update ENet submodule Cameron Gutman 2023-07-30 14:02:28 -05:00
  • 6d039a646b Fix extended delays for unreliable/unsequenced traffic on high latency connections Cameron Gutman 2023-07-25 23:30:45 -05:00
  • 92cc6f96d4 Merge latest changes from upstream ENet Cameron Gutman 2023-07-25 22:03:42 -05:00
  • 77c5d5c282 Tune SO_RCVBUF logic Cameron Gutman 2023-07-25 18:30:19 -05:00
  • 70a2e305bc Extend pen/touch APIs with contact area and orientation Cameron Gutman 2023-07-22 15:01:03 -05:00
  • 6f4f2607b3 Clarify API documentation Cameron Gutman 2023-07-22 12:34:02 -05:00
  • d8b2b04bb2 Reuse pressure field in touch/pen events to provide hover distance Cameron Gutman 2023-07-22 12:33:19 -05:00
  • 27428e655b Move ServerCodecModeSupport values into public header Cameron Gutman 2023-07-16 15:30:55 -05:00
  • 9b5fbff7ba Only disable 4K H.264 RFI with GFE Cameron Gutman 2023-07-16 15:13:22 -05:00
  • 2ac25bebaa Send unreliable traffic as reliable when we have just one channel Cameron Gutman 2023-07-16 15:11:09 -05:00
  • 2d0badde9a Send zero state gyro events as reliable traffic Cameron Gutman 2023-07-12 01:05:23 -05:00
  • dc803bcd33 Document the correct way to indicate arrival and removal of controllers Cameron Gutman 2023-07-09 15:24:56 -05:00
  • a3b28eb4d7 Update ENet for UWP builds Cameron Gutman 2023-07-08 19:15:45 -05:00
  • 49fef03830 Change frameHeaderSize to uint32_t to avoid warning from promotion to signed int Cameron Gutman 2023-07-08 01:40:44 -05:00
  • 9205a87002 Improve validation of lastPacketPayloadLength field Cameron Gutman 2023-07-08 01:31:41 -05:00
  • 659202c3e5 fixed memcpy overlap (reported by AddressSanitizer) (#80) Mariotaku 2023-07-08 15:09:45 +09:00
  • ed7d72c07d Fix single packet frame case for AV1 Cameron Gutman 2023-07-06 01:41:15 -05:00
  • 190b08ecf4 Encode the final packet length in the frame header for AV1 Cameron Gutman 2023-07-06 01:29:24 -05:00
  • 953971c9a3 Fix handling of AV1 keyframes Cameron Gutman 2023-07-05 18:45:29 -05:00
  • f3b7edbd11 Overflow onto channel 0 rather than distributing Cameron Gutman 2023-07-04 16:51:35 -05:00
  • 377d37503f Split controller motion events onto their own channels Cameron Gutman 2023-07-04 16:18:52 -05:00
  • 53c29f11ba Send mouse deltas reliably for now Cameron Gutman 2023-07-04 15:48:08 -05:00
  • befc9805ab Add workaround for missing last byte in RTSP message Evgeniy S 2023-03-31 15:09:37 +03:00
  • c8828d586c Don't send periodic pings as reliable traffic Cameron Gutman 2023-07-04 15:03:01 -05:00
  • 7608e8e69d Enforce setting serverCodecModeSupport field in SERVER_INFORMATION Cameron Gutman 2023-07-04 14:56:20 -05:00
  • 0095141e08 Split control data into multiple channels and optimize packet flags based on type of data Cameron Gutman 2023-07-04 14:49:21 -05:00
  • 7d59c6e14e Fix motionType value in motion packets Cameron Gutman 2023-07-04 14:18:27 -05:00
  • 54e1556c40 Constrain the reported controller number by the max gamepad count Cameron Gutman 2023-07-04 14:16:53 -05:00
  • 9ad56cdd8e Move serverCodecModeSupport into SERVER_INFORMATION struct Cameron Gutman 2023-07-02 23:54:04 -05:00
  • effba1a16f Remove mention of enableHdr Cameron Gutman 2023-07-02 23:40:42 -05:00
  • 59a506c15a Only select 10-bit format if also compatible with client Cameron Gutman 2023-07-02 23:32:04 -05:00
  • 1125dc3dba Replace enableHdr option with directly receiving ServerCodecModeSupport value from XML Cameron Gutman 2023-07-02 23:28:10 -05:00
  • e36bde4acc Implement AV1 codec support Cameron Gutman 2023-07-02 22:16:20 -05:00
  • c0792168f5 Add LI_BATTERY_PERCENTAGE_UNKNOWN value Cameron Gutman 2023-07-02 16:42:09 -05:00
  • a0f8c060c0 Introduce new protocol extensions for controller RGB LEDs and battery state Cameron Gutman 2023-07-02 14:38:54 -05:00
  • c5dc45e144 Define an unknown tool type and clarify button-only events Cameron Gutman 2023-06-28 17:25:41 -05:00
  • 28d63b11dd Fix float values in pen events Cameron Gutman 2023-06-25 20:06:43 -05:00
  • f8899f724d Add a touch event type for leaving hover Cameron Gutman 2023-06-25 16:58:12 -05:00
  • 8c447137d6 Fix controller arrival packet to actually contain the controller that arrived Cameron Gutman 2023-06-25 14:27:43 -05:00
  • 44c8b95400 Pen tilt is 0..90 not -90..90 Cameron Gutman 2023-06-25 00:24:55 -05:00
  • c8aac7f71c Define units for controller motion events Cameron Gutman 2023-06-24 21:28:43 -05:00
  • de0efa861a Several fixes for touch and pen APIs Cameron Gutman 2023-06-24 21:25:48 -05:00
  • 5cbb6f210d Fix signness of pen tilt parameters Cameron Gutman 2023-06-24 15:14:17 -05:00
  • 812ec0e2b7 Allow exceeding 4 controllers for Sunshine hosts Cameron Gutman 2023-06-18 16:36:34 -05:00
  • 9bf09d681e Plumb Sunshine feature flags SDP attribute for protocol extensions Cameron Gutman 2023-06-18 15:52:51 -05:00
  • 689450954c Add pen and motion batching Cameron Gutman 2023-06-18 14:30:16 -05:00
  • 372eb94ed0 Expand button flags to support additional buttons with Sunshine Cameron Gutman 2023-06-18 14:03:29 -05:00
  • 7eea7a7971 Fix endianness issues for BE systems Cameron Gutman 2023-06-18 13:50:39 -05:00
  • 329c55d52f Send pointer IDs instead of touch indices Cameron Gutman 2023-06-18 13:48:14 -05:00
  • cd35abbae7 Fix build Cameron Gutman 2023-06-11 19:46:13 -05:00
  • ce98d4fb2f Introduce connection callbacks for trigger rumble and motion events Cameron Gutman 2023-06-11 19:42:02 -05:00
  • 4a48024dc8 Introduce new input extension functions for touch, pen, motion, and controller arrival Cameron Gutman 2023-06-11 19:38:22 -05:00
  • 7970925fe4 Introduce macro function to determine endianness Cameron Gutman 2023-06-11 19:33:24 -05:00
  • 284840bde7 Add support for sunshine host latency ns6089 2023-04-18 20:56:12 +03:00
  • 169078d0a9 Allow encoder to pick optimal ref frame count if RFI is supported by the decoder Cameron Gutman 2023-04-29 13:11:38 -05:00
  • c9426a6a71 Add HDR and colorspace fields to DECODE_UNIT Cameron Gutman 2023-03-11 11:36:21 -06:00
  • 02f12e4448 Update enet to fix NO_MSGAPI build Cameron Gutman 2023-03-05 14:32:34 -06:00
  • b77072d399 Don't use GFE modifier workaround with Sunshine Cameron Gutman 2023-02-25 13:11:54 -06:00
  • d3cb8131d1 Revert "Send TCP FIN after completion of our RTSP request" Cameron Gutman 2023-02-20 16:56:58 -06:00
  • 7e089435c7 Reduce max number of frame status reports per second Cameron Gutman 2023-02-20 16:48:12 -06:00
  • 55a6d58225 Fix leak Cameron Gutman 2023-02-20 16:42:23 -06:00
  • 207f981fd0 Send final FEC frame status info to Sunshine Cameron Gutman 2023-02-20 16:24:48 -06:00
  • 82105f2f8f Declare packetFreed as volatile Cameron Gutman 2023-02-15 01:42:48 -06:00
  • c88b1bcf8e Fix integer truncation warning on MSVC Cameron Gutman 2023-02-15 01:33:32 -06:00
  • 54d46ca80f Put backpressure on control stream sender when the window fills up Cameron Gutman 2023-02-14 23:02:18 -06:00
  • 830187e4da Throttle mouse/controller message rate in the input send thread Cameron Gutman 2023-02-14 21:24:13 -06:00
  • 95e3e26d12 Send TCP FIN after completion of our RTSP request Cameron Gutman 2023-02-13 21:47:22 -06:00
  • 8186687093 Fix video header parsing assert with GFE 3.27 Cameron Gutman 2023-02-13 21:26:47 -06:00
  • cf0a0ced90 Use new mbedtls APIs (#75) Mariotaku 2023-02-14 11:31:45 +09:00