Commit graph

4994 commits

Author SHA1 Message Date
Kalila
03b5b83b67
Merge pull request #1339 from odysseus654/pr/make_shared
Housekeeping: use of std::make_shared / QSharedPointer::create.
2021-12-09 17:14:04 -05:00
David Rowe
022dea7a58 Update API examples to use "vircadia" in mapping names 2021-12-04 21:37:33 +13:00
Kalila
b7734e32d0
Merge pull request #1468 from daleglass/qt5-fix-multimap
Fix deprecated usage of multiple keys in QHash and QMap.
2021-12-02 20:28:22 -05:00
Dale Glass
14374d4d70 Replace usage of deprecated uniqueKeys
uniqueKeys() is deprecated, and _resources shouldn't contain duplicated keys.
2021-11-26 18:39:21 +01:00
Dale Glass
d77c8bbe41 Fix warnings related to deprecated usage of multiple keys in QHash and QMap
This replaces those uses with QMultiHash and QMultiMap
2021-11-26 17:53:23 +01:00
David Rowe
075c0d8b89 Fix domain server crash with SSL WebSocket 2021-11-23 09:57:42 +13:00
David Rowe
56d33b555e Fix assignment client crash 2021-11-20 17:26:06 +13:00
David Rowe
cf57b506b5 Fix domain server crash 2021-11-20 12:13:30 +13:00
David Rowe
fb79d57fef Improve WebRTC debug 2021-11-20 11:06:05 +13:00
David Rowe
861b8398f4 Merge branch 'webapp' into dev/webrtc-revisions 2021-11-14 14:13:19 +13:00
David Rowe
afd7993152 Disable WebRTC debug 2021-11-06 22:31:52 +13:00
David Rowe
c76dc5358b Rename domain server cert files 2021-10-31 10:01:04 +13:00
David Rowe
ccd525a89b CR 2021-10-30 08:30:05 +13:00
David Rowe
8e3cfe9805 Fix non-const lvalue reference 2021-10-29 23:04:41 +13:00
Kalila
55d27f5813
Merge pull request #1406 from daleglass/update-webrtc-linux
Update WebRTC for Linux.
2021-10-28 17:55:59 -04:00
David Rowe
bb3d0fa5fa Add secure WebSocket support 2021-10-27 21:42:58 +13:00
David Rowe
92e3d1465e Reduce the number of ICE servers used 2021-10-27 21:41:12 +13:00
David Rowe
2971dd6185 Fix handling of ICE candidate received from client 2021-10-26 12:13:25 +13:00
David Rowe
0fcb9423bf Fix ICE servers used for STUN 2021-10-26 11:21:23 +13:00
Kalila
f5f51dfca7
Merge pull request #1415 from ctrlaltdavid/dev/message-mixer
Networking code tidying and dead code removal.
2021-10-22 01:45:54 -04:00
David Rowe
7bb74d0103 Comment code intent 2021-10-19 11:40:20 +13:00
David Rowe
afe459b5b3 Remove unused code 2021-10-19 11:40:00 +13:00
Dale Glass
e44628f6d6 Target webrtc on Linux 2021-10-18 20:55:50 +02:00
David Rowe
4b871d1073 Tidying 2021-10-15 09:37:37 +13:00
Kalila
f15aaa5b79
Merge pull request #1383 from ctrlaltdavid/dev/webapp-master-update
Update webapp branch with the latest master.
2021-10-14 06:15:34 -04:00
David Rowe
8e653c3a65 Fix assertion message 2021-10-14 21:59:46 +13:00
David Rowe
f15d87fff1 Remove unused code 2021-10-14 13:38:30 +13:00
David Rowe
f5452a4324 Guard against invalid data channel address 2021-10-07 21:03:23 +13:00
David Rowe
c03312319d Merge branch 'master' into dev/webapp-master-update
# Conflicts:
#	libraries/networking/src/NodeList.h
#	libraries/shared/src/shared/WebRTC.h
2021-10-03 12:51:47 +13:00
Dale Glass
b8d1057e1f Replace the deprecated QMutex{ QMutex::Recursive} with QRecursiveMutex
This fixes around 1700 warnings.
2021-09-26 01:27:19 +02:00
Dale Glass
891d555679
Merge pull request #1352 from odysseus654/pr/q_disable_copy
Code Review: use of Q_DISABLE_COPY.
2021-09-25 20:33:20 +02:00
Heather Anderson
57a3cd3d63 replace the various disable-copy constructions with Q_DISABLE_COPY (or Q_DISABLE_COPY_MOVE) 2021-09-18 21:36:35 -07:00
Heather Anderson
bcce9a2091 convert explicit shared pointer creation (using "new") to make_shared where possible/appropriate 2021-09-11 15:15:04 -07:00
Heather Anderson
ab4d70760e review and cleanup of "#include <QtCore/QSharedPointer>" 2021-09-10 21:40:54 -07:00
David Rowe
e9776541bd Use WebSocket address and port as WebRTC data channel ID 2021-09-05 22:54:58 +12:00
David Rowe
b5867fef48 Tidying 2021-09-04 14:31:20 +12:00
David Rowe
dddabecc84 Use domain server-assigned WebRTC data channel ID in assignment clients 2021-09-04 14:25:21 +12:00
David Rowe
911dc2aff3 Include socket type in domain packets
Required for user client info sent to assignment clients from the domain server.
2021-09-04 10:36:13 +12:00
David Rowe
ff72b422b3 Fix WebRTCDataChannels crash 2021-09-03 19:04:24 +12:00
David Rowe
65dec6dfd8 Socket type isn't used in all code 2021-09-02 15:00:26 +12:00
David Rowe
b1050dc83a Merge branch 'master' into dev/webapp-master-update 2021-09-01 21:52:04 +12:00
Kalila
2a4ad7b163
Merge pull request #1251 from digisomni/fix/cmdline-discovery
Add disable domain port auto discovery by assignment client option.
2021-08-22 03:05:21 -04:00
David Rowe
1605039929 Tidying 2021-08-21 21:11:42 +12:00
Kalila
45e10f0670
Merge pull request #1303 from daleglass/qt5-fix-qtcpsocket-error
Replace deprecated QAbstractsocket::error with QAbstractSocket::error…
2021-08-19 20:51:27 -04:00
David Rowe
ace612d038 Assignment client type is not known at construction 2021-08-18 21:27:35 +12:00
David Rowe
5d15ebb723 WebRTC data channel with assignment clients 2021-08-18 20:21:56 +12:00
David Rowe
a3c1d50478 WebRTC signaling with assignment clients via domain server 2021-08-18 20:10:11 +12:00
David Rowe
9b2c773805 Move WebRTCSignalingServer into Domain Server 2021-08-17 22:37:43 +12:00
Kalila
29b4fea1d2
Merge pull request #1299 from ctrlaltdavid/dev/webrtc-doxygen
Fix a couple of WebRTC Doxygen typos
2021-08-16 00:05:44 -04:00
Kalila
019e012f2e
Apply suggestions from code review
Co-authored-by: Heather Anderson <heath@odysseus.anderson.name>
2021-08-12 23:01:13 -04:00
Dale Glass
24ab523acc Replace deprecated QAbstractsocket::error with QAbstractSocket::errorOccurred 2021-08-06 23:26:02 +02:00
Dale Glass
24b2cdfcd2 Fix QString::SplitBehavior deprecation, replace with Qt:: 2021-08-06 20:16:10 +02:00
David Rowe
500da963ad Make parameter names consistent across usages 2021-08-04 16:11:04 +12:00
David Rowe
9be1c08c8c Fix domain server crash 2021-07-31 23:03:48 +12:00
David Rowe
8528422834 Fix WebRTC Doxygen typos 2021-07-30 14:18:34 +12:00
David Rowe
0ea6d88bf5 Fix function parameter ID 2021-07-30 14:14:36 +12:00
David Rowe
3603520c94 fillPacketHeader() can be private 2021-07-30 14:13:44 +12:00
David Rowe
fa01ead130 Add extra WebRTC debug 2021-07-30 14:13:15 +12:00
Kalila
10e8d9f6d8
Update NetworkingConstants.h 2021-07-23 20:44:24 -04:00
David Rowe
38f7506c5e Fix erroneous domain server log message 2021-07-21 20:06:18 +12:00
David Rowe
320b5a2d22 Fix HifiSockAddr references 2021-07-21 19:54:40 +12:00
David Rowe
74c2788a14 Merge branch 'master' into dev/rename-hifisockaddr-webapp
# Conflicts:
#	assignment-client/src/AssignmentClient.cpp
#	domain-server/src/DomainServer.cpp
#	libraries/networking/src/DomainHandler.cpp
#	libraries/networking/src/LimitedNodeList.cpp
#	libraries/networking/src/LimitedNodeList.h
#	libraries/networking/src/SockAddr.cpp
#	libraries/networking/src/SockAddr.h
#	libraries/networking/src/udt/Socket.cpp
#	libraries/networking/src/udt/Socket.h
#	tools/ice-client/src/ICEClientApp.cpp
2021-07-21 15:03:29 +12:00
Kalila
35948d7467
Merge branch 'master' into fix/cmdline-discovery 2021-07-15 22:21:47 -04:00
Kalila
f62c964fdc
Typo, remove double definitions of constants. 2021-07-15 22:16:32 -04:00
Kalila
8e4a0f8880
Merge branch 'master' into feature/add-talk-to-help 2021-07-15 17:34:29 -04:00
Kalila
0193e0f4d6
Merge pull request #1244 from digisomni/fix/lookup-string-spaces
Add ability for 'handleLookupString' to have spaces.
2021-07-12 17:07:29 -04:00
Kalila L
8df362ef1f Add "Talk" link to "Help" menu. 2021-07-10 18:05:28 -04:00
David Rowe
4dac611036 Fix build error 2021-07-08 15:30:51 +12:00
David Rowe
ed13cbd01b Merge branch 'webapp' into dev/webrtc-packet
# Conflicts:
#	libraries/networking/src/webrtc/WebRTCDataChannels.h
2021-07-08 14:54:21 +12:00
David Rowe
6a17143df8 Rename "HifiSockAddr" to "SockAddr" 2021-07-06 13:23:57 +12:00
David Rowe
cb89eabf74 Typo 2021-07-06 08:48:43 +12:00
David Rowe
28b46ed861 Log warning if try to set local port on WebRTC LimitedNodeList 2021-07-05 10:59:19 +12:00
David Rowe
319f3e7122 Misc fixes to AddressManager JSDoc 2021-07-05 10:43:50 +12:00
David Rowe
3ebb75acf5 Undo documentation improvements 2021-07-05 10:24:59 +12:00
David Rowe
7ecd9b6b8e Miscellaneous tidying 2021-07-04 16:38:47 +12:00
David Rowe
e682336cc2 Add missing Doxygen 2021-07-04 15:57:53 +12:00
David Rowe
f6a8ae285d Fix WebRTC peer connection not being closed properly 2021-07-04 15:50:52 +12:00
David Rowe
dacda8405c Typo 2021-07-03 08:43:31 +12:00
David Rowe
f02ffe1ed9 Use alternative signal/slot mechanism for Android compatibility 2021-07-02 12:05:29 +12:00
David Rowe
d0c89c7d91 Tidying 2021-06-30 22:21:38 +12:00
Kalila L
88b9b7468e CR. 2021-06-27 04:31:14 -04:00
Kalila
a217f80ee3
Update NodeList.cpp 2021-06-27 04:14:21 -04:00
David Rowe
2a9ab98e41 Miscellaneous tidying and fixes 2021-06-26 22:07:48 +12:00
David Rowe
5a5cb6488c Multiplex UDP and WebRTC sockets in a QUdpSocket-style NetworkSocket 2021-06-26 22:07:01 +12:00
David Rowe
d65ecead9f Abstract WebRTCDataChannel into a QUdpSocket-style WebRTCSocket 2021-06-26 21:20:26 +12:00
David Rowe
5b937a1580 WebRTCSignalingServer and WebRTCDataChannels improvements 2021-06-26 20:07:26 +12:00
David Rowe
c9d4fe8558 Remove unused code 2021-06-26 17:23:58 +12:00
Kalila L
2d4da7ba71 Add disable domain port auto discovery by assignment client option. 2021-06-21 13:22:48 -04:00
Kalila L
0625dbe53c Some URL updates. 2021-06-17 19:45:56 -04:00
Kalila L
1215ced6fa CR. 2021-06-15 15:02:03 -04:00
Kalila L
1411d55364 Add ability for 'handleLookupString' to have spaces. 2021-06-15 00:31:28 -04:00
Kalila L
51e6468abd Rename 'URL_SCHEME_HIFI' -> 'URL_SCHEME_VIRCADIA'. 2021-06-11 17:04:16 -04:00
David Rowe
2402a5e333 Merge remote-tracking branch 'upstream/webapp' into dev/webrtc-datachannel
# Conflicts:
#	domain-server/src/DomainServer.h
2021-06-05 14:27:18 +12:00
David Rowe
c28f4749ed Doxygen tidying 2021-06-01 09:34:38 +12:00
David Rowe
63ec933290 Code tidying 2021-06-01 09:34:17 +12:00
David Rowe
e6c49cf407 Fix data channel ID 2021-06-01 09:32:28 +12:00
David Rowe
6c37628468 Add WebRTC data channel 2021-05-31 12:29:48 +12:00
David Rowe
aa1c32ec53 Rename new domain server environment variable 2021-05-29 09:25:15 +12:00
David Rowe
6afb8044ea Add WebRTC signaling channel 2021-05-20 09:51:14 +12:00
David Rowe
4d11d1d515 Convert all "/**jsdoc" occurrences to "/*@jsdoc" 2021-05-12 10:54:45 +12:00
Heather Anderson
9f5e06503a begin identifying Packet Type ID=1 as "domain connect" for a future version of the protocol, so we can detect protocol breaks when we shift to using this as our domain connect packet. 2021-04-24 23:28:53 -07:00
Julian Groß
1cadfcc284
Merge branch 'master' into feature/qt-update 2021-04-16 01:55:51 +02:00
Kalila
a35b9c4563
Merge pull request #1126 from daleglass/hash_all_fingerprints
Hash Windows and Mac machine fingerprints.
2021-04-15 17:46:17 -04:00
David Rowe
312dc9ccb7 Update Chrome browser version 2021-04-12 15:30:23 +12:00
Kalila
333e3d49c6
Merge pull request #1143 from daleglass/add-missing-override
Add missing override keywords.
2021-04-02 16:24:12 -04:00
Dale Glass
6e9e11993c Add missing override keywords.
Fixes warnings like:

