Home | History | Annotate | Download | only in base

Lines Matching refs:allocation

72 // Encapsulates a TURN allocation.
73 // The object is created when an allocation request is received, and then
75 // (via HandleChannelData) for this allocation when received by the server.
77 class TurnServer::Allocation : public talk_base::MessageHandler,
80 Allocation(TurnServer* server_,
84 virtual ~Allocation();
98 sigslot::signal1<Allocation*> SignalDestroyed;
146 // allocation, and self-deletes when its lifetime timer expires.
166 // allocation, and self-deletes when its lifetime timer expires.
296 // This is a channel message; let the allocation handle it.
297 Allocation* allocation = FindAllocation(&conn);
298 if (allocation) {
299 allocation->HandleChannelData(data, size);
320 // existing allocation, the key will already be cached.
321 Allocation* allocation = FindAllocation(conn);
323 if (!allocation) {
326 key = allocation->key();
336 if (!allocation && msg.type() == STUN_ALLOCATE_REQUEST) {
339 } else if (allocation &&
341 msg.transaction_id() == allocation->transaction_id())) {
346 allocation->username()) {
351 allocation->HandleTurnMessage(&msg);
353 // Allocation mismatch.
415 Allocation* allocation = FindAllocation(conn);
416 if (enable_otu_nonce_ && allocation &&
417 allocation->last_nonce() == nonce_attr->GetString()) {
423 if (allocation) {
424 allocation->set_last_nonce(nonce_attr->GetString());
464 // Create the allocation and let it send the success response.
465 // If the actual socket allocation fails, send an internal error.
466 Allocation* alloc = CreateAllocation(conn, proto, key);
510 TurnServer::Allocation* TurnServer::FindAllocation(Connection* conn) {
515 TurnServer::Allocation* TurnServer::CreateAllocation(Connection* conn,
524 // The Allocation takes ownership of the socket.
525 Allocation* allocation = new Allocation(this,
527 allocation->SignalDestroyed.connect(this, &TurnServer::OnAllocationDestroyed);
528 allocations_[*conn] = allocation;
529 return allocation;
570 void TurnServer::OnAllocationDestroyed(Allocation* allocation) {
572 talk_base::AsyncPacketSocket* socket = allocation->conn()->socket();
575 // Skip if the socket serving this allocation is UDP, as this will be shared
581 AllocationMap::iterator it = allocations_.find(*(allocation->conn()));
621 TurnServer::Allocation::Allocation(TurnServer* server,
632 this, &TurnServer::Allocation::OnExternalPacket);
635 TurnServer::Allocation::~Allocation() {
645 LOG_J(LS_INFO, this) << "Allocation destroyed";
648 std::string TurnServer::Allocation::ToString() const {
654 void TurnServer::Allocation::HandleTurnMessage(const TurnMessage* msg) {
679 void TurnServer::Allocation::HandleAllocateRequest(const TurnMessage* msg) {
687 // Figure out the lifetime and start the allocation timer.
691 LOG_J(LS_INFO, this) << "Created allocation, lifetime=" << lifetime_secs;
711 void TurnServer::Allocation::HandleRefreshRequest(const TurnMessage* msg) {
719 LOG_J(LS_INFO, this) << "Refreshed allocation, lifetime=" << lifetime_secs;
732 void TurnServer::Allocation::HandleSendIndication(const TurnMessage* msg) {
752 void TurnServer::Allocation::HandleCreatePermissionRequest(
774 void TurnServer::Allocation::HandleChannelBindRequest(const TurnMessage* msg) {
805 &TurnServer::Allocation::OnChannelDestroyed);
823 void TurnServer::Allocation::HandleChannelData(const char* data, size_t size) {
837 void TurnServer::Allocation::OnExternalPacket(
867 int TurnServer::Allocation::ComputeLifetime(const TurnMessage* msg) {
877 bool TurnServer::Allocation::HasPermission(const talk_base::IPAddress& addr) {
881 void TurnServer::Allocation::AddPermission(const talk_base::IPAddress& addr) {
886 this, &TurnServer::Allocation::OnPermissionDestroyed);
893 TurnServer::Permission* TurnServer::Allocation::FindPermission(
903 TurnServer::Channel* TurnServer::Allocation::FindChannel(int channel_id) const {
912 TurnServer::Channel* TurnServer::Allocation::FindChannel(
922 void TurnServer::Allocation::SendResponse(TurnMessage* msg) {
928 void TurnServer::Allocation::SendBadRequestResponse(const TurnMessage* req) {
932 void TurnServer::Allocation
937 void TurnServer::Allocation::SendExternal(const void* data, size_t size,
942 void TurnServer::Allocation::OnMessage(talk_base::Message* msg) {
948 void TurnServer::Allocation::OnPermissionDestroyed(Permission* perm) {
954 void TurnServer::Allocation::OnChannelDestroyed(Channel* channel) {