Commit graph

327 commits

Author SHA1 Message Date
Stephen Birarda
66d4eeb805 enforce both a version and hash match for packets 2014-02-07 11:10:38 -08:00
Stephen Birarda
d39cccde77 add a method to find a node and upate based on packet 2014-02-07 10:32:16 -08:00
Stephen Birarda
7ceacd2751 remove blank if and fix ping reply construction 2014-02-07 10:24:01 -08:00
Stephen Birarda
fa1825fa32 repairs to ping-reply, removal of deconstructPacketHeader to simply return UUID 2014-02-07 10:20:50 -08:00
Stephen Birarda
b988308a8d leverage writeDatagram helper in NodeList, ping if no active socket 2014-02-07 09:49:54 -08:00
Stephen Birarda
97a7369c76 remove senderWithAddress from NodeList 2014-02-06 14:43:46 -08:00
Stephen Birarda
a823722d27 add writeDatagram helper to NodeList to insert md5 hash 2014-02-06 14:28:58 -08:00
Stephen Birarda
e72f6d16cc rename NodeList ownerUUID to sessionUUID 2014-02-06 11:43:23 -08:00
Stephen Birarda
3dca04aacb have the domain-server generate connection secrets, closes #1837 2014-02-06 11:30:53 -08:00
Stephen Birarda
6f638fa62c have domain-server create a UUID for unidentified nodes, closes #1840 2014-02-06 10:34:34 -08:00
Brad Hefta-Gaub
a05e07460f fix windows build errors and warnings 2014-02-05 13:54:17 -08:00
Stephen Birarda
a07511ed2c remove an unecessary line 2014-01-31 10:05:46 -08:00
Stephen Birarda
ddbcfbd02f remove an extra debug for ping packets 2014-01-31 09:56:18 -08:00
Stephen Birarda
c989a64e90 repair ping packet parsing in creation of reply 2014-01-31 09:54:52 -08:00
Andrzej Kapolka
1e9e298a75 Missing includes. 2014-01-29 13:47:13 -08:00
Stephen Birarda
423e1598f0 use NodeSet in place of QSet<NodeType_t> where possible 2014-01-28 13:41:39 -08:00
Stephen Birarda
4de270b832 cleanup Node types, closes #1726 2014-01-28 13:38:33 -08:00
Stephen Birarda
cda06d1cb3 replace uint64_t with quint64 for Qt friendlyness 2014-01-28 12:35:42 -08:00
Stephen Birarda
7b4921e761 use quint64 in place of uint64_t for QDataStream 2014-01-28 12:34:08 -08:00
Stephen Birarda
b009cd8e67 repair more node communication problems after refactor 2014-01-28 12:25:44 -08:00
Stephen Birarda
ffefc529f3 ensure UUID pulled from packet header is exactly 16 bytes 2014-01-28 11:53:09 -08:00
Stephen Birarda
75e2fa491a some type fixes for marshalling/un-marshalling of data 2014-01-28 11:26:36 -08:00
Stephen Birarda
3854f75abd cleanup some UUID packing 2014-01-28 10:41:40 -08:00
Stephen Birarda
4103cc1cde packet header changes and beginning of conversion to QByteArray 2014-01-28 10:36:08 -08:00
AndrewMeadows
ea681f0d8f Merge pull request #1669 from birarda/avatar-list
add an AvatarManager to house a separate list of Avatars from NodeList
2014-01-24 09:54:17 -08:00
Leonardo Murillo
6dae086f32 changing default domain closes #1676 2014-01-24 08:49:07 -06:00
Stephen Birarda
4ebd5795fc handle merge with nodelist-patches branch 2014-01-23 16:01:52 -08:00
Stephen Birarda
ed9118fd67 more NodeList QSet changes, closes #1660 2014-01-23 15:28:46 -08:00
Stephen Birarda
ba7a73e347 add a missing break, don't double activate sockets 2014-01-23 15:11:09 -08:00
Stephen Birarda
761bcb9825 allow recursive locking on the NodeHashMutex 2014-01-23 15:11:02 -08:00
Stephen Birarda
09cd8eb0fd add a missing break, don't double activate sockets 2014-01-23 15:05:09 -08:00
Stephen Birarda
e7927ff837 allow recursive locking on the NodeHashMutex 2014-01-23 15:02:23 -08:00
Stephen Birarda
9ab1fc4c2c resolve conflicts on merge with upstream/master 2014-01-23 14:43:04 -08:00
Stephen Birarda
1f95d0c017 have avatar-mixer report avatar kills to all avatars 2014-01-23 12:47:27 -08:00
Stephen Birarda
a9f1984676 add an AvatarManager that will keep Avatars in Application thread 2014-01-23 11:59:24 -08:00
Philip Rosedale
5e77f5643d Merge pull request #1630 from birarda/nodelist-set
change node types of interest to a QSet
2014-01-23 11:42:37 -08:00
Stephen Birarda
b5a72ef669 more nodelist repairs for concurrency issues 2014-01-23 11:11:22 -08:00
Stephen Birarda
04286e39e6 use NodeList getNodeHash getter for methods that can be called from other threads 2014-01-23 10:49:51 -08:00
Stephen Birarda
7efc9e2e78 move datagram processing back to separate thread 2014-01-23 10:32:23 -08:00
Stephen Birarda
ec04d5450b Merge branch 'master' of https://github.com/highfidelity/hifi into nodelist-set 2014-01-22 16:16:47 -08:00
Stephen Birarda
e9e2557576 change node types of interest to a QSet 2014-01-22 14:47:04 -08:00
Stephen Birarda
d57aec9793 don't use separate NodeList owner UUID and Avatar UUID 2014-01-22 11:48:04 -08:00
Stephen Birarda
594165782a repair badly scoped usage of QMutexLocker 2014-01-17 16:20:22 -08:00
Stephen Birarda
fad7bde0e1 add mutex locking to NodeHash 2014-01-17 16:02:57 -08:00
Stephen Birarda
816b324236 switch to explicit lock and unlock in removeSilentNodes 2014-01-17 15:17:10 -08:00
Stephen Birarda
3355b71d6b switch back to returning iterator from killNodeAtHashIterator 2014-01-17 15:13:56 -08:00
Stephen Birarda
d85616d690 cleaup matching with node in addOrUpdateNode 2014-01-16 16:14:25 -08:00
Brad Hefta-Gaub
cdfc328f79 remove no longer needed compiler warning disable 2014-01-16 14:38:14 -08:00
Stephen Birarda
323aa18c0e remove MotionDriver and pthread libraries 2014-01-16 14:16:38 -08:00
Brad Hefta-Gaub
bd6e30070d Merge branch 'master' of git://github.com/worklist/hifi into windows_build
Conflicts:
	libraries/shared/src/NodeList.cpp
	libraries/shared/src/NodeList.h