/libraries/entities-renderer/src/RenderableTextEntityItem.h:47:18: warning: ‘virtual bool render::entities::TextEntityRenderer::needsRenderUpdate() const’ can be marked override [-Wsuggest-override]
   47 |     virtual bool needsRenderUpdate() const;
      |                  ^~~~~~~~~~~~~~~~~
2021-04-02 00:04:46 +02:00
Dale Glass
2de61898e1 Review style fixes 2021-04-01 23:41:37 +02:00
David Rowe
6a7f4a0426 Redisplay "continue without avatar entities" when re-enter address 2021-03-29 21:14:00 +13:00
David Rowe
c45007d038 Merge branch 'master' into fix/can-rez-attachment
# Conflicts:
#	interface/src/Application.h
2021-03-29 15:28:08 +13:00
Kalila
58fde3c159
Merge pull request #1090 from digisomni/feature/expand-kick-functionality
Add improved functionality for `Users.kick` API.
2021-03-28 21:05:59 -04:00
Dale Glass
e02daae267 Hash Windows and Mac machine fingerprints.
Now all the fingerprints are hashed. This has the following benefits:

* It doesn't expose raw system IDs. The actual ID is hashed with a
  value unique to Vircadia, so that it doesn't match any other identifier.

* It should be more future-proof. Apple doesn't promise that the platform
  ID will have any particular format. The hashing means it doesn't matter
  if it stops being a valid UUID at some point.
