Commit Graph

331 Commits

Author SHA1 Message Date
twinaphex 4d18f3e9b7 Create more tests 2020-01-30 17:25:58 +01:00
twinaphex f785e4b045 Replace while (1) with for (;;) - avoids MSVC warnings 2020-01-30 16:15:52 +01:00
Jamiras d0d1c5bb37 allow characters other than / to follow port 2020-01-23 07:00:50 -07:00
Jamiras 59302e816c fix parsing of port in net_http_connection_done 2020-01-17 20:22:49 -07:00
Jamiras 67e9fba9d7 generate User-Agent for retroachievement API calls 2019-11-02 21:52:30 -06:00
twinaphex d4b7be4ae4 Update libretro-common 2019-10-31 01:25:27 +01:00
twinaphex eb77d84716 Update libretro-common 2019-10-31 01:02:01 +01:00
Twinaphex 419eb5a6c0 Remove unused variables 2019-10-04 16:06:34 +02:00
twinaphex 3b057d9605 Start using STRLCAT_CONST_INCR and STRLCPY_CONST 2019-09-20 23:33:17 +02:00
twinaphex 8fa6230426 Cleanups 2019-09-18 02:16:47 +02:00
twinaphex a36d5926d7 Cleanups 2019-09-17 05:30:07 +02:00
twinaphex 6f6b1a8333 (Net HTTP) Avoid unnecessary snprintf 2019-09-17 05:26:00 +02:00
Brad Parker c7c7d0988e initial network video driver, sends raw frames over TCP 2019-09-17 04:18:44 +02:00
twinaphex d01ae6929d Don't use strlcat for basic concatenation of characters
except when absolutely necessary
2019-09-17 02:00:04 +02:00
Brad Parker 0ecac5c8ff http: fix memory leak and potential null pointer argument to strlen 2019-07-04 16:27:51 -04:00
Twinaphex 29e4b8e2c1 Get rid of warning 2019-06-22 15:48:42 +02:00
Twinaphex 68085af944 (net http) Cleanups 2019-05-27 14:40:38 +02:00
Twinaphex d0707437c9 Remove some unused variables 2019-05-18 21:26:29 +02:00
Barry Rowe 8745333892 OCR Translation feature finaliziation. (#8738) 2019-05-11 07:15:39 +02:00
twinaphex 3e72c502a8 strlen optimizations :
- use STRLEN_CONST for constant strings, translates to sizeof
which should be computed at compile-time
- found some places where we are needlessly calling strlen two
times instead of just once
2019-04-27 04:21:10 +02:00
Brad Parker e7dbac7eb0 prevent null derefs found by scan-build 2019-04-18 11:46:53 -04:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
Twinaphex 7835d0c54c
Merge pull request #7745 from orbea/mbedtls
Support building with the system mbedtls.
2018-12-19 01:53:14 +01:00
Brad Parker d6741651b7 net_socket_ssl: keep reading data from server until finished, fixes #7451 2018-12-18 03:01:52 -05:00
orbea dc020f2569 qb: Support building with the system mbedtls.
Fixes https://github.com/libretro/RetroArch/issues/7639

v2: Fix build failures with griffin.
2018-12-15 09:10:43 -08:00
natinusala eac0d603f4 libnx: add network interfaces info 2018-10-12 17:37:03 +02:00
Nathan Strong c5f9fc0a34 WiiU: fix network information
== DETAILS

For local netplay, it's useful to have your IP address easily
available. This commit makes the Information > Network Information
menu display the Wii U's IP address.

Change summary:
- Fix the logging init to be reentrant to avoid socket consumption
- Add implementation of POSIX `getifaddrs()` and `freeifaddrs()`
  to `missing_libc_functions.c`
- Remove compiler directives protecting the code paths that call
  `getifaddrs()` from being used in Wii U builds

== TESTING

Have tested locally, successfully get IP address information in
the Information > Network Information.

I think this may also fix NAT traversal. Will need to be tested.
2018-10-11 15:37:15 -07:00
Twinaphex f00f2e3ccf
Merge pull request #7169 from GregorR/wii-u-netplay-fix
Fix netplay on Wii U
2018-10-10 20:14:24 +02:00
lifajucejo 9be2321c02 Add networking support to libnx 2018-09-27 21:23:01 -04:00
Gregor Richards 7634b1bbb0 Fix netplay on Wii U
getaddrinfo on Wii U doesn't support node==NULL. As I don't know of this
bug on any other platform, I've made a Wii-U-specific workaround in
getaddrinfo_retro.
2018-09-01 21:14:56 -04:00
twinaphex 1becd89699 Remove DEBUG ifdef 2018-08-08 04:51:03 +02:00
twinaphex 0fb7d6a9e4 (SSL) Re-enable drbg 2018-08-07 04:57:33 +02:00
twinaphex 9403489f2e try to bake out debug parts of mbedtls 2018-08-07 04:51:26 +02:00
twinaphex 768ebbfdb5 Merge commit 'ce9ce1d35387ef8144e53bf071396fa075bfb6c5' as 'libretro-common' 2018-05-12 17:56:34 +02:00
twinaphex 0548349991 Remove libretro-common 2018-05-12 17:56:14 +02:00
twinaphex dd8a2df253 Cleanup 2018-05-03 19:17:13 +02:00
Brad Parker 05404f9104 fix buffer overflow in url encoding (affecting msvc2010/2013) 2018-05-03 12:57:23 -04:00
twinaphex 7b1ad55b20 Try to use snprintf instead of sprintf 2018-04-25 11:31:50 +02:00
twinaphex be7eb4de1c Update libretro-common 2018-04-16 08:57:17 +02:00
twinaphex 360bea85b9 (PS3) Silence more warnings 2018-04-08 01:09:31 +02:00
twinaphex cf4ab13281 Revert "Silence some Clang static analyzer warnings"
This reverts commit 2c882a01c1.
2018-03-30 19:28:37 +02:00
twinaphex 2c882a01c1 Silence some Clang static analyzer warnings 2018-03-29 14:11:52 +02:00
twinaphex f597fd7a11 Add HAVE_CHEEVOS support for MSVC 2010 2018-03-22 20:42:06 +01:00
twinaphex c318d05803 Fix buffer overlap - pointed out by @leo150, thanks 2018-03-22 15:22:17 +01:00
radius c52fdc469f remove task_push_http_transfer_raw, encode before sending data to the task 2018-03-16 22:38:21 -05:00
radius b01e63e2cd make sure to always encode urls, also change the PS3 default urls 2018-03-14 23:04:50 -05:00
meleu d5503e9e7c fix a bad in_addr manipulation on VITA - fixes #6127 (#6366)
added VITA condition
2018-03-07 22:11:30 +01:00
aliaspider 5549b136c2 (msvc) CXX_BUILD + griffin fixes. 2018-02-05 00:25:03 +01:00
aliaspider 5db96f35fa (WIN32) various build fixes. 2018-01-20 20:05:32 +01:00
twinaphex 61ff51be2f Start using string_is_equal predominantly 2018-01-16 22:53:38 +01:00
meepingsnesroms d18ee7eaed Fix new 3ds xl not being detected, others
Also fixes whitespace in makefile and platform_ctr.c and compiles with debug libctru when DEBUG=1
2017-12-29 19:30:54 -08:00
meepingsnesroms 7dbaa45172 Basic networking, bug fixes
Fix CPU count bug, make 3ds compile with networking
2017-12-28 21:49:21 -08:00
twinaphex 6441a25c35 PS3 has AF_INET6 defined yet we still shouldn't take this path 2017-12-20 15:34:57 +01:00
Twinaphex 5eb6c5dae9
Merge pull request #5936 from clienthax/ps3res
More ps3 networking fixs.
2017-12-19 23:02:14 +01:00
clienthax 73aa381b27 More ps3 networking fixs. 2017-12-19 21:39:22 +00:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex d6fd9f0cc1 Add fallback AF_INET6 path 2017-12-10 01:19:58 +01:00
clienthax a565ba0149 [PS3] Partial fix of networking 2017-12-07 22:20:02 +00:00
twinaphex 23e6f0be37 Update 2017-12-06 16:54:23 +01:00
twinaphex a53927c5aa Fix PS3 build 2017-12-06 16:53:19 +01:00
Alcaro dc4c2cd6d9 Wipe out a buncha warnings and pointless ifdefs (some warnings will remain until #5497 is fixed) 2017-10-03 00:26:29 +02:00
twinaphex dd351a3501 (Xbox) Provide implementation function for inet_ntop_compat 2017-09-13 03:05:28 +02:00
twinaphex be367138f6 Provide implementation for inet_aton for Xbox 2017-09-12 23:54:10 +02:00
radius 5d03a4719f clear inet_ntop_compat warning 2017-09-10 21:44:15 -05:00
twinaphex dbb6adb453 C89_BUILD fixes 2017-09-11 04:17:28 +02:00
twinaphex 582b688121 Silence some warnings for PS3 2017-09-06 00:21:20 +02:00
radius 6804432fa7 log address family, fix inet_ntop_compat 2017-08-15 21:03:59 -05:00
Brad Parker 02381aabef add SSL/TLS support 2017-07-26 09:18:17 -04:00
Ken edc64991f3 Fall back to IPv4 when IPv6 connections fail 2017-07-01 08:21:09 -04:00
twinaphex b11620e1eb Add retro_timers.h/retro_math.h 2017-06-28 04:41:38 +02:00
twinaphex eeff3b87e8 Turn this into #elif defined(_WIN32) 2017-05-30 02:55:29 +02:00
aliaspider d120c9f38b change this one too. 2017-05-28 12:50:21 +01:00
aliaspider b49d2a87ab getaddrinfo error codes can also be positive. 2017-05-28 12:46:39 +01:00
aliaspider 934f7c58ba (WiiU) enable networking. 2017-05-23 10:24:23 +01:00
twinaphex 3ae54e0eed Move send_udp_packet to libretro-common 2017-05-20 14:28:18 +02:00
twinaphex f9960b5f8d Typo 2017-05-17 09:43:41 +02:00
twinaphex 1178673380 Add PS4 ifdefs 2017-05-17 09:02:04 +02:00
twinaphex 7a2d799a6c Cleanups 2017-05-17 08:59:57 +02:00
Francisco José García García 2171439647 [VITA] buildfix 2017-05-17 08:55:33 +02:00
twinaphex 5635894178 Buildfix 2017-05-17 07:05:15 +02:00
twinaphex be22290495 Rename to inet_ntop_compat 2017-05-17 07:00:47 +02:00
twinaphex 8330a0ee46 Style nits 2017-05-17 05:36:02 +02:00
radius 2f1c3fb437 add inet_ntop 2017-05-16 22:21:36 -05:00
twinaphex 126a5bf121 Use string_is_equal_fast/string_is_not_equal_fast 2017-05-16 04:00:37 +02:00
twinaphex 6ebd4e139e Rewrite more string_is_equal call invocations as memcmp 2017-04-22 08:51:16 +02:00
twinaphex 82c62b1693 Use stdstring in more instances 2017-04-21 13:50:24 +02:00
Brad Parker dd80ffc61b FreeBSD buildfix 2017-03-29 16:47:58 +00:00
twinaphex c9c0621076 Try to fix some Coverity bugs 2017-03-19 02:27:07 +01:00
Brad Parker 1fc7a50f3e fix non-ascii URL encoding 2017-03-05 14:19:37 -05:00
Brad Parker 7aca744635 URL encode non-ascii characters 2017-03-05 14:19:37 -05:00
Brad Parker 79899e6b71 silence linux warning 2017-03-05 14:19:36 -05:00
Brad Parker ad6733b519 add full urlencoder and encode lobby announcement POST data 2017-03-05 14:19:36 -05:00
Brad Parker fb3393eb3a add user agent to http requests 2017-03-05 14:19:35 -05:00
Brad Parker 101475c2f6 fix POST handling 2017-03-05 14:19:34 -05:00
Brad Parker c31823aa94 add HTTP POST support 2017-03-05 14:19:34 -05:00
Twinaphex b7b3b2cb5f Try to prevent truckload of warnings on iOS 2017-02-26 10:33:03 +01:00
Jean-André Santoni 8a6e102a82 Increase UPNP compatibility 2017-02-22 23:02:17 +01:00
twinaphex ea56249661 (net_natt.c) Free net_addrinfo before going out of scope 2017-02-22 05:24:28 +01:00
BuildTools ac9aa4783a Fixed a bug failing to check initialization in non-UPnP-supporting
setups
2017-02-21 22:02:20 -05:00
Gregor Richards 22500914e1 Fix missing memory free when IPv6 is unsupported 2017-02-21 17:42:09 -05:00
twinaphex 457b54149d Prevent another Coverity warning 2017-02-21 21:17:17 +01:00
twinaphex 5576115389 Make natt_open_port a static function 2017-02-18 22:03:02 +01:00
aliaspider 9348369824 (Wii) buildfix for HAVE_NETWORKING=1. 2017-01-23 23:27:08 +01:00
twinaphex 64bb848daf Update headers (pt. 2 - libretro-common) 2017-01-22 13:58:20 +01:00
twinaphex 7931436f5b Apply xerpi diff 2017-01-17 18:12:23 +01:00
Brad Parker e1f4db8081 Win2000 buildfixes 2017-01-16 20:41:08 -05:00
Alcaro f95759c39b No need for those casts 2017-01-02 02:11:30 +01:00
twinaphex dae80e4e26 (MSVC) Buildfixes 2017-01-02 01:41:00 +01:00
twinaphex 43459e2269 N/A 2016-12-26 06:44:04 +01:00
Gregor Richards a6cd8c3aa1 Error reporting when a password is refused, plus a bugfix so that
socket_receive_all_nonblocking actually reports disconnects.
2016-12-18 19:28:43 -05:00
Gregor Richards 900e5a79ec Use nonblocking sockets for Netplay to avoid some stalls. 2016-12-18 19:28:38 -05:00
twinaphex feae0823ce Prevent some implicit memsets 2016-12-17 14:40:06 +01:00
twinaphex c739ca016c Add net_http_parse 2016-12-17 00:46:23 +01:00
Gregor Richards 65224dc2a5 NAT traversal also needs to avoid IPv6 with SOCKET_LEGACY 2016-12-10 13:58:51 -05:00
Gregor Richards c2c2c57095 Remove support for MiniUPNPC < 2.0 2016-12-04 13:04:30 -05:00
Gregor Richards a082df0027 More stripping out of NAT traversal for SOCKET_LEGACY 2016-12-02 13:18:35 -05:00
Gregor Richards 8dc9c64297 Yet another pre-2.0 fix for MiniUPNPC (if we have more problems I'll
just drop support for pre-2.0)
2016-12-01 09:39:41 -05:00
Gregor Richards a0ac7e6a68 Make net_ifinfo's allocation behavior simpler and clearer 2016-11-30 19:57:18 -05:00
Gregor Richards 4ad1aa7eff Don't double-free net_ifinfo structure. 2016-11-30 19:21:33 -05:00
Gregor Richards ef65f6c57a Support for both MiniUPNPC 2.0 and MiniUPNPC < 2.0
MiniUPNPC 2.0 was a backwards-incompatible change (as .0s tend to be)
but configure detects them the same. This adds support for the changed
functions.
2016-11-30 10:48:11 -05:00
Twinaphex bb499b70be Merge pull request #4104 from GregorR/natt
NAT traversal
2016-11-30 16:09:53 +01:00
Gregor Richards b3ababce9a Fix Netplay IPv6 support 2016-11-30 00:25:16 -05:00
Gregor Richards b1f9ef6073 Since I've allocated net_ifinfo, I'd better free it in all returns 2016-11-29 23:31:35 -05:00
Gregor Richards 8e5e760773 Remove accidentally-left debug printf 2016-11-29 23:30:12 -05:00
Gregor Richards 2522f68870 C++ fixes 2016-11-29 23:10:19 -05:00
Gregor Richards 025993231f Use net_ifinfo how it's intended (?) to be used 2016-11-29 23:08:48 -05:00
Gregor Richards c342c103ae Always get numeric host/ports instead of names. 2016-11-29 23:08:26 -05:00
Gregor Richards da406c3abb Adding copyright headers and support for specifying protocol (TCP/UDP) 2016-11-29 21:09:47 -05:00
Gregor Richards 65355994b3 NAT traversal
Adding NAT traveral interface to libretro-common, with (currently) a
backend support MiniUPNPC. Sensible future backends would be libupnp and
a direct implementation of PCP/NAT-PMP.
2016-11-29 21:00:53 -05:00
twinaphex f3ad815dd9 Prevent implicit memsets 2016-10-21 06:15:20 +02:00
twinaphex d82055bc04 (libretro-common) net_compat.c - cleanup 2016-10-09 10:04:02 +02:00
twinaphex 481ebced22 Prevent implicit memsets 2016-10-09 09:56:03 +02:00
twinaphex 17ded1a9ac Move net/test to samples/net/test 2016-09-29 21:27:26 +02:00
Gregor Richards b0672e47ae Fix socket_send_all_blocking to fail on errors not related to blocking 2016-09-21 14:01:25 -04:00
twinaphex f395e851c4 Use stdstring.h 2016-09-16 17:25:47 +02:00
twinaphex 465d17a6e2 (libretro-common) Update files 2016-08-24 01:45:59 +02:00
aliaspider 5a80bd6b30 (VITA) build fix for latest sdk. 2016-06-05 22:01:25 +01:00
twinaphex d5d2f7f8ee Fix resource leaks 2016-05-23 22:17:28 +02:00
twinaphex 974d3245d2 Fix logically dead code warnings 2016-05-23 22:04:00 +02:00
twinaphex 0d833c903a Merge remote-tracking branch 'origin/vulkan-windows' 2016-05-16 07:51:01 +02:00
twinaphex 3f3adf0c0e Add return value for inet_aton 2016-05-09 02:50:02 +02:00
twinaphex 510c804781 (Win32) Provide inet_aton implementation 2016-05-08 19:12:01 +02:00
twinaphex 4791c37039 (Vita) Reimplement inet_ptrton for Vita 2016-05-08 18:09:03 +02:00
twinaphex e2090dc02d Vita doesn't support inet_pton either 2016-05-08 16:13:55 +02:00
twinaphex 11ec23bc18 Create inet_ptrton 2016-05-08 15:41:34 +02:00
twinaphex 2f6baffe45 Expand net_socket.c 2016-05-08 07:24:10 +02:00
twinaphex f60676f43e Create inet_htons 2016-05-03 04:35:51 +02:00
twinaphex 35b7d0423f init_network - fix some codepaths 2016-05-03 04:28:58 +02:00
twinaphex fd2096f3dc Cleanups 2016-05-03 04:26:18 +02:00