2014-01-15 13:18:25 -08:00
Stephen Birarda
0b52b8266e don't return an iterator from killNodeAtHashIterator 2014-01-15 12:44:46 -08:00
Brad Hefta-Gaub
477840904b Merge branch 'master' of git://github.com/worklist/hifi into windows_build 2014-01-15 12:09:26 -08:00
Stephen Birarda
b4438c04c6 return result of QHash value from nodeWithUUID 2014-01-15 11:31:23 -08:00
Brad Hefta-Gaub
170dbe6e85 Merge branch 'master' of git://github.com/worklist/hifi into windows_build
Conflicts:
	assignment-client/src/audio/AudioMixer.cpp
	domain-server/src/DomainServer.cpp
	interface/src/Audio.cpp
	interface/src/DataServerClient.cpp
	interface/src/Oscilloscope.cpp
	interface/src/PairingHandler.cpp
	interface/src/Util.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/devices/Faceshift.cpp
	interface/src/devices/SerialInterface.cpp
	interface/src/renderer/FBXReader.cpp
	libraries/avatars/src/AvatarData.h
	libraries/octree-server/src/OctreeServer.cpp
	libraries/octree-server/src/OctreeServer.h
	libraries/octree/src/ViewFrustum.cpp
	libraries/shared/src/Logging.cpp
	libraries/shared/src/Node.cpp
	libraries/shared/src/Node.h
	libraries/shared/src/NodeList.cpp
	libraries/shared/src/NodeList.h
	libraries/shared/src/PerfStat.cpp
	libraries/shared/src/SharedUtil.cpp
	libraries/voxels/src/VoxelTree.cpp
	voxel-edit/src/main.cpp