2021-03-28 17:08:26 +02:00
David Rowe
41bd3c10c0 Fix up node permissions debug order 2021-03-23 15:22:08 +13:00
Kalila L
fd592dfb06 CR. 2021-03-19 04:11:26 -04:00
Kalila
9dadc44f6c
Update UserActivityLoggerScriptingInterface.h 2021-03-18 17:57:49 -04:00
Kalila
da7bcf1584
Update NodeList.cpp 2021-03-18 17:53:21 -04:00
Kalila L
0216b34681 State of refactoring 2021-03-17 19:37:06 -04:00
David Rowe
ddcfe6351b Tidying 2021-03-18 12:13:41 +13:00
David Rowe
2030d24523 Tidying 2021-03-16 14:37:16 +13:00
David Rowe
0c1f775dc5 Don't warn user if permission removed while they're connected 2021-03-15 20:55:42 +13:00
David Rowe
0adfd8b806 Ask user whether to continue to a domain if their wearables won't rez 2021-03-15 16:30:46 +13:00
Dale Glass
1ed767df41 Implement Linux machine fingerprints
We do this by using either /etc/machine-id, or hashing the MACs of all
non-virtual networking devices.

We make this fingerpint unique to our platform by adding our own string
to the hash, and add some stretching for good measure. This way Vircadia's
fingerprint isn't going to match the system's ID or anything another
application generates.
2021-03-14 21:15:33 +01:00
Kalila
5e2cc4c4bf
Merge pull request #1068 from daleglass/fix_resource_totals
Set resource total size to content size when using a qrc:// resource
2021-03-11 18:30:56 -05:00
David Rowe
db0f7a9884 Fix flash of avatar entity when domain restarts 2021-03-11 20:14:03 +13:00
Kalila L
78cc98bc7b Add improved functionality for Users.kick API.
Add banByUsername, banByFingerprint, and banByIP parameters.
2021-03-11 01:03:54 -05:00
David Rowe
091efaee60 Don't rez own avatar entities if don't have permission 2021-03-09 11:15:26 +13:00
Kalila L
b5d89c44bf Rename "INITIAL_STARTUP_LOCATION" -> "PRELOADED_STARTUP_LOCATION". 2021-03-08 02:01:53 -05:00
Kalila L
3ed98d0f3e Add "ScriptGatekeeper" class and "PRELOADED_SCRIPT_WHITELIST" variable. 2021-03-08 02:00:34 -05:00
David Rowe
dd674c395e Default canRezAvatarEntities on domains without new permission 2021-03-05 16:27:32 +13:00
David Rowe
8b6182e756 Misc fixes 2021-03-01 15:24:13 +13:00
Dale Glass
b102b3477a Set resource total size to content size when using a qrc:// resource
When a Resource is requested from qrc://, the Resource::handleDownloadProgress
event is never called, and therefore _bytesTotal remains at zero. This confuses
ResourceCache later, which has a sanity check that doesn't pass when resources
are retrieved, yet no data accumulates.

Fixes #1065
2021-02-26 20:04:53 +01:00
Kalila L
6b5cffa5e4 Initial pass at adding canRezAvatarEntities. 2021-02-26 06:14:06 -05:00
Kalila
ba54dd755c
Merge pull request #1034 from vircadia/v2021.1.0-rc
merge V2021.1.0 rc into master
2021-02-22 00:16:36 -05:00
HifiExperiments
30c4779eeb name all the threads 2021-02-13 20:17:28 -08:00
HifiExperiments
f46f1b2219 Merge branch 'master' into alignment 2021-02-11 18:07:23 -08:00
HifiExperiments
b296fff197 add text alignment property 2021-02-10 21:45:53 -08:00
HifiExperiments
0645866549
Merge branch 'master' into billboard 2021-02-09 23:28:58 -08:00
HifiExperiments
ae26416c59
Merge branch 'master' into billboard 2021-02-09 22:57:10 -08:00
HifiExperiments
f1d6a4e3d4
Merge branch 'master' into feature/web-entity-user-agent 2021-02-09 22:47:46 -08:00
Kalila L
c57b1a92f3 CR + update user agent. 2021-01-30 02:16:53 -05:00
Kalila L
82313eccbf Add userAgent property for web entities. 2021-01-21 01:51:37 -05:00
HifiExperiments
030524c3ee CR and actually send property over wire 2021-01-03 21:03:43 -08:00
HifiExperiments
6e0bad814e working on billboard mode for all entity types 2021-01-03 20:33:08 -08:00
daleglass
f894a0a141
Merge pull request #877 from vircadia/feature/domain-server-reporting-socket
Send address and port with each metaverse heartbeat.
2020-12-26 20:40:58 +01:00
Kalila L
16eca5d855 Get most 'project-athena' -> 'vircadia' references. 2020-12-13 04:42:34 -05:00
Kalila L
5d4612e400 Update 'kasenvr' -> 'vircadia' 2020-12-10 18:56:57 -05:00
Kalila L
97681786cd Potentially fix STUN IP+Port init for heartbeat issue? 2020-11-25 04:54:47 -05:00
kasenvr
b091557cb5
Merge pull request #848 from humbletim/smarter-scriptcache
ScriptCache: add local file change detection
2020-11-05 17:20:04 -05:00
humbletim
a7fb294a1b
Update libraries/networking/src/ResourceRequest.cpp
Co-authored-by: David Rowe <david@ctrlaltstudio.com>
2020-10-31 13:39:29 -04:00
kasenvr
2b511d8c45
Merge pull request #613 from odysseus654/pr/registerListener
[enhancement] transition listener registration from member string name to member string pointer
2020-10-29 17:13:05 -04:00
humbletim
ae7aa3eb88 update ScriptCache to detect local script modifications 2020-10-29 11:30:33 -04:00