2014-01-15 10:20:21 -08:00
Stephen Birarda
13dfe91358 remove newlines from Node debug 2014-01-15 09:42:11 -08:00
Stephen Birarda
e76a37f48b resolve conflicts on merge with upstream master 2014-01-14 16:26:02 -08:00
Stephen Birarda
599e3bb9e5 resolve conflicts on merge with upstream master 2014-01-14 16:15:58 -08:00
Stephen Birarda
77ee27e5d7 resolve conflicts on merge with upstream master 2014-01-14 16:12:42 -08:00
Stephen Birarda
8676ac38f9 foreach spacing and reference repairs 2014-01-14 15:54:09 -08:00
Stephen Birarda
987c639e36 initial newline removal from all QDebug calls 2014-01-14 13:09:22 -08:00
Stephen Birarda
bdc31a3b48 replace the DomainChangeListener class with a signal/slot combo 2014-01-14 11:38:05 -08:00
Stephen Birarda
fa01383f3f move the NodeList to the thread used for a ThreadedAssignment 2014-01-14 11:26:26 -08:00
Stephen Birarda
e888366fd8 remove unused index variable 2014-01-14 10:57:34 -08:00
Stephen Birarda
718d04bd71 correct iterator push on NodeList clear 2014-01-14 10:53:17 -08:00
Stephen Birarda
66f50c38e3 repair iterator push on silent node removal 2014-01-14 10:48:47 -08:00
Stephen Birarda
ed0ed96029 properly emit signal on silent node removal 2014-01-14 10:28:41 -08:00
Stephen Birarda
57f977668f replace the Node mutex with a QMutex 2014-01-14 10:15:31 -08:00
Stephen Birarda
53d435006c more follow mode cleanup, fix silent node iterator 2014-01-14 10:07:26 -08:00
Stephen Birarda
3ab7a6d9d5 move network packet processing to main thread 2014-01-13 17:58:48 -08:00
Stephen Birarda
1faa2120aa use typedef in NodeList implementation 2014-01-13 17:36:27 -08:00
Stephen Birarda
0579b18426 fix deadlock in silent node removal 2014-01-13 17:33:58 -08:00
Stephen Birarda
6a0c431562 repair add of new node (so it doesn't immediately kill) 2014-01-13 17:29:45 -08:00
Stephen Birarda
677303b5c0 properly hook SharedNodePointer for signals/slots 2014-01-13 17:17:53 -08:00
Stephen Birarda
7d1a64ca8c change NodeList container to QHash with QSharedPointer 2014-01-13 17:09:21 -08:00
Brad Hefta-Gaub
483ac66518 more windows build tweaks, warnings and linking 2014-01-13 11:48:16 -08:00
Brad Hefta-Gaub
55babbf7b6 windows type mismatch warning fixes 2014-01-13 00:30:23 -08:00
Brad Hefta-Gaub
b0f8e21d06 more windows build hackery 2014-01-10 20:36:37 -08:00
Brad Hefta-Gaub
731209d8cb remove unused PerfStats class more missing header changes 2014-01-10 19:47:23 -08:00
Andrew Meadows
d28ed70ca9 merge pull request 1446 2014-01-10 15:55:38 -08:00
Stephen Birarda
591876eaf3 notify for node kill on NodeList clear 2014-01-02 10:01:47 -08:00
ZappoMan
90a2fd31ef fixed spacing 2013-12-19 15:17:29 -08:00
ZappoMan
bfbaf265dd first cut at added clockSkew support to nodes and PING/PING_REPLY 2013-12-19 13:14:14 -08:00
Stephen Birarda
04b13149b5 remove unneeded include in NodeList 2013-12-05 17:39:37 -08:00
Stephen Birarda
c2e11e8d8c more NodeList cleanup 2013-12-05 17:39:02 -08:00
Stephen Birarda
8f4e641ade remove NodeList threads that are deprecated 2013-12-05 17:11:58 -08:00
Stephen Birarda
3f9e00d977 fix a boneheaded mistake in AvatarMixer broadcastAvatarData 2013-12-05 15:10:01 -08:00
Stephen Birarda
6f7e16dc22 hook VS to new QCA infrastructure 2013-12-03 11:11:08 -08:00
Stephen Birarda
606eaa579a switch node pinging to QTimer in QCoreApplication instance 2013-12-03 10:57:31 -08:00
Stephen Birarda
330eff72ce repair usage of DS as STUN server 2013-12-02 17:18:07 -08:00
Stephen Birarda
1e279cf99c hook AudioMixer to new event-driven assignment setup 2013-12-02 16:34:38 -08:00
Stephen Birarda
49191826af add check for pending datagrams before read 2013-12-02 14:08:49 -08:00
Stephen Birarda
141394a664 replace UDPSocket with QUDPSocket 2013-12-02 13:34:29 -08:00
Andrzej Kapolka
092515e199 Send an explicit kill request to the avatar mixer (which will pass it along to
the other clients) when we exit.
2013-11-22 15:19:59 -08:00
Stephen Birarda
771021995b add helper to ping with inactive socket 2013-11-05 12:34:56 -08:00
Stephen Birarda
03b23b504f reference global with colon 2013-10-29 16:05:23 -07:00
Stephen Birarda
66b27fa607 have silent node removal flag reset on join 2013-10-29 15:59:09 -07:00
Stephen Birarda
6e9ee93ed6 add debug for sleep amount to AvatarMixer 2013-10-29 15:28:10 -07:00
Stephen Birarda
08a368a9fd add debug to catch AvatarMixer ghosting 2013-10-29 15:21:55 -07:00
Stephen Birarda
9dbbf8c65c don't alloc memory for checkInPacket, make it stack to function 2013-10-25 09:22:23 -07:00
ZappoMan
9492c3de18 various memory leaks and compiler warning fixes 2013-10-25 00:05:52 -07:00
Stephen Birarda
0dd16cfc1e debug a STUN reponse that only changes port 2013-10-18 15:27:35 -07:00
Stephen Birarda
32680bbaad continued STUN requests for keepalive, propagate socket changes 2013-10-18 15:05:16 -07:00
Stephen Birarda
d85c0bb88a add a DELETE method to civetweb to delete assignment by UUID 2013-10-18 10:25:35 -07:00
Stephen Birarda
11a05481e1 remove an infamous birarda extra g 2013-10-17 17:54:52 -07:00
Stephen Birarda
ded7735572 remove crazy debug from testing 2013-10-17 17:54:25 -07:00
Stephen Birarda
a4798acb22 bring ping interval back to 1 second 2013-10-17 17:35:24 -07:00
Stephen Birarda
b25487cda3 increase the ping interval 2013-10-17 17:33:34 -07:00
Stephen Birarda
65e0670eba Merge branch 'master' of github.com:worklist/hifi into assignment 2013-10-17 17:25:21 -07:00
Stephen Birarda
19e6f668d2 add debug to test hole punching 2013-10-17 17:25:14 -07:00
Stephen Birarda
b4ef3dbd8a add ping/reply to assignment-client servers 2013-10-17 16:56:52 -07:00
Stephen Birarda
75d8934961 fix pinging of agents in broadcast to nodes 2013-10-17 16:46:49 -07:00
Stephen Birarda
87d6c0085f add a fallback if STUN to outside server isn't possible 2013-10-17 15:11:02 -07:00
Stephen Birarda
4bbb59be72 fix use of htonl in constant outside function 2013-10-17 14:45:38 -07:00
Stephen Birarda
8f1135feb7 more repairs to Agent and AvatarData for UUID transition 2013-10-17 14:35:42 -07:00
Stephen Birarda
74e66dfd35 push various PACKET_TYPES, repairs to Agent for UUID setup 2013-10-17 13:35:53 -07:00
Stephen Birarda
fa146e302d remove 16-bit node IDs and replace with UUIDs 2013-10-17 11:49:41 -07:00
Stephen Birarda
012fccc72e send ping to AvM and VS for socket activation 2013-10-16 18:01:15 -07:00
Stephen Birarda
7de88898e1 activate appropriate socket after receiving ping reply 2013-10-16 17:51:32 -07:00
Stephen Birarda
849e5817ec remove a couple of spaces 2013-10-16 17:27:16 -07:00
Stephen Birarda
224b0d9671 domain server accepts custom public address from node 2013-10-16 16:27:13 -07:00
Stephen Birarda
f581d4d976 handle STUN request and response in NodeList 2013-10-16 16:01:23 -07:00
Stephen Birarda
5ca805693c reset nodeTypesOfInterest on NodeList reset 2013-10-11 17:48:54 -07:00
Stephen Birarda
0eae0f129c allow audio injection from javascript 2013-10-11 17:37:48 -07:00
Stephen Birarda
515e2d5a23 handle conflicts on merge with upstream master 2013-10-11 14:24:05 -07:00
Stephen Birarda
8be527f85d remove sleep time debug 2013-10-11 11:15:10 -07:00
Stephen Birarda
13ac5472ea fix an idiotic bug with silent node kill thread 2013-10-11 10:23:59 -07:00
Stephen Birarda
60095bcbca add debug on NodeList clear 2013-10-11 10:08:28 -07:00
Philip Rosedale
53e2486d4d Merge pull request #1045 from birarda/data-server
fix bug with constant avatar kill/adds
2013-10-10 18:05:23 -07:00
Stephen Birarda
7d68c79fd8 fix bug with constant avatar kill adds 2013-10-10 17:40:01 -07:00
Stephen Birarda
aa0a97b959 use deleteLater to ensure that AvatarVoxelSystem delete is on correct thread 2013-10-10 16:23:22 -07:00
Stephen Birarda
36a57e2a98 remove more debugging in NodeList 2013-10-09 10:42:33 -07:00
Stephen Birarda
7d69c6f211 remove extraneous debugging in NodeList 2013-10-09 10:41:33 -07:00
Stephen Birarda
6fe0b0b124 don’t have AvatarMixer ask DS for agents 2013-10-09 10:40:19 -07:00
Stephen Birarda
40dd698293 don’t have AvatarMixer ask DS for agents 2013-10-08 11:07:46 -07:00
Stephen Birarda
0e5c5886b6 touchups to DS with static assignment file 2013-09-30 13:11:46 -07:00
Stephen Birarda
ef1ff01188 resolve conflicts on merge with upstream/master 2013-09-30 10:12:54 -07:00
stojce
a0f23d409e Merging changes 2013-09-28 13:16:50 +02:00
Stephen Birarda
70c5d3e349 decouple DS from main, move to C++11 2013-09-26 15:03:43 -07:00
Stephen Birarda
23e7278be5 re-use the check in packet sent to the domain-server, allow reset 2013-09-19 12:58:48 -07:00
Stephen Birarda
de276eff00 temporary removal of DS packet optimization for NodeList dynamism 2013-09-18 17:56:45 -07:00
Stephen Birarda
7b498edcbc remove attached public and local sockets, fully allow custom port 2013-09-18 17:03:14 -07:00
Stephen Birarda
b4f9e393a4 prefer IPv4 address when looking up for domain IP 2013-09-18 15:05:23 -07:00
Stephen Birarda
a9efa169be fix ordering of QHostAdress to s_addr 2013-09-18 14:58:44 -07:00
Stephen Birarda
9fa695b71c allow setting of custom port via domainHostname setting 2013-09-18 13:50:14 -07:00
Stephen Birarda
ab85c4109d use QHostInfo and QHostAddress for DS changes in NodeList 2013-09-18 13:29:53 -07:00
Stephen Birarda
7220643fe9 default AC to point to DS on localhost and default port 2013-09-18 12:04:09 -07:00
Stephen Birarda
001432ec55 have domain-server reject audio and avatar mixers with bad UUID 2013-09-17 16:40:30 -07:00
Stephen Birarda
8d7b4ab321 add debugging for assignment send and remove a useless cast 2013-09-12 17:37:37 -07:00
Stephen Birarda
dfede2b947 rename direction to command for assignment 2013-09-11 14:43:37 -07:00
Stephen Birarda
b7aa49cf97 have DS act as AS and hand assignments directly 2013-09-11 12:16:47 -07:00