Bug 825927 Patch 0: Clean up whitespace r=ekr
authorAdam Roach [:abr] <adam@nostrum.com>
Fri, 25 Jan 2013 14:07:28 -0600
changeset 120371 01b9474f522ce2b381be96544e94efbaa872d8fa
parent 120370 0bbcb088b1b8d6df646a516f3be193883b128135
child 120372 e228c4f5d681f59124226f071aa0fcf6ae86a5cf
push id24251
push userryanvm@gmail.com
push dateThu, 31 Jan 2013 20:56:22 +0000
treeherdermozilla-central@683b08dc1afd [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersekr
bugs825927
milestone21.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 825927 Patch 0: Clean up whitespace r=ekr
media/mtransport/third_party/nICEr/src/ice/ice_candidate.c
media/mtransport/third_party/nICEr/src/ice/ice_candidate.h
media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c
media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.h
media/mtransport/third_party/nICEr/src/ice/ice_component.c
media/mtransport/third_party/nICEr/src/ice/ice_component.h
media/mtransport/third_party/nICEr/src/ice/ice_ctx.c
media/mtransport/third_party/nICEr/src/ice/ice_ctx.h
media/mtransport/third_party/nICEr/src/ice/ice_handler.h
media/mtransport/third_party/nICEr/src/ice/ice_media_stream.c
media/mtransport/third_party/nICEr/src/ice/ice_peer_ctx.c
media/mtransport/third_party/nICEr/src/ice/ice_socket.c
media/mtransport/third_party/nICEr/src/ice/ice_socket.h
media/mtransport/third_party/nICEr/src/net/nr_socket.c
media/mtransport/third_party/nICEr/src/net/transport_addr.c
media/mtransport/third_party/nICEr/src/stun/addrs.c
media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c
media/mtransport/third_party/nICEr/src/stun/stun_codec.c
media/mtransport/third_party/nICEr/src/stun/stun_proc.c
media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.c
media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.h
media/mtransport/third_party/nICEr/src/stun/stun_util.c
media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c
media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.h
media/mtransport/third_party/nICEr/src/util/cb_args.c
media/mtransport/third_party/nICEr/src/util/ice_util.c
media/mtransport/third_party/nICEr/src/util/mbslen.c
media/mtransport/third_party/nrappkit/src/event/async_timer.h
media/mtransport/third_party/nrappkit/src/event/async_wait.h
media/mtransport/third_party/nrappkit/src/event/async_wait_int.h
media/mtransport/third_party/nrappkit/src/log/r_log.c
media/mtransport/third_party/nrappkit/src/log/r_log.h
media/mtransport/third_party/nrappkit/src/plugin/nr_plugin.h
media/mtransport/third_party/nrappkit/src/port/darwin/include/csi_platform.h
media/mtransport/third_party/nrappkit/src/port/linux/include/csi_platform.h
media/mtransport/third_party/nrappkit/src/port/linux/include/linux_funcs.h
media/mtransport/third_party/nrappkit/src/port/linux/include/sys/ttycom.h
media/mtransport/third_party/nrappkit/src/port/win32/include/csi_platform.h
media/mtransport/third_party/nrappkit/src/registry/c2ru.c
media/mtransport/third_party/nrappkit/src/registry/c2ru.h
media/mtransport/third_party/nrappkit/src/registry/registry.c
media/mtransport/third_party/nrappkit/src/registry/registry.h
media/mtransport/third_party/nrappkit/src/registry/registry_int.h
media/mtransport/third_party/nrappkit/src/registry/registry_local.c
media/mtransport/third_party/nrappkit/src/registry/registry_vtbl.h
media/mtransport/third_party/nrappkit/src/registry/registrycb.c
media/mtransport/third_party/nrappkit/src/share/nr_api.h
media/mtransport/third_party/nrappkit/src/share/nr_common.h
media/mtransport/third_party/nrappkit/src/share/nr_reg_keys.h
media/mtransport/third_party/nrappkit/src/stats/nrstats.h
media/mtransport/third_party/nrappkit/src/util/byteorder.c
media/mtransport/third_party/nrappkit/src/util/byteorder.h
media/mtransport/third_party/nrappkit/src/util/hex.c
media/mtransport/third_party/nrappkit/src/util/hex.h
media/mtransport/third_party/nrappkit/src/util/libekr/assoc.h
media/mtransport/third_party/nrappkit/src/util/libekr/debug.c
media/mtransport/third_party/nrappkit/src/util/libekr/debug.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_common.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_crc32.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_data.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_data.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_defaults.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_includes.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_list.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_list.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_macros.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_replace.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_thread.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_time.c
media/mtransport/third_party/nrappkit/src/util/libekr/r_time.h
media/mtransport/third_party/nrappkit/src/util/libekr/r_types.h
media/mtransport/third_party/nrappkit/src/util/p_buf.c
media/mtransport/third_party/nrappkit/src/util/p_buf.h
media/mtransport/third_party/nrappkit/src/util/util.c
media/mtransport/third_party/nrappkit/src/util/util.h
--- a/media/mtransport/third_party/nICEr/src/ice/ice_candidate.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_candidate.c
@@ -111,46 +111,46 @@ int nr_ice_candidate_create(nr_ice_ctx *
       }
     }
 
     if(ctype==RELAYED)
       cand->u.relayed.turn_sock=osock;
 
     /* Add the candidate to the isock list*/
     TAILQ_INSERT_TAIL(&isock->candidates,cand,entry_sock);
-    
+
     *candp=cand;
 
     _status=0;
   abort:
     return(_status);
   }
 
 
 
 /* Create a peer reflexive candidate */
 int nr_ice_peer_peer_rflx_candidate_create(nr_ice_ctx *ctx,char *label, nr_ice_component *comp,nr_transport_addr *addr, nr_ice_candidate **candp)
   {
     nr_ice_candidate *cand=0;
     nr_ice_candidate_type ctype=PEER_REFLEXIVE;
     int r,_status;
- 
+
     if(!(cand=RCALLOC(sizeof(nr_ice_candidate))))
       ABORT(R_NO_MEMORY);
     if(!(cand->label=r_strdup(label)))
       ABORT(R_NO_MEMORY);
 
     cand->state=NR_ICE_CAND_STATE_INITIALIZED;
     cand->ctx=ctx;
     cand->type=ctype;
     cand->component_id=comp->component_id;
     cand->component=comp;
     cand->stream=comp->stream;
 
-    
+
     r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): creating candidate %s with type %d",
       ctx->label,label,ctype);
 
     if(r=nr_transport_addr_copy(&cand->base,addr))
       ABORT(r);
     if(r=nr_transport_addr_copy(&cand->addr,addr))
       ABORT(r);
     /* Bogus foundation */
@@ -189,17 +189,17 @@ int nr_ice_candidate_destroy(nr_ice_cand
     }
 
     NR_async_timer_cancel(cand->delay_timer);
     NR_async_timer_cancel(cand->ready_cb_timer);
 
     RFREE(cand->foundation);
     RFREE(cand->label);
     RFREE(cand);
-    
+
     return(0);
   }
 
 void nr_ice_candidate_destroy_cb(NR_SOCKET s, int h, void *cb_arg)
   {
     nr_ice_candidate *cand=cb_arg;
     nr_ice_candidate_destroy(&cand);
   }
@@ -278,17 +278,17 @@ int nr_ice_candidate_compute_priority(nr
         break;
       default:
         ABORT(R_INTERNAL);
     }
 
     if(type_preference > 126)
       r_log(LOG_ICE,LOG_ERR,"Illegal type preference %d",type_preference);
 
-      
+
     if(r=NR_reg_get2_uchar(NR_ICE_REG_PREF_INTERFACE_PRFX,cand->base.ifname,
       &interface_preference)) {
       if (r==R_NOT_FOUND) {
         if (next_automatic_preference == 1) {
           r_log(LOG_ICE,LOG_DEBUG,"Out of preference values. Can't assign one for interface %s",cand->base.ifname);
           ABORT(R_NOT_FOUND);
         }
         r_log(LOG_ICE,LOG_DEBUG,"Automatically assigning preference for interface %s->%d",cand->base.ifname,
@@ -305,17 +305,17 @@ int nr_ice_candidate_compute_priority(nr
     }
 
     cand->priority=
       (type_preference << 24) |
       (interface_preference << 16) |
       (stun_priority << 8) |
       (256 - cand->component_id);
 
-    /* S 4.1.2 */    
+    /* S 4.1.2 */
     assert(cand->priority>=1&&cand->priority<=2147483647);
 
     _status=0;
   abort:
     return(_status);
   }
 
 static void nr_ice_candidate_fire_ready_cb(NR_SOCKET s, int how, void *cb_arg)
@@ -379,45 +379,45 @@ static void nr_ice_srvrflx_start_stun_ti
 /* TODO: if the response is a BINDING-ERROR-RESPONSE, then restart
  * TODO: using NR_STUN_CLIENT_MODE_BINDING_REQUEST because the
  * TODO: server may not have understood the 0.96-style request */
     if(r=nr_stun_client_start(cand->u.srvrflx.stun, NR_STUN_CLIENT_MODE_BINDING_REQUEST_STUND_0_96, nr_ice_srvrflx_stun_finished_cb, cand))
       ABORT(r);
 
     if(r=nr_ice_ctx_remember_id(cand->ctx, cand->u.srvrflx.stun->request))
       ABORT(r);
- 
+
     if(r=nr_ice_socket_register_stun_client(cand->isock,cand->u.srvrflx.stun,&cand->u.srvrflx.stun_handle))
       ABORT(r);
 
     _status=0;
   abort:
     if(_status){
       cand->state=NR_ICE_CAND_STATE_FAILED;
     }
-    
+
     return;
   }
 
 static int nr_ice_srvrflx_start_stun(nr_ice_candidate *cand, NR_async_cb ready_cb, void *cb_arg)
   {
     int r,_status;
- 
+
     cand->done_cb=ready_cb;
     cand->cb_arg=cb_arg;
 
     cand->state=NR_ICE_CAND_STATE_INITIALIZING;
 
     if(r=nr_stun_client_ctx_create(cand->label, cand->isock->sock,
       &cand->stun_server->addr, cand->stream->ctx->gather_rto,
       &cand->u.srvrflx.stun))
       ABORT(r);
 
     NR_ASYNC_TIMER_SET(cand->stream->ctx->stun_delay,nr_ice_srvrflx_start_stun_timer_cb,cand,&cand->delay_timer);
-    cand->stream->ctx->stun_delay += cand->stream->ctx->Ta; 
+    cand->stream->ctx->stun_delay += cand->stream->ctx->Ta;
 
     _status=0;
   abort:
     if(_status){
       cand->state=NR_ICE_CAND_STATE_FAILED;
     }
     return(_status);
   }
@@ -497,17 +497,17 @@ static void nr_ice_srvrflx_stun_finished
       case NR_STUN_CLIENT_STATE_DONE:
         /* Copy the address */
         nr_transport_addr_copy(&cand->addr, &cand->u.srvrflx.stun->results.stun_binding_response_stund_0_96.mapped_addr);
         nr_stun_client_ctx_destroy(&cand->u.srvrflx.stun);
         cand->state=NR_ICE_CAND_STATE_INITIALIZED;
         /* Execute the ready callback */
         cand->done_cb(0,0,cand->cb_arg);
         break;
-        
+
       /* This failed, so go to the next STUN server if there is one */
       case NR_STUN_CLIENT_STATE_FAILED:
         ABORT(R_NOT_FOUND);
         break;
       default:
         ABORT(R_INTERNAL);
     }
     _status = 0;
@@ -554,28 +554,28 @@ static void nr_ice_turn_allocated_cb(NR_
         cand->state=NR_ICE_CAND_STATE_INITIALIZED;
 
         nr_socket_turn_set_state(cand->osock, NR_TURN_CLIENT_STATE_ALLOCATED);
         nr_socket_turn_set_relay_addr(cand->osock, &turn->relay_addr);
 
         /* Execute the ready callback */
         cand->done_cb(0,0,cand->cb_arg);
 
-        
+
         /* We also need to activate the associated STUN candidate */
         if(cand->u.relayed.srvflx_candidate){
           nr_ice_candidate *cand2=cand->u.relayed.srvflx_candidate;
 
           nr_transport_addr_copy(&cand2->addr, &cand->u.relayed.turn->stun_ctx[NR_TURN_CLIENT_PHASE_ALLOCATE_REQUEST2]->results.allocate_response2.mapped_addr);
           cand2->state=NR_ICE_CAND_STATE_INITIALIZED;
           cand2->done_cb(0,0,cand2->cb_arg);
         }
-        
+
         break;
-        
+
     case NR_TURN_CLIENT_STATE_FAILED:
     case NR_TURN_CLIENT_STATE_TIMED_OUT:
     case NR_TURN_CLIENT_STATE_CANCELLED:
       /* This failed, so go to the next TURN server if there is one */
       ABORT(R_NOT_FOUND);
       break;
     default:
       assert(0); /* should never happen */
@@ -592,17 +592,17 @@ static void nr_ice_turn_allocated_cb(NR_
     _status=0;
   abort:
     if(_status){
       cand->state=NR_ICE_CAND_STATE_FAILED;
       cand->done_cb(0,0,cand->cb_arg);
 
       if(cand->u.relayed.srvflx_candidate){
         nr_ice_candidate *cand2=cand->u.relayed.srvflx_candidate;
-        
+
         cand2->state=NR_ICE_CAND_STATE_FAILED;
         cand2->done_cb(0,0,cand2->cb_arg);
       }
     }
     /*return(_status);*/
   }
 #endif /* USE_TURN */
 
@@ -632,17 +632,17 @@ int nr_ice_format_candidate_attribute(nr
       case HOST:
         break;
       case SERVER_REFLEXIVE:
       case PEER_REFLEXIVE:
         if(r=nr_transport_addr_get_addrstring(&cand->base,addr,sizeof(addr)))
           ABORT(r);
         if(r=nr_transport_addr_get_port(&cand->base,&port))
           ABORT(r);
-        
+
         snprintf(attr,maxlen," raddr %s rport %d",addr,port);
         break;
       case RELAYED:
         // comes from XorMappedAddress via AllocateResponse
         if(r=nr_transport_addr_get_addrstring(&cand->base,addr,sizeof(addr)))
           ABORT(r);
         if(r=nr_transport_addr_get_port(&cand->base,&port))
           ABORT(r);
--- a/media/mtransport/third_party/nICEr/src/ice/ice_candidate.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_candidate.h
@@ -60,42 +60,42 @@ struct nr_ice_candidate_ {
   nr_ice_candidate_type type;         /* The type of the candidate (S 4.1.1) */
   UCHAR component_id;                 /* The component id (S 4.1.2.1) */
   nr_transport_addr addr;             /* The advertised address;
                                          JDR calls this the candidate */
   nr_transport_addr base;             /* The base address (S 2.1)*/
   char *foundation;                   /* Foundation for the candidate (S 4) */
   UINT4 priority;                     /* The priority value (S 5.4 */
   nr_ice_stun_server *stun_server;
-  
+
   void *delay_timer;
 
   /* Holding data for STUN and TURN */
   union {
     struct {
-      nr_stun_client_ctx *stun;      
+      nr_stun_client_ctx *stun;
       void *stun_handle;
     } srvrflx;
     struct {
       nr_turn_client_ctx *turn;
       nr_ice_turn_server *server;
       nr_ice_candidate *srvflx_candidate;
       nr_socket *turn_sock;
       void *turn_handle;
     } relayed;
   } u;
 
-  NR_async_cb done_cb;              
+  NR_async_cb done_cb;
   void *cb_arg;
 
   NR_async_cb ready_cb;
   void *ready_cb_arg;
   void *ready_cb_timer;
 
-  TAILQ_ENTRY(nr_ice_candidate_) entry_sock;  
+  TAILQ_ENTRY(nr_ice_candidate_) entry_sock;
   TAILQ_ENTRY(nr_ice_candidate_) entry_comp;
 };
 
 extern char *nr_ice_candidate_type_names[];
 
 
 int nr_ice_candidate_create(struct nr_ice_ctx_ *ctx,char *label, nr_ice_component *component, nr_ice_socket *isock, nr_socket *osock, nr_ice_candidate_type ctype, nr_ice_stun_server *stun_server, UCHAR component_id, nr_ice_candidate **candp);
 int nr_ice_candidate_initialize(nr_ice_candidate *cand, NR_async_cb ready_cb, void *cb_arg);
--- a/media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c
@@ -58,44 +58,44 @@ int nr_ice_candidate_pair_create(nr_ice_
     char *l2ruser=0,*r2lpass=0;
     int r,_status;
     UINT4 RTO;
     nr_ice_candidate tmpcand;
     UINT8 t_priority;
 
     if(!(pair=RCALLOC(sizeof(nr_ice_cand_pair))))
       ABORT(R_NO_MEMORY);
-    
+
     pair->pctx=pctx;
-    
+
     nr_ice_candidate_pair_compute_codeword(pair,lcand,rcand);
-    
+
     if(r=nr_concat_strings(&pair->as_string,pair->codeword,"|",lcand->addr.as_string,"|",
         rcand->addr.as_string,"(",lcand->label,"|",rcand->label,")", NULL))
       ABORT(r);
 
     nr_ice_candidate_pair_set_state(pctx,pair,NR_ICE_PAIR_STATE_FROZEN);
     pair->local=lcand;
     pair->remote=rcand;
 
     /* Priority computation S 5.7.2 */
     if(pctx->ctx->flags & NR_ICE_CTX_FLAGS_OFFERER)
     {
       assert(!(pctx->ctx->flags & NR_ICE_CTX_FLAGS_ANSWERER));
-      
+
       o_priority=lcand->priority;
       a_priority=rcand->priority;
     }
     else{
       o_priority=rcand->priority;
       a_priority=lcand->priority;
     }
-    pair->priority=(MIN(o_priority, a_priority))<<32 | 
+    pair->priority=(MIN(o_priority, a_priority))<<32 |
       (MAX(o_priority, a_priority))<<1 | (o_priority > a_priority?0:1);
-    
+
     r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Pairing candidate %s (%x):%s (%x) priority=%llu (%llx) codeword=%s",pctx->ctx->label,lcand->addr.as_string,lcand->priority,rcand->addr.as_string,rcand->priority,pair->priority,pair->priority,pair->codeword);
 
     /* Foundation */
     if(r=nr_concat_strings(&pair->foundation,lcand->foundation,"|",
       rcand->foundation,NULL))
       ABORT(r);
 
 
@@ -132,24 +132,24 @@ int nr_ice_candidate_pair_create(nr_ice_
     if(r=r_data_make(&pair->stun_client->params.ice_binding_request.password,(UCHAR *)rpwd,strlen(rpwd)))
       ABORT(r);
     pair->stun_client->params.ice_binding_request.priority=t_priority;
     pair->stun_client->params.ice_binding_request.control = pctx->controlling?
       NR_ICE_CONTROLLING:NR_ICE_CONTROLLED;
 
     pair->stun_client->params.ice_binding_request.tiebreaker=pctx->tiebreaker;
 
-    /* Our receiving username/passwords. Stash these for later 
+    /* Our receiving username/passwords. Stash these for later
        injection into the stun server ctx*/
     if(r=nr_concat_strings(&pair->r2l_user,lufrag,":",rufrag,NULL))
       ABORT(r);
     if(!(r2lpass=r_strdup(lpwd)))
       ABORT(R_NO_MEMORY);
     INIT_DATA(pair->r2l_pwd,(UCHAR *)r2lpass,strlen(r2lpass));
-    
+
     *pairp=pair;
 
     _status=0;
   abort:
     RFREE(l2ruser);
     if(_status){
       RFREE(r2lpass);
     }
@@ -167,34 +167,34 @@ int nr_ice_candidate_pair_destroy(nr_ice
     *pairp=0;
 
     RFREE(pair->as_string);
     RFREE(pair->foundation);
     nr_ice_socket_deregister(pair->local->isock,pair->stun_client_handle);
     RFREE(pair->stun_client->params.ice_binding_request.username);
     RFREE(pair->stun_client->params.ice_binding_request.password.data);
     nr_stun_client_ctx_destroy(&pair->stun_client);
-    
+
     RFREE(pair->r2l_user);
     RFREE(pair->r2l_pwd.data);
 
     NR_async_timer_cancel(pair->stun_cb_timer);
     NR_async_timer_cancel(pair->restart_controlled_cb_timer);
     NR_async_timer_cancel(pair->restart_nominated_cb_timer);
 
     RFREE(pair);
     return(0);
   }
 
 int nr_ice_candidate_pair_unfreeze(nr_ice_peer_ctx *pctx, nr_ice_cand_pair *pair)
   {
     assert(pair->state==NR_ICE_PAIR_STATE_FROZEN);
-    
+
     nr_ice_candidate_pair_set_state(pctx,pair,NR_ICE_PAIR_STATE_WAITING);
-    
+
     return(0);
   }
 
 static void nr_ice_candidate_pair_stun_cb(NR_SOCKET s, int how, void *cb_arg)
   {
     int r,_status;
     nr_ice_cand_pair *pair=cb_arg,*orig_pair;
     nr_ice_candidate *cand=0;
@@ -206,33 +206,33 @@ static void nr_ice_candidate_pair_stun_c
     nr_stun_message_attribute *attr;
 
     pair->stun_cb_timer=0;
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s)/STREAM(%s): STUN cb on pair %s",
       pair->pctx->label,pair->local->stream->label,pair->as_string);
 
     /* This ordinarily shouldn't happen, but can if we're
-       doing the second check to confirm nomination. 
+       doing the second check to confirm nomination.
        Just bail out */
     if(pair->state==NR_ICE_PAIR_STATE_SUCCEEDED)
       goto done;
 
     switch(pair->stun_client->state){
       case NR_STUN_CLIENT_STATE_FAILED:
         sres=pair->stun_client->response;
         if(sres && nr_stun_message_has_attribute(sres,NR_STUN_ATTR_ERROR_CODE,&attr)&&attr->u.error_code.number==487){
           r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): detected role conflict. Switching to controlled",pair->pctx->label);
-          
+
           pair->pctx->controlling=0;
-	  
-	  /* Only restart if we haven't tried this already */
-	  if(!pair->restart_controlled_cb_timer)
-	    NR_ASYNC_TIMER_SET(0,nr_ice_candidate_pair_restart_stun_controlled_cb,pair,&pair->restart_controlled_cb_timer);
-          
+
+          /* Only restart if we haven't tried this already */
+          if(!pair->restart_controlled_cb_timer)
+            NR_ASYNC_TIMER_SET(0,nr_ice_candidate_pair_restart_stun_controlled_cb,pair,&pair->restart_controlled_cb_timer);
+
           return;
         }
         /* Fall through */
       case NR_STUN_CLIENT_STATE_TIMED_OUT:
         nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_FAILED);
         break;
       case NR_STUN_CLIENT_STATE_DONE:
         /* make sure the addresses match up S 7.1.2.2 */
@@ -245,44 +245,44 @@ static void nr_ice_candidate_pair_stun_c
         }
         request_src=&pair->stun_client->my_addr;
         nr_socket_getaddr(pair->local->isock->sock,&response_dst);
         if (nr_transport_addr_cmp(request_src,&response_dst,NR_TRANSPORT_ADDR_CMP_MODE_ALL)){
           r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): Address mismatch %s/%s",pair->pctx->label, request_src->as_string,response_dst.as_string);
           nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_FAILED);
           break;
         }
- 
+
         if(strlen(pair->stun_client->results.ice_binding_response.mapped_addr.as_string)==0){
           /* we're using the mapped_addr returned by the server to lookup our
            * candidate, but if the server fails to do that we can't perform
-           * the lookup -- this may be a BUG because if we've gotten here 
+           * the lookup -- this may be a BUG because if we've gotten here
            * then the transaction ID check succeeded, and perhaps we should
            * just assume that it's the server we're talking to and that our
-           * peer is ok, but I'm not sure how that'll interact with the 
+           * peer is ok, but I'm not sure how that'll interact with the
            * peer reflexive logic below */
           r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): server failed to return mapped address on pair %s", pair->pctx->label,pair->as_string);
           nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_FAILED);
           break;
         }
         else if(!nr_transport_addr_cmp(&pair->local->addr,&pair->stun_client->results.ice_binding_response.mapped_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL)){
           nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_SUCCEEDED);
         }
         else{
           /* OK, this didn't correspond to a pair on the check list, but
              it probably matches one of our candidates */
 
           cand=TAILQ_FIRST(&pair->local->component->candidates);
           while(cand){
             if(!nr_transport_addr_cmp(&cand->addr,&pair->stun_client->results.ice_binding_response.mapped_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL))
               break;
- 
+
             cand=TAILQ_NEXT(cand,entry_comp);
           }
- 
+
           /* OK, nothing found, must be peer reflexive */
           if(!cand){
             if(r=nr_ice_candidate_create(pair->pctx->ctx,"prflx",
               pair->local->component,pair->local->isock,pair->local->osock,
               PEER_REFLEXIVE,0,pair->local->component->component_id,&cand))
               ABORT(r);
             if(r=nr_transport_addr_copy(&cand->addr,&pair->stun_client->results.ice_binding_response.mapped_addr))
               ABORT(r);
@@ -295,62 +295,62 @@ static void nr_ice_candidate_pair_stun_c
           if(r=nr_ice_candidate_pair_create(pair->pctx,cand,pair->remote,
             &pair))
             ABORT(r);
 
           nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_SUCCEEDED);
 
           if(r=nr_ice_candidate_pair_insert(&pair->remote->stream->check_list,pair))
             ABORT(r);
-          
+
           /* If the original pair was nominated, make us nominated,
              since we replace him*/
           if(orig_pair->peer_nominated)
             pair->peer_nominated=1;
 
-          
+
           /* Now mark the orig pair failed */
-          nr_ice_candidate_pair_set_state(orig_pair->pctx,orig_pair,NR_ICE_PAIR_STATE_FAILED); 
-          
+          nr_ice_candidate_pair_set_state(orig_pair->pctx,orig_pair,NR_ICE_PAIR_STATE_FAILED);
+
         }
-        
+
         /* Should we set nominated? */
         if(pair->pctx->controlling){
           if(pair->pctx->ctx->flags & NR_ICE_CTX_FLAGS_AGGRESSIVE_NOMINATION)
             pair->nominated=1;
         }
         else{
           if(pair->peer_nominated)
             pair->nominated=1;
         }
-        
-        
+
+
         /* increment the number of valid pairs in the component */
         /* We don't bother to maintain a separate valid list */
         pair->remote->component->valid_pairs++;
-        
+
         /* S 7.1.2.2: unfreeze other pairs with the same foundation*/
         if(r=nr_ice_media_stream_unfreeze_pairs_foundation(pair->remote->stream,pair->foundation))
           ABORT(r);
-        
+
         /* Deal with this pair being nominated */
         if(pair->nominated){
           if(r=nr_ice_component_nominated_pair(pair->remote->component, pair))
             ABORT(r);
         }
 
         break;
       default:
         ABORT(R_INTERNAL);
     }
-    
+
     /* If we're controlling but in regular mode, ask the handler
        if he wants to nominate something and stop... */
     if(pair->pctx->controlling && !(pair->pctx->ctx->flags & NR_ICE_CTX_FLAGS_AGGRESSIVE_NOMINATION)){
-      
+
       if(r=nr_ice_component_select_pair(pair->pctx,pair->remote->component)){
         if(r!=R_NOT_FOUND)
           ABORT(r);
       }
     }
 
   done:
     _status=0;
@@ -363,17 +363,17 @@ int nr_ice_candidate_pair_start(nr_ice_p
     int r,_status;
     UINT4 mode;
 
     nr_ice_candidate_pair_set_state(pctx,pair,NR_ICE_PAIR_STATE_IN_PROGRESS);
 
     /* Register the stun ctx for when responses come in*/
     if(r=nr_ice_socket_register_stun_client(pair->local->isock,pair->stun_client,&pair->stun_client_handle))
       ABORT(r);
-    
+
     /* Start STUN */
     if(pair->pctx->controlling && (pair->pctx->ctx->flags & NR_ICE_CTX_FLAGS_AGGRESSIVE_NOMINATION))
       mode=NR_ICE_CLIENT_MODE_USE_CANDIDATE;
     else
       mode=NR_ICE_CLIENT_MODE_BINDING_REQUEST;
 
     if(r=nr_stun_client_start(pair->stun_client,mode,nr_ice_candidate_pair_stun_cb,pair))
       ABORT(r);
@@ -414,17 +414,17 @@ int nr_ice_candidate_pair_do_triggered_c
         break;
       case NR_ICE_PAIR_STATE_IN_PROGRESS:
         if(r=nr_stun_client_force_retransmit(pair->stun_client))
           ABORT(r);
         break;
       default:
         break;
     }
-    
+
     /* Activate the media stream if required */
     if(pair->remote->stream->ice_state==NR_ICE_MEDIA_STREAM_CHECKS_FROZEN){
       if(r=nr_ice_media_stream_start_checks(pair->pctx,pair->remote->stream))
         ABORT(r);
     }
 
     _status=0;
   abort:
@@ -442,17 +442,17 @@ int nr_ice_candidate_pair_cancel(nr_ice_
     }
 
     return(0);
   }
 
 int nr_ice_candidate_pair_select(nr_ice_cand_pair *pair)
   {
     int r,_status;
-   
+
     if(!pair){
       r_log(LOG_ICE,LOG_ERR,"ICE-PAIR: No pair chosen");
       ABORT(R_BAD_ARGS);
     }
 
     if(pair->state!=NR_ICE_PAIR_STATE_SUCCEEDED){
       r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): tried to install non-succeeded pair %s, ignoring",pair->pctx->label,pair->as_string);
     }
@@ -486,17 +486,17 @@ int nr_ice_candidate_pair_set_state(nr_i
        pair->state and the assignment to pair->state was at the top
        of this function. Because pctx->state was never changed, this seems to have
        been a typo. The natural logic is "if the state changed
        decrement the counter" so this implies we should be checking
        the pair state rather than the pctx->state.
 
        This didn't cause big problems because waiting_pairs was only
        used for pacing, so the pacing just was kind of broken.
-       
+
        This note is here as a reminder until we do more testing
        and make sure that in fact this was a typo.
     */
     if(pair->state!=NR_ICE_PAIR_STATE_WAITING){
       if(state==NR_ICE_PAIR_STATE_WAITING)
         pctx->waiting_pairs++;
     }
     else{
@@ -516,32 +516,32 @@ int nr_ice_candidate_pair_set_state(nr_i
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_candidate_pair_dump_state(nr_ice_cand_pair *pair, FILE *out)
   {
     //r_log(LOG_ICE,LOG_DEBUG,"pair %s: state=%s, priority=0x%llx\n",pair->as_string,nr_ice_cand_pair_states[pair->state],pair->priority);
-    
+
     return(0);
   }
 
 
 int nr_ice_candidate_pair_insert(nr_ice_cand_pair_head *head,nr_ice_cand_pair *pair)
   {
     nr_ice_cand_pair *c1;
 
     c1=TAILQ_FIRST(head);
     while(c1){
       if(c1->priority < pair->priority){
         TAILQ_INSERT_BEFORE(c1,pair,entry);
         break;
       }
-        
+
       c1=TAILQ_NEXT(c1,entry);
     }
     if(!c1) TAILQ_INSERT_TAIL(head,pair,entry);
 
     return(0);
   }
 
 void nr_ice_candidate_pair_restart_stun_nominated_cb(NR_SOCKET s, int how, void *cb_arg)
--- a/media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.h
@@ -47,25 +47,25 @@ struct nr_ice_cand_pair_ {
   int state;                          /* The current state (S 5.7.3) */
 #define NR_ICE_PAIR_STATE_FROZEN           1
 #define NR_ICE_PAIR_STATE_WAITING          2
 #define NR_ICE_PAIR_STATE_IN_PROGRESS      3
 #define NR_ICE_PAIR_STATE_FAILED           4
 #define NR_ICE_PAIR_STATE_SUCCEEDED        5
 #define NR_ICE_PAIR_STATE_CANCELLED        6
 
-  UCHAR peer_nominated;               /* The peer sent USE-CANDIDATE 
+  UCHAR peer_nominated;               /* The peer sent USE-CANDIDATE
                                          on this check */
   UCHAR nominated;                    /* Is this nominated or not */
 
   UINT8 priority;                  /* The priority for this pair */
   nr_ice_candidate *local;            /* The local candidate */
   nr_ice_candidate *remote;           /* The remote candidate */
   char *foundation;                   /* The combined foundations */
-       
+
   char *r2l_user;                     /* Stashed username */
   Data r2l_pwd;                       /* Stashed password */
 
   nr_stun_client_ctx *stun_client;    /* STUN context when acting as a client */
   void *stun_client_handle;
 
   void *stun_cb_timer;
   void *restart_controlled_cb_timer;
--- a/media/mtransport/third_party/nICEr/src/ice/ice_component.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_component.c
@@ -71,44 +71,44 @@ int nr_ice_component_create(nr_ice_media
 int nr_ice_component_destroy(nr_ice_component **componentp)
   {
     nr_ice_component *component;
     nr_ice_socket *s1,*s2;
     nr_ice_candidate *c1,*c2;
 
     if(!componentp || !*componentp)
       return(0);
-    
+
     component=*componentp;
     *componentp=0;
 
     /* Detach ourselves from the sockets */
     if (component->local_component){
       nr_ice_socket *isock=STAILQ_FIRST(&component->local_component->sockets);
       while(isock){
         nr_stun_server_remove_client(isock->stun_server, component);
         isock=STAILQ_NEXT(isock, entry);
       }
     }
 
     STAILQ_FOREACH_SAFE(s1, &component->sockets, entry, s2){
       STAILQ_REMOVE(&component->sockets,s1,nr_ice_socket_,entry);
       nr_ice_socket_destroy(&s1);
     }
-    
-    
+
+
     TAILQ_FOREACH_SAFE(c1, &component->candidates, entry_comp, c2){
       TAILQ_REMOVE(&component->candidates,c1,entry_comp);
       nr_ice_candidate_destroy(&c1);
     }
-    
+
     if(component->keepalive_timer)
       NR_async_timer_cancel(component->keepalive_timer);
     nr_stun_client_ctx_destroy(&component->keepalive_ctx);
-    
+
     RFREE(component);
     return(0);
   }
 
 #define MAXADDRS 100 // Ridiculously high
 /* Make all the candidates we can make at the beginning */
 int nr_ice_component_initialize(struct nr_ice_ctx_ *ctx,nr_ice_component *component)
   {
@@ -121,48 +121,48 @@ int nr_ice_component_initialize(struct n
     int i;
     int j;
     char label[256];
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): initializing component with id %d",ctx->label,component->component_id);
 
     /* First, gather all the local addresses we have */
     if(r=nr_stun_find_local_addresses(addrs,MAXADDRS,&addr_ct)) {
-      r_log(LOG_ICE,LOG_ERR,"ICE(%s): unable to find local addresses",ctx->label);      
+      r_log(LOG_ICE,LOG_ERR,"ICE(%s): unable to find local addresses",ctx->label);
       ABORT(r);
     }
 
     if(addr_ct==0){
-      r_log(LOG_ICE,LOG_ERR,"ICE(%s): no local addresses available",ctx->label);      
+      r_log(LOG_ICE,LOG_ERR,"ICE(%s): no local addresses available",ctx->label);
       ABORT(R_NOT_FOUND);
     }
 
     /* Now one ice_socket for each address */
     for(i=0;i<addr_ct;i++){
       char suppress;
 
       if(r=NR_reg_get2_char(NR_ICE_REG_SUPPRESS_INTERFACE_PRFX,addrs[i].ifname,&suppress)){
         if(r!=R_NOT_FOUND)
           ABORT(r);
       }
       else{
         if(suppress)
           continue;
       }
 
-      
+
       r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): host address %s",ctx->label,addrs[i].as_string);
       if(r=nr_socket_local_create(&addrs[i],&sock)){
         r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): couldn't create socket for address %s",ctx->label,addrs[i].as_string);
         continue;
       }
 
       if(r=nr_ice_socket_create(ctx,component,sock,&isock))
         ABORT(r);
-      
+
       /* Create one host candidate */
 
       snprintf(label, sizeof(label), "host(%s)", addrs[i].as_string);
       if(r=nr_ice_candidate_create(ctx,label,component,isock,sock,HOST,0,
         component->component_id,&cand))
         ABORT(r);
 
       TAILQ_INSERT_TAIL(&component->candidates,cand,entry_comp);
@@ -286,52 +286,52 @@ int nr_ice_component_prune_candidates(nr
         TAILQ_REMOVE(&comp->candidates,c1,entry_comp);
         comp->candidate_ct--;
         TAILQ_REMOVE(&c1->isock->candidates,c1,entry_sock);
         /* schedule this delete for later as we don't want to delete the underlying
          * objects while in the middle of a callback on one of those objects */
         NR_ASYNC_SCHEDULE(nr_ice_candidate_destroy_cb,c1);
         goto next_c1;
       }
-        
+
       c2=TAILQ_NEXT(c1,entry_comp);
 
       while(c2){
         nr_ice_candidate *tmp;
 
         if(!nr_transport_addr_cmp(&c1->base,&c2->base,NR_TRANSPORT_ADDR_CMP_MODE_ALL) && !nr_transport_addr_cmp(&c1->addr,&c2->addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL)){
-          
+
           if((c1->type == c2->type) ||
             (c1->type==HOST && c2->type == SERVER_REFLEXIVE) ||
             (c2->type==HOST && c1->type == SERVER_REFLEXIVE)){
-            
+
             /* OK these are redundant. Remove the lower pri one */
             tmp=c2;
             c2=TAILQ_NEXT(c2,entry_comp);
             if(c1n==tmp)
               c1n=c2;
-            
+
             r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Removing redundant candidate %s",
               ctx->label,tmp->label);
-            
+
             TAILQ_REMOVE(&comp->candidates,tmp,entry_comp);
             comp->candidate_ct--;
             TAILQ_REMOVE(&tmp->isock->candidates,tmp,entry_sock);
-            
+
             nr_ice_candidate_destroy(&tmp);
           }
         }
         else{
           c2=TAILQ_NEXT(c2,entry_comp);
         }
       }
-    next_c1:     
+    next_c1:
       c1=c1n;
     }
-        
+
     return(0);
   }
 
 /* Section 7.2.1 */
 static int nr_ice_component_stun_server_cb(void *cb_arg,nr_stun_server_ctx *stun_ctx,nr_socket *sock, nr_stun_server_request *req, int *error)
   {
     nr_ice_component *comp=cb_arg;
     nr_ice_cand_pair *pair;
@@ -343,17 +343,17 @@ static int nr_ice_component_stun_server_
     int local_addr_matched;
     int remote_addr_matched;
     nr_ice_cand_pair *found_invalid=0;
     int r=0,_status;
 
     assert(sock!=0);
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s)/STREAM(%s)(%d): received request from %s",comp->stream->pctx->label,comp->stream->label,comp->component_id,req->src_addr.as_string);
-    
+
     /* Check for role conficts (7.2.1.1) */
     if(comp->stream->pctx->controlling){
       if(nr_stun_message_has_attribute(sreq,NR_STUN_ATTR_ICE_CONTROLLING,&attr)){
         /* OK, there is a conflict. Who's right? */
         r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): role conflict, both controlling",comp->stream->pctx->label);
 
         if(attr->u.ice_controlling > comp->stream->pctx->tiebreaker){
           /* They are: switch */
@@ -361,37 +361,37 @@ static int nr_ice_component_stun_server_
 
           comp->stream->pctx->controlling=0;
         }
         else {
           /* We are: throw an error */
           r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): returning 487 role conflict",comp->stream->pctx->label);
 
           *error=487;
-          ABORT(R_REJECTED); 
+          ABORT(R_REJECTED);
         }
       }
     }
     else{
       if(nr_stun_message_has_attribute(sreq,NR_STUN_ATTR_ICE_CONTROLLED,&attr)){
         /* OK, there is a conflict. Who's right? */
         r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): role conflict, both controlled",comp->stream->pctx->label);
-        
+
         if(attr->u.ice_controlling < comp->stream->pctx->tiebreaker){
           r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): switching to controlling",comp->stream->pctx->label);
 
           /* They are: switch */
           comp->stream->pctx->controlling=1;
         }
         else {
           /* We are: throw an error */
           r_log(LOG_ICE,LOG_ERR,"ICE-PEER(%s): returning 487 role conflict",comp->stream->pctx->label);
 
           *error=487;
-          ABORT(R_REJECTED); 
+          ABORT(R_REJECTED);
         }
       }
     }
 
     /* Find the candidate pair that this maps to */
     if(r=nr_socket_getaddr(sock,&local_addr)) {
       *error=500;
       ABORT(r);
@@ -403,17 +403,17 @@ static int nr_ice_component_stun_server_
     while(pair){
       component_id_matched = 0;
       local_addr_matched = 0;
       remote_addr_matched = 0;
 
       if(pair->remote->component->component_id!=comp->component_id)
         goto next_pair;
       component_id_matched = 1;
-      
+
       if(nr_transport_addr_cmp(&pair->local->base,&local_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL))
         goto next_pair;
       local_addr_matched=1;
 
 
       if(nr_transport_addr_cmp(&pair->remote->addr,&req->src_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL))
         goto next_pair;
       remote_addr_matched = 1;
@@ -432,17 +432,17 @@ static int nr_ice_component_stun_server_
     next_pair:
       pair=TAILQ_NEXT(pair,entry);
     }
 
     if(!pair){
       if(!found_invalid){
         /* First find our local component candidate */
         nr_ice_candidate *cand;
-      
+
         r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): no matching pair",comp->stream->pctx->label);
         cand=TAILQ_FIRST(&comp->local_component->candidates);
         while(cand){
           if(!nr_transport_addr_cmp(&cand->addr,&local_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL))
             break;
 
           cand=TAILQ_NEXT(cand,entry_comp);
         }
@@ -470,28 +470,28 @@ static int nr_ice_component_stun_server_
         pcand->state=NR_ICE_CAND_PEER_CANDIDATE_PAIRED;;
         TAILQ_INSERT_TAIL(&comp->candidates,pcand,entry_comp);
 
         if(r=nr_ice_candidate_pair_create(comp->stream->pctx,cand,pcand,
              &pair)) {
           *error=(r==R_NO_MEMORY)?500:400;
           ABORT(r);
         }
-        nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_FROZEN);        
-      
+        nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_FROZEN);
+
         if(r=nr_ice_candidate_pair_insert(&comp->stream->check_list,pair)) {
           *error=(r==R_NO_MEMORY)?500:400;
           ABORT(r);
         }
-      
+
         pcand=0;
       }
       else{
         /* OK, there was a pair, it's just invalid: According to Section
-           7.2.1.4, we need to resurrect it 
+           7.2.1.4, we need to resurrect it
         */
         if(found_invalid->state == NR_ICE_PAIR_STATE_FAILED){
           pair=found_invalid;
 
           r_log(LOG_ICE,LOG_WARNING,"ICE-PEER(%s): received STUN check on invalid pair %s: resurrecting",comp->stream->pctx->label,pair->as_string);
           nr_ice_candidate_pair_set_state(pair->pctx,pair,NR_ICE_PAIR_STATE_WAITING);
         }
         else{
@@ -566,17 +566,17 @@ int nr_ice_component_pair_candidates(nr_
           break;
         case RELAYED:
           break;
         default:
           assert(0);
           ABORT(R_INTERNAL);
           break;
       }
-      
+
       /* PAIR with each peer*/
       if(TAILQ_EMPTY(&pcomp->candidates)) {
           /* can happen if our peer proposes no (or all bogus) candidates */
           goto next_cand;
       }
       pcand=TAILQ_FIRST(&pcomp->candidates);
       while(pcand){
         /* Only pair peer candidates which have not yet been paired.
@@ -584,27 +584,27 @@ int nr_ice_component_pair_candidates(nr_
            part of WebRTC).
 
            TODO(ekr@rtfm.com): Add refernece to the spec when there
            is one.
          */
         if (pcand->state == NR_ICE_CAND_PEER_CANDIDATE_UNPAIRED) {
           nr_ice_compute_codeword(pcand->label,strlen(pcand->label),codeword);
           r_log(LOG_ICE,LOG_DEBUG,"Examining peer candidate %s:%s",codeword,pcand->label);
-          
+
           if(r=nr_ice_candidate_pair_create(pctx,lcand,pcand,&pair))
             ABORT(r);
-          
+
           if(r=nr_ice_candidate_pair_insert(&pcomp->stream->check_list,
               pair))
             ABORT(r);
         }
         else {
-	  was_paired = 1;
-	}
+          was_paired = 1;
+        }
         pcand=TAILQ_NEXT(pcand,entry_comp);
       }
 
       if(!pair)
         goto next_cand;
 
       if (!was_paired) {
         /* Add the stun username/password pair from the last pair (any
@@ -618,23 +618,23 @@ int nr_ice_component_pair_candidates(nr_
           }
 
           isock=STAILQ_NEXT(isock,entry);
         }
       }
 
     next_cand:
       lcand=TAILQ_NEXT(lcand,entry_comp);
-    } 
+    }
 
     /* Mark all peer candidates as paired */
     pcand=TAILQ_FIRST(&pcomp->candidates);
     while(pcand){
       pcand->state = NR_ICE_CAND_PEER_CANDIDATE_PAIRED;
-      
+
       pcand=TAILQ_NEXT(pcand,entry_comp);
     }
 
     _status=0;
   abort:
     return(_status);
   }
 
@@ -662,28 +662,28 @@ int nr_ice_component_nominated_pair(nr_i
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s)/STREAM(%s)/comp(%d): cancelling all pairs but %s (0x%p)",comp->stream->pctx->label,comp->stream->label,comp->component_id,pair->as_string,pair);
 
     /* OK, we need to cancel off everything on this component */
     p2=TAILQ_FIRST(&comp->stream->check_list);
     while(p2){
       if((p2 != pair) && (p2->remote->component->component_id == comp->component_id)){
         r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s)/STREAM(%s)/comp(%d): cancelling pair %s (0x%p)",comp->stream->pctx->label,comp->stream->label,comp->component_id,p2->as_string,p2);
-        
+
         if(r=nr_ice_candidate_pair_cancel(pair->pctx,p2))
           ABORT(r);
       }
 
       p2=TAILQ_NEXT(p2,entry);
     }
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s)/STREAM(%s)/comp(%d): cancelling done",comp->stream->pctx->label,comp->stream->label,comp->component_id);
 
     if(r=nr_ice_media_stream_component_nominated(comp->stream,comp))
       ABORT(r);
-      
+
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_component_failed_pair(nr_ice_component *comp, nr_ice_cand_pair *pair)
   {
     int r,_status;
@@ -732,17 +732,17 @@ int nr_ice_component_failed_pair(nr_ice_
   }
 
 int nr_ice_component_select_pair(nr_ice_peer_ctx *pctx, nr_ice_component *comp)
   {
     nr_ice_cand_pair **pairs=0;
     int ct=0;
     nr_ice_cand_pair *pair;
     int r,_status;
-    
+
     /* Size the array */
     pair=TAILQ_FIRST(&comp->stream->check_list);
     while(pair){
       if (comp->component_id == pair->local->component_id)
           ct++;
 
       pair=TAILQ_NEXT(pair,entry);
     }
--- a/media/mtransport/third_party/nICEr/src/ice/ice_component.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_component.h
@@ -47,17 +47,17 @@ struct nr_ice_component_ {
   struct nr_ice_ctx_ *ctx;
   struct nr_ice_media_stream_ *stream;
   nr_ice_component *local_component;
 
   int component_id;
   nr_ice_socket_head sockets;
   nr_ice_candidate_head candidates;
   int candidate_ct;
-  
+
   int valid_pairs;
   struct nr_ice_cand_pair_ *nominated; /* Highest priority nomninated pair */
   struct nr_ice_cand_pair_ *active;
 
   int keepalive_needed;
   void *keepalive_timer;
   nr_stun_client_ctx *keepalive_ctx;
 
--- a/media/mtransport/third_party/nICEr/src/ice/ice_ctx.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_ctx.c
@@ -89,17 +89,17 @@ int nr_ice_fetch_stun_servers(int ct, nr
         r_log(LOG_ICE,LOG_ERR,"Invalid address %s",addr);
         ABORT(R_BAD_ARGS);
       }
       if(r=NR_reg_get2_uint2(child,"port",&port)) {
         if (r != R_NOT_FOUND)
           ABORT(r);
         port = 3478;
       }
-      if(r=nr_ip4_port_to_transport_addr(ntohl(addr_int), port, IPPROTO_UDP, 
+      if(r=nr_ip4_port_to_transport_addr(ntohl(addr_int), port, IPPROTO_UDP,
         &servers[i].addr))
         ABORT(r);
       servers[i].index=i;
 
       RFREE(addr);
       addr=0;
     }
 
@@ -182,17 +182,17 @@ int nr_ice_fetch_turn_servers(int ct, nr
         r_log(LOG_ICE,LOG_ERR,"Invalid address %s",addr);
         ABORT(R_BAD_ARGS);
       }
       if(r=NR_reg_get2_uint2(child,"port",&port)) {
         if (r != R_NOT_FOUND)
           ABORT(r);
         port = 3478;
       }
-      if(r=nr_ip4_port_to_transport_addr(ntohl(addr_int), port, IPPROTO_UDP, 
+      if(r=nr_ip4_port_to_transport_addr(ntohl(addr_int), port, IPPROTO_UDP,
         &servers[i].turn_server.addr))
         ABORT(r);
 
       if(r=NR_reg_get2_uint4(child,NR_ICE_REG_TURN_SRV_BANDWIDTH,&servers[i].bandwidth_kbps))
         if(r!=R_NOT_FOUND)
           ABORT(r);
       if(r=NR_reg_get2_uint4(child,NR_ICE_REG_TURN_SRV_LIFETIME,&servers[i].lifetime_secs))
         if(r!=R_NOT_FOUND)
@@ -203,17 +203,17 @@ int nr_ice_fetch_turn_servers(int ct, nr
           ABORT(r);
       }
 
       if(r=NR_reg_alloc2_data(child,NR_ICE_REG_TURN_SRV_PASSWORD,&data)){
         if(r!=R_NOT_FOUND)
           ABORT(r);
       }
       else {
-        servers[i].password=RCALLOC(sizeof(*servers[i].password)); 
+        servers[i].password=RCALLOC(sizeof(*servers[i].password));
         if(!servers[i].password)
           ABORT(R_NO_MEMORY);
         servers[i].password->data = data.data;
         servers[i].password->len = data.len;
         data.data=0;
       }
 
       servers[i].turn_server.index=i;
@@ -338,17 +338,17 @@ static void nr_ice_ctx_destroy_cb(NR_SOC
 
     RFREE(ctx->stun_servers);
 
     for (i = 0; i < ctx->turn_server_ct; i++) {
         RFREE(ctx->turn_servers[i].username);
         r_data_destroy(&ctx->turn_servers[i].password);
     }
     RFREE(ctx->turn_servers);
-    
+
     f1=STAILQ_FIRST(&ctx->foundations);
     while(f1){
       f2=STAILQ_NEXT(f1,entry);
       RFREE(f1);
       f1=f2;
     }
     RFREE(ctx->pwd);
     RFREE(ctx->ufrag);
@@ -369,17 +369,17 @@ static void nr_ice_ctx_destroy_cb(NR_SOC
 int nr_ice_ctx_destroy(nr_ice_ctx **ctxp)
   {
     if(!ctxp || !*ctxp)
       return(0);
 
     NR_ASYNC_SCHEDULE(nr_ice_ctx_destroy_cb,*ctxp);
 
     *ctxp=0;
-    
+
     return(0);
   }
 
 void nr_ice_initialize_finished_cb(NR_SOCKET s, int h, void *cb_arg)
   {
     nr_ice_ctx *ctx=cb_arg;
 
 /*    r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Candidate %s %s",ctx->label,
@@ -412,52 +412,52 @@ int nr_ice_initialize(nr_ice_ctx *ctx, N
       ABORT(R_BAD_ARGS);
     }
 
     /* Initialize all the media stream/component pairs */
     stream=STAILQ_FIRST(&ctx->streams);
     while(stream){
       if(r=nr_ice_media_stream_initialize(ctx,stream))
         ABORT(r);
-      
+
       stream=STAILQ_NEXT(stream,entry);
     }
 
     if(ctx->uninitialized_candidates)
       ABORT(R_WOULDBLOCK);
-    
-    
+
+
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_add_media_stream(nr_ice_ctx *ctx,char *label,int components, nr_ice_media_stream **streamp)
   {
     int r,_status;
 
     if(r=nr_ice_media_stream_create(ctx,label,components,streamp))
       ABORT(r);
-    
+
     STAILQ_INSERT_TAIL(&ctx->streams,*streamp,entry);
 
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_get_global_attributes(nr_ice_ctx *ctx,char ***attrsp, int *attrctp)
   {
     char **attrs=0;
     int _status;
     char *tmp=0;
 
     if(!(attrs=RCALLOC(sizeof(char *)*2)))
       ABORT(R_NO_MEMORY);
-    
+
     if(!(tmp=RMALLOC(100)))
       ABORT(R_NO_MEMORY);
     snprintf(tmp,100,"ice-ufrag:%s",ctx->ufrag);
     attrs[0]=tmp;
 
     if(!(tmp=RMALLOC(100)))
       ABORT(R_NO_MEMORY);
     snprintf(tmp,100,"ice-pwd:%s",ctx->pwd);
@@ -481,29 +481,29 @@ static int nr_ice_random_string(char *st
     needed=len/2;
 
     if(needed>sizeof(bytes)) ABORT(R_BAD_ARGS);
 
     //memset(bytes,0,needed);
 
     if(r=nr_crypto_random_bytes(bytes,needed))
       ABORT(r);
-    
+
     if(r=nr_bin2hex(bytes,needed,(unsigned char *)str))
       ABORT(r);
 
     _status=0;
   abort:
     return(_status);
   }
 
 /* This is incredibly annoying: we now have a datagram but we don't
-   know which peer it's from, and we need to be able to tell the 
+   know which peer it's from, and we need to be able to tell the
    API user. So, offer it to each peer and if one bites, assume
-   the others don't want it 
+   the others don't want it
 */
 int nr_ice_ctx_deliver_packet(nr_ice_ctx *ctx, nr_ice_component *comp, nr_transport_addr *source_addr, UCHAR *data, int len)
   {
     nr_ice_peer_ctx *pctx;
     int r;
 
     pctx=STAILQ_FIRST(&ctx->peers);
     while(pctx){
@@ -511,17 +511,17 @@ int nr_ice_ctx_deliver_packet(nr_ice_ctx
       if(!r)
         break;
 
       pctx=STAILQ_NEXT(pctx,entry);
     }
 
     if(!pctx)
       r_log(LOG_ICE,LOG_INFO,"ICE(%s): Packet received from %s which doesn't match any known peer",ctx->label,source_addr->as_string);
-    
+
     return(0);
   }
 
 int nr_ice_ctx_is_known_id(nr_ice_ctx *ctx, UCHAR id[12])
   {
     nr_ice_stun_id *xid;
 
     xid=STAILQ_FIRST(&ctx->ids);
@@ -550,39 +550,39 @@ int nr_ice_ctx_remember_id(nr_ice_ctx *c
     STAILQ_INSERT_TAIL(&ctx->ids,xid,entry);
 
     _status=0;
   abort:
     return(_status);
 }
 
 
-/* Clean up some of the resources (mostly file descriptors) used 
+/* Clean up some of the resources (mostly file descriptors) used
    by candidates we didn't choose. Note that this still leaves
    a fair amount of non-system stuff floating around. This gets
    cleaned up when you destroy the ICE ctx */
 int nr_ice_ctx_finalize(nr_ice_ctx *ctx, nr_ice_peer_ctx *pctx)
   {
     nr_ice_media_stream *lstr,*rstr;
 
     r_log(LOG_ICE,LOG_DEBUG,"Finalizing ICE ctx %s, peer=%s",ctx->label,pctx->label);
-    /* 
-       First find the peer stream, if any 
+    /*
+       First find the peer stream, if any
     */
     lstr=STAILQ_FIRST(&ctx->streams);
     while(lstr){
       rstr=STAILQ_FIRST(&pctx->peer_streams);
-      
+
       while(rstr){
         if(rstr->local_stream==lstr)
           break;
 
         rstr=STAILQ_NEXT(rstr,entry);
       }
-      
+
       nr_ice_media_stream_finalize(lstr,rstr);
 
       lstr=STAILQ_NEXT(lstr,entry);
     }
 
     return(0);
   }
 
--- a/media/mtransport/third_party/nICEr/src/ice/ice_ctx.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_ctx.h
@@ -56,17 +56,17 @@ typedef struct nr_ice_turn_server_ {
     UINT4                 bandwidth_kbps;
     UINT4                 lifetime_secs;
     char                 *username;
     Data                 *password;
 } nr_ice_turn_server;
 
 typedef struct nr_ice_foundation_ {
   int index;
-  
+
   nr_transport_addr addr;
   int type;
   nr_ice_stun_server *stun_server;
 
   STAILQ_ENTRY(nr_ice_foundation_) entry;
 } nr_ice_foundation;
 
 typedef STAILQ_HEAD(nr_ice_foundation_head_,nr_ice_foundation_) nr_ice_foundation_head;
@@ -98,33 +98,33 @@ typedef STAILQ_HEAD(nr_ice_stun_id_head_
 
 struct nr_ice_ctx_ {
   UINT4 flags;
   int state;
 #define NR_ICE_STATE_CREATED          1
 #define NR_ICE_STATE_INITIALIZING     2
 #define NR_ICE_STATE_INITIALIZED      3
   char *label;
-  
+
   char *ufrag;
   char *pwd;
 
   UINT4 Ta;
 
   nr_ice_stun_server *stun_servers;           /* The list of stun servers */
   int stun_server_ct;
   nr_ice_turn_server *turn_servers;           /* The list of turn servers */
   int turn_server_ct;
 
   nr_ice_foundation_head foundations;
-  
+
   nr_ice_media_stream_head streams;           /* Media streams */
   int stream_ct;
   nr_ice_socket_head sockets;                 /* The sockets we're using */
-  int uninitialized_candidates;  
+  int uninitialized_candidates;
 
   UINT4 gather_rto;
   UINT4 stun_delay;
 
   nr_ice_peer_ctx_head peers;
   nr_ice_stun_id_head ids;
 
   NR_async_cb done_cb;
--- a/media/mtransport/third_party/nICEr/src/ice/ice_handler.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_handler.h
@@ -35,24 +35,24 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 #ifndef _ice_h
 #define _ice_h
 #ifdef __cplusplus
 using namespace std;
 extern "C" {
 #endif /* __cplusplus */
 
 typedef struct nr_ice_handler_vtbl_ {
-  /* The checks on this media stream are done. The handler needs to 
+  /* The checks on this media stream are done. The handler needs to
      select a single pair to proceed with (regular nomination).
      Once this returns the check starts and the pair can be
      written on. Use nr_ice_candidate_pair_select() to perform the
      selection.
      TODO: !ekr! is this right?
   */
-  int (*select_pair)(void *obj,nr_ice_media_stream *stream, 
+  int (*select_pair)(void *obj,nr_ice_media_stream *stream,
 int component_id, nr_ice_cand_pair **potentials,int potential_ct);
 
   /* This media stream is ready to read/write (aggressive nomination).
      May be called again if the nominated pair changes due to
      ICE instability. TODO: !ekr! think about this
   */
   int (*stream_ready)(void *obj, nr_ice_media_stream *stream);
 
--- a/media/mtransport/third_party/nICEr/src/ice/ice_media_stream.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_media_stream.c
@@ -94,24 +94,24 @@ int nr_ice_media_stream_destroy(nr_ice_m
 
     stream=*streamp;
     *streamp=0;
 
     STAILQ_FOREACH_SAFE(c1, &stream->components, entry, c2){
       STAILQ_REMOVE(&stream->components,c1,nr_ice_component_,entry);
       nr_ice_component_destroy(&c1);
     }
-    
+
     TAILQ_FOREACH_SAFE(p1, &stream->check_list, entry, p2){
       TAILQ_REMOVE(&stream->check_list,p1,entry);
       nr_ice_candidate_pair_destroy(&p1);
     }
-   
+
     RFREE(stream->label);
-    
+
     RFREE(stream->ufrag);
     RFREE(stream->pwd);
 
     if(stream->timer)
       NR_async_timer_cancel(stream->timer);
 
     RFREE(stream);
 
@@ -124,17 +124,17 @@ int nr_ice_media_stream_initialize(nr_ic
     nr_ice_component *comp;
 
     comp=STAILQ_FIRST(&stream->components);
     while(comp){
       if(r=nr_ice_component_initialize(ctx,comp))
         ABORT(r);
       comp=STAILQ_NEXT(comp,entry);
     }
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
 #define MAX_ATTRIBUTE_SIZE 256
 
 int nr_ice_media_stream_get_attributes(nr_ice_media_stream *stream, char ***attrsp, int *attrctp)
@@ -149,17 +149,17 @@ int nr_ice_media_stream_get_attributes(n
 
     /* First find out how many attributes we need */
     comp=STAILQ_FIRST(&stream->components);
     while(comp){
       if(r=nr_ice_component_prune_candidates(stream->ctx,comp))
         ABORT(r);
 
       attrct+=comp->candidate_ct;
-      
+
       comp=STAILQ_NEXT(comp,entry);
     }
 
     if(attrct < 1){
       r_log(LOG_ICE,LOG_WARNING,"ICE-STREAM(%s): Failed to find any components for stream",stream->label);
       ABORT(R_FAILED);
     }
 
@@ -178,17 +178,17 @@ int nr_ice_media_stream_get_attributes(n
       nr_ice_candidate *cand;
 
       cand=TAILQ_FIRST(&comp->candidates);
       while(cand){
         assert(index < attrct);
 
         if(r=nr_ice_format_candidate_attribute(cand, attrs[index],MAX_ATTRIBUTE_SIZE))
           ABORT(r);
-        
+
         index++;
 
         cand=TAILQ_NEXT(cand,entry_comp);
       }
       comp=STAILQ_NEXT(comp,entry);
     }
 
     *attrsp=attrs;
@@ -215,45 +215,45 @@ int nr_ice_media_stream_get_default_cand
     nr_ice_component *comp;
     nr_ice_candidate *cand;
     nr_ice_candidate *best_cand = NULL;
 
     comp=STAILQ_FIRST(&stream->components);
     while(comp){
       if (comp->component_id == component)
         break;
-      
+
       comp=STAILQ_NEXT(comp,entry);
     }
-    
+
     if (!comp)
       ABORT(R_NOT_FOUND);
 
-    /* We have the component. Now find the "best" candidate, making 
+    /* We have the component. Now find the "best" candidate, making
        use of the fact that more "reliable" candidate types have
        higher numbers. So, we sort by type and then priority within
        type
     */
     cand=TAILQ_FIRST(&comp->candidates);
     while(cand){
       if (!best_cand) {
         best_cand = cand;
       }
       else {
         if (best_cand->type < cand->type) {
           best_cand = cand;
-        } else if (best_cand->type == cand->type) { 
+        } else if (best_cand->type == cand->type) {
           if (best_cand->priority < cand->priority)
             best_cand = cand;
         }
       }
 
       cand=TAILQ_NEXT(cand,entry_comp);
     }
-    
+
     /* No candidates */
     if (!best_cand)
       ABORT(R_NOT_FOUND);
 
     *candp = best_cand;
 
     _status=0;
   abort:
@@ -298,17 +298,17 @@ static void nr_ice_media_stream_check_ti
     assert(stream->pctx->active_streams!=0);
 
     timer_val=stream->pctx->ctx->Ta*stream->pctx->active_streams;
 
     if (stream->ice_state == NR_ICE_MEDIA_STREAM_CHECKS_COMPLETED) {
       r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): bogus state for stream %s",stream->pctx->label,stream->label);
     }
     assert(stream->ice_state != NR_ICE_MEDIA_STREAM_CHECKS_COMPLETED);
-    
+
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): check timer expired for media stream %s",stream->pctx->label,stream->label);
     stream->timer=0;
 
     /* Find the highest priority WAITING check and move it to RUNNING */
     pair=TAILQ_FIRST(&stream->check_list);
     while(pair){
       if(pair->state==NR_ICE_PAIR_STATE_WAITING)
         break;
@@ -346,44 +346,44 @@ static void nr_ice_media_stream_check_ti
 /* Start checks for this media stream (aka check list) */
 int nr_ice_media_stream_start_checks(nr_ice_peer_ctx *pctx, nr_ice_media_stream *stream)
   {
     nr_ice_media_stream_set_state(stream,NR_ICE_MEDIA_STREAM_CHECKS_ACTIVE);
     nr_ice_media_stream_check_timer_cb(0,0,stream);
 
     return(0);
   }
-  
+
 /* Start checks for this media stream (aka check list) S 5.7 */
 int nr_ice_media_stream_unfreeze_pairs(nr_ice_peer_ctx *pctx, nr_ice_media_stream *stream)
   {
     int r,_status;
     r_assoc *assoc=0;
     nr_ice_cand_pair *pair=0;
 
     /* Already seen assoc */
     if(r=r_assoc_create(&assoc,r_assoc_crc32_hash_compute,5))
       ABORT(r);
 
     /* S 5.7.4. Set the highest priority pairs in each foundation to WAITING */
     pair=TAILQ_FIRST(&stream->check_list);
     while(pair){
       void *v;
-      
+
       if(r=r_assoc_fetch(assoc,pair->foundation,strlen(pair->foundation),&v)){
         if(r!=R_NOT_FOUND)
           ABORT(r);
         if(r=nr_ice_candidate_pair_unfreeze(pctx,pair))
           ABORT(r);
-        
+
         if(r=r_assoc_insert(assoc,pair->foundation,strlen(pair->foundation),
           0,0,0,R_ASSOC_NEW))
           ABORT(r);
       }
-      
+
       /* Already exists... fall through */
       pair=TAILQ_NEXT(pair,entry);
     }
 
     _status=0;
   abort:
     r_assoc_destroy(&assoc);
     return(_status);
@@ -392,17 +392,17 @@ int nr_ice_media_stream_unfreeze_pairs(n
 static int nr_ice_media_stream_unfreeze_pairs_match(nr_ice_media_stream *stream, char *foundation)
   {
     nr_ice_cand_pair *pair;
     int r,_status;
     int unfroze=0;
 
     pair=TAILQ_FIRST(&stream->check_list);
     while(pair){
-      if(pair->state==NR_ICE_PAIR_STATE_FROZEN && 
+      if(pair->state==NR_ICE_PAIR_STATE_FROZEN &&
         !strcmp(foundation,pair->foundation)){
         if(r=nr_ice_candidate_pair_unfreeze(stream->pctx,pair))
           ABORT(r);
         unfroze++;
       }
       pair=TAILQ_NEXT(pair,entry);
     }
 
@@ -416,33 +416,33 @@ static int nr_ice_media_stream_unfreeze_
 
 /* S 7.1.2.2 */
 int nr_ice_media_stream_unfreeze_pairs_foundation(nr_ice_media_stream *stream, char *foundation)
   {
     int r,_status;
     nr_ice_media_stream *str;
        nr_ice_component *comp;
     int invalid_comps=0;
-    
+
     /* 1. Unfreeze all frozen pairs with the same foundation
        in this stream */
     if(r=nr_ice_media_stream_unfreeze_pairs_match(stream,foundation)){
       if(r!=R_NOT_FOUND)
         ABORT(r);
     }
 
     /* 2. See if there is a pair in the valid list for every component */
     comp=STAILQ_FIRST(&stream->components);
     while(comp){
       if(!comp->valid_pairs)
         invalid_comps++;
 
       comp=STAILQ_NEXT(comp,entry);
     }
-    
+
     /* If there is a pair in the valid list for every component... */
     /* Now go through the check lists for the other streams */
     str=STAILQ_FIRST(&stream->pctx->peer_streams);
     while(str){
       if(str!=stream){
         switch(str->ice_state){
           case NR_ICE_MEDIA_STREAM_CHECKS_ACTIVE:
             /* Unfreeze matching pairs */
@@ -452,17 +452,17 @@ int nr_ice_media_stream_unfreeze_pairs_f
             }
             break;
           case NR_ICE_MEDIA_STREAM_CHECKS_FROZEN:
             /* Unfreeze matching pairs if any */
             r=nr_ice_media_stream_unfreeze_pairs_match(str,foundation);
             if(r){
               if(r!=R_NOT_FOUND)
                 ABORT(r);
-              
+
               /* OK, no matching pairs: execute the algorithm from 5.7
                  for this stream */
               if(r=nr_ice_media_stream_unfreeze_pairs(str->pctx,str))
                 ABORT(r);
             }
             if(r=nr_ice_media_stream_start_checks(str->pctx,str))
               ABORT(r);
 
@@ -471,64 +471,64 @@ int nr_ice_media_stream_unfreeze_pairs_f
             break;
         }
       }
 
       str=STAILQ_NEXT(str,entry);
     }
 
 //    nr_ice_media_stream_dump_state(stream->pctx,stream,stderr);
-      
+
 
     _status=0;
   abort:
     return(_status);
   }
 
 
 int nr_ice_media_stream_dump_state(nr_ice_peer_ctx *pctx, nr_ice_media_stream *stream,FILE *out)
   {
     nr_ice_cand_pair *pair;
 
     //r_log(LOG_ICE,LOG_DEBUG,"MEDIA-STREAM(%s): state dump", stream->label);
     pair=TAILQ_FIRST(&stream->check_list);
     while(pair){
       nr_ice_candidate_pair_dump_state(pair,out);
-      
+
       pair=TAILQ_NEXT(pair,entry);
     }
 
     return(0);
   }
 
 int nr_ice_media_stream_set_state(nr_ice_media_stream *str, int state)
   {
     /* Make no-change a no-op */
     if (state == str->ice_state)
       return 0;
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): stream %s state %s->%s",
       str->pctx->label,str->label,
       nr_ice_media_stream_states[str->ice_state],
       nr_ice_media_stream_states[state]);
-    
+
     if(state == NR_ICE_MEDIA_STREAM_CHECKS_ACTIVE)
       str->pctx->active_streams++;
     if(str->ice_state == NR_ICE_MEDIA_STREAM_CHECKS_ACTIVE)
       str->pctx->active_streams--;
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): %d active streams",
       str->pctx->label, str->pctx->active_streams);
 
     str->ice_state=state;
-    
+
     return(0);
   }
 
-/* S OK, this component has a nominated. If every component has a nominated, 
+/* S OK, this component has a nominated. If every component has a nominated,
    the stream is ready */
 int nr_ice_media_stream_component_nominated(nr_ice_media_stream *stream,nr_ice_component *component)
   {
     int r,_status;
     nr_ice_component *comp;
 
     comp=STAILQ_FIRST(&stream->components);
     while(comp){
@@ -540,31 +540,31 @@ int nr_ice_media_stream_component_nomina
 
     /* At least one un-nominated component */
     if(comp)
       goto done;
 
     /* All done... */
     r_log(LOG_ICE,LOG_INFO,"ICE-PEER(%s)/ICE-STREAM(%s): all components have nominated candidate pairs",stream->pctx->label,stream->label);
     nr_ice_media_stream_set_state(stream,NR_ICE_MEDIA_STREAM_CHECKS_COMPLETED);
-    
+
     /* Cancel our timer */
     if(stream->timer){
       NR_async_timer_cancel(stream->timer);
       stream->timer=0;
     }
 
     if (stream->pctx->handler) {
       stream->pctx->handler->vtbl->stream_ready(stream->pctx->handler->obj,stream->local_stream);
     }
 
     /* Now tell the peer_ctx that we're done */
     if(r=nr_ice_peer_ctx_stream_done(stream->pctx,stream))
       ABORT(r);
-    
+
   done:
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_media_stream_component_failed(nr_ice_media_stream *stream,nr_ice_component *component)
   {
@@ -578,17 +578,17 @@ int nr_ice_media_stream_component_failed
 
     nr_ice_media_stream_set_state(stream,NR_ICE_MEDIA_STREAM_CHECKS_FAILED);
 
     /* OK, we need to cancel off everything on this component */
     p2=TAILQ_FIRST(&stream->check_list);
     while(p2){
       if(r=nr_ice_candidate_pair_cancel(p2->pctx,p2))
         ABORT(r);
-      
+
       p2=TAILQ_NEXT(p2,entry);
     }
 
     /* Cancel our timer */
     if(stream->timer){
       NR_async_timer_cancel(stream->timer);
       stream->timer=0;
     }
@@ -616,26 +616,26 @@ int nr_ice_media_stream_get_best_candida
     if(r=nr_ice_media_stream_find_component(str,component,&comp))
       ABORT(r);
 
     cand=TAILQ_FIRST(&comp->candidates);
     while(cand){
       if(cand->state==NR_ICE_CAND_STATE_INITIALIZED){
         if(!best_cand || (cand->priority>best_cand->priority))
           best_cand=cand;
-        
+
       }
       cand=TAILQ_NEXT(cand,entry_comp);
     }
-    
+
     if(!best_cand)
       ABORT(R_NOT_FOUND);
 
     *candp=best_cand;
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
 
 /* OK, we have the stream the user created, but that reflects the base
    ICE ctx, not the peer_ctx. So, find the related stream in the pctx,
@@ -644,24 +644,24 @@ int nr_ice_media_stream_find_component(n
   {
     int _status;
     nr_ice_component *comp;
 
     comp=STAILQ_FIRST(&str->components);
     while(comp){
       if(comp->component_id==comp_id)
         break;
-      
+
       comp=STAILQ_NEXT(comp,entry);
     }
     if(!comp)
       ABORT(R_NOT_FOUND);
 
     *compp=comp;
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
 
 int nr_ice_media_stream_send(nr_ice_peer_ctx *pctx, nr_ice_media_stream *str, int component, UCHAR *data, int len)
   {
@@ -729,17 +729,17 @@ int nr_ice_media_stream_finalize(nr_ice_
     lcomp=STAILQ_FIRST(&lstr->components);
     if(rstr)
       rcomp=STAILQ_FIRST(&rstr->components);
     else
       rcomp=0;
 
     while(lcomp){
       nr_ice_component_finalize(lcomp,rcomp);
-      
+
       lcomp=STAILQ_NEXT(lcomp,entry);
       if(rcomp){
         rcomp=STAILQ_NEXT(rcomp,entry);
       }
     }
 
     return(0);
   }
--- a/media/mtransport/third_party/nICEr/src/ice/ice_peer_ctx.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_peer_ctx.c
@@ -61,28 +61,28 @@ int nr_ice_peer_ctx_create(nr_ice_ctx *c
     pctx->handler=handler;
 
     /* Decide controlling vs. controlled */
     if(ctx->flags & NR_ICE_CTX_FLAGS_LITE){
       if(pctx->peer_lite){
         r_log(LOG_ICE,LOG_ERR,"Both sides are ICE-Lite");
         ABORT(R_BAD_DATA);
       }
-        
+
       pctx->controlling=0;
     }
     else{
       if(pctx->peer_lite || (ctx->flags & NR_ICE_CTX_FLAGS_OFFERER))
         pctx->controlling=1;
       else if(ctx->flags & NR_ICE_CTX_FLAGS_ANSWERER)
         pctx->controlling=0;
     }
     if(r=nr_crypto_random_bytes((UCHAR *)&pctx->tiebreaker,8))
       ABORT(r);
-    
+
     STAILQ_INIT(&pctx->peer_streams);
 
     STAILQ_INSERT_TAIL(&ctx->peers,pctx,entry);
 
     *pctxp=pctx;
 
     _status = 0;
   abort:
@@ -206,17 +206,17 @@ int nr_ice_peer_ctx_parse_trickle_candid
     nr_ice_media_stream *pstream;
     int r,_status;
     int needs_pairing = 0;
 
     pstream=STAILQ_FIRST(&pctx->peer_streams);
     while(pstream) {
       if (pstream->local_stream == stream)
         break;
-      
+
       pstream = STAILQ_NEXT(pstream, entry);
     }
     if (!pstream) {
       r_log(LOG_ICE,LOG_ERR,"ICE(%s): peer (%s) has no stream matching stream %s",pctx->ctx->label,pctx->label,stream->label);
       ABORT(R_NOT_FOUND);
     }
 
     switch(pstream->ice_state) {
@@ -281,22 +281,22 @@ int nr_ice_peer_ctx_pair_candidates(nr_i
 
     if(STAILQ_EMPTY(&pctx->peer_streams)) {
         r_log(LOG_ICE,LOG_ERR,"ICE(%s): peer (%s) received no media stream attribributes",pctx->ctx->label,pctx->label);
         ABORT(R_FAILED);
     }
 
     stream=STAILQ_FIRST(&pctx->peer_streams);
     while(stream){
-      if(r=nr_ice_media_stream_pair_candidates(pctx, stream->local_stream, 
+      if(r=nr_ice_media_stream_pair_candidates(pctx, stream->local_stream,
         stream))
         ABORT(r);
 
       stream=STAILQ_NEXT(stream,entry);
-    }   
+    }
 
     _status=0;
   abort:
     return(_status);
   }
 
 static void nr_ice_peer_ctx_destroy_cb(NR_SOCKET s, int how, void *cb_arg)
   {
@@ -441,23 +441,23 @@ int nr_ice_peer_ctx_stream_done(nr_ice_p
       else if(str->ice_state==NR_ICE_MEDIA_STREAM_CHECKS_FAILED){
         failed++;
       }
       else{
         break;
       }
       str=STAILQ_NEXT(str,entry);
     }
- 
+
     if(str)
       goto done;  /* Something isn't done */
 
     /* OK, we're finished, one way or another */
     r_log(LOG_ICE,LOG_INFO,"ICE-PEER(%s): all checks completed success=%d fail=%d",pctx->label,succeeded,failed);
-    
+
     /* Schedule a done notification
        IMPORTANT: This is done in a callback because we expect destructors
        of various kinds to be fired from here */
 
     assert(!pctx->done_cb_timer);
     NR_ASYNC_TIMER_SET(0,nr_ice_peer_ctx_fire_done,pctx,&pctx->done_cb_timer);
 
   done:
@@ -487,25 +487,25 @@ int nr_ice_peer_ctx_find_component(nr_ic
     if(r=nr_ice_media_stream_find_component(pstr,component_id,compp))
       ABORT(r);
 
     _status=0;
   abort:
     return(_status);
   }
 
-/* 
+/*
    This packet may be for us.
 
-   1. Find the matching peer component 
+   1. Find the matching peer component
    2. Examine the packet source address to see if it matches
-   one of the peer candidates. 
+   one of the peer candidates.
    3. Fire the relevant callback handler if there is a match
-   
-   Return 0 if match, R_REJECTED if no match, other errors 
+
+   Return 0 if match, R_REJECTED if no match, other errors
    if we can't even find the component or something like that.
 */
 
 int nr_ice_peer_ctx_deliver_packet_maybe(nr_ice_peer_ctx *pctx, nr_ice_component *comp, nr_transport_addr *source_addr, UCHAR *data, int len)
   {
     nr_ice_component *peer_comp;
     nr_ice_candidate *cand;
     int r,_status;
--- a/media/mtransport/third_party/nICEr/src/ice/ice_socket.c
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_socket.c
@@ -34,34 +34,34 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 
 static char *RCSSTRING __UNUSED__="$Id: ice_socket.c,v 1.2 2008/04/28 17:59:01 ekr Exp $";
 
 #include <assert.h>
 #include "nr_api.h"
 #include "ice_ctx.h"
 #include "stun.h"
 
-    
+
 static void nr_ice_socket_readable_cb(NR_SOCKET s, int how, void *cb_arg)
   {
     int r;
     nr_ice_stun_ctx *sc1,*sc2;
     nr_ice_socket *sock=cb_arg;
     UCHAR buf[8192];
     char string[256];
     nr_transport_addr addr;
     int len;
     size_t len_s;
     int is_stun;
     int is_req;
     int is_ind;
     nr_socket *stun_srv_sock=sock->sock;
 
     r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Socket ready to read",sock->ctx->label);
-    
+
     /* Re-arm first! */
     NR_ASYNC_WAIT(s,how,nr_ice_socket_readable_cb,cb_arg);
 
     if(r=nr_socket_recvfrom(sock->sock,buf,sizeof(buf),&len_s,0,&addr)){
       r_log(LOG_ICE,LOG_ERR,"ICE(%s): Error reading from socket",sock->ctx->label);
       return;
     }
 
@@ -120,17 +120,17 @@ static void nr_ice_socket_readable_cb(NR
               if(!is_ind)
                 r=nr_turn_client_process_response(sc1->u.turn_client,buf,len,&addr);
               else{
                 /* This is a bit of a hack. If it's a data indication, strip
                    off the TURN framing and re-enter. We don't care about
                    other kinds of indication */
                 nr_transport_addr n_addr;
                 size_t n_len;
-                
+
                 r=nr_turn_client_rewrite_indication_data(buf,len,&n_len,&n_addr);
                 if(!r){
                   r_log(LOG_ICE,LOG_DEBUG,"Unwrapped a data indication.");
                   len=n_len;
                   nr_transport_addr_copy(&addr,&n_addr);
                   stun_srv_sock=sc1->u.turn_client->wrapping_sock;
                   goto re_process;
                 }
@@ -140,30 +140,30 @@ static void nr_ice_socket_readable_cb(NR
 #endif /* USE_TURN */
 
           default:
             assert(0); /* Can't happen */
             return;
         }
         if(!r){
           break;
-        }        
+        }
 
         sc1=sc2;
       }
       if(!sc1){
         if (nr_ice_ctx_is_known_id(sock->ctx,((nr_stun_message_header*)buf)->id.octet))
             r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Message is a retransmit",sock->ctx->label);
         else
             r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Message does not correspond to any registered stun ctx",sock->ctx->label);
       }
     }
     else{
       r_log(LOG_ICE,LOG_DEBUG,"ICE(%s): Message is not STUN",sock->ctx->label);
-      
+
       nr_ice_ctx_deliver_packet(sock->ctx, sock->component, &addr, buf, len);
     }
 
     return;
   }
 
 int nr_ice_socket_create(nr_ice_ctx *ctx,nr_ice_component *comp, nr_socket *nsock, nr_ice_socket **sockp)
   {
@@ -175,54 +175,54 @@ int nr_ice_socket_create(nr_ice_ctx *ctx
       ABORT(R_NO_MEMORY);
 
     sock->sock=nsock;
     sock->ctx=ctx;
     sock->component=comp;
 
     TAILQ_INIT(&sock->candidates);
     TAILQ_INIT(&sock->stun_ctxs);
-    
+
     nr_socket_getfd(nsock,&fd);
     NR_ASYNC_WAIT(fd,NR_ASYNC_WAIT_READ,nr_ice_socket_readable_cb,sock);
 
     *sockp=sock;
 
     _status=0;
   abort:
     if(_status) RFREE(sock);
     return(_status);
   }
 
 
 int nr_ice_socket_destroy(nr_ice_socket **isockp)
   {
     nr_ice_stun_ctx *s1,*s2;
     nr_ice_socket *isock;
-    
+
     if(!isockp || !*isockp)
       return(0);
-    
+
     isock=*isockp;
     *isockp=0;
 
     /* Close the socket */
     nr_ice_socket_close(isock);
-    
+
     /* The STUN server */
     nr_stun_server_ctx_destroy(&isock->stun_server);
 
     /* Now clean up the STUN ctxs */
     TAILQ_FOREACH_SAFE(s1, &isock->stun_ctxs, entry, s2){
       TAILQ_REMOVE(&isock->stun_ctxs, s1, entry);
       RFREE(s1);
     }
 
     RFREE(isock);
-    
+
     return(0);
   }
 
 int nr_ice_socket_close(nr_ice_socket *isock)
   {
 #ifdef NR_SOCKET_IS_VOID_PTR
     NR_SOCKET fd=NULL;
     NR_SOCKET no_socket = NULL;
@@ -236,33 +236,33 @@ int nr_ice_socket_close(nr_ice_socket *i
 
     nr_socket_getfd(isock->sock,&fd);
     assert(isock->sock!=0);
     if(fd != no_socket){
       NR_ASYNC_CANCEL(fd,NR_ASYNC_WAIT_READ);
       NR_ASYNC_CANCEL(fd,NR_ASYNC_WAIT_WRITE);
       nr_socket_destroy(&isock->sock);
     }
-    
+
     return(0);
   }
 
 int nr_ice_socket_register_stun_client(nr_ice_socket *sock, nr_stun_client_ctx *srv,void **handle)
   {
     nr_ice_stun_ctx *sc=0;
     int _status;
 
     if(!(sc=RCALLOC(sizeof(nr_ice_stun_ctx))))
       ABORT(R_NO_MEMORY);
 
     sc->type=NR_ICE_STUN_CLIENT;
     sc->u.client=srv;
 
     TAILQ_INSERT_TAIL(&sock->stun_ctxs,sc,entry);
-    
+
     *handle=sc;
 
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_ice_socket_register_stun_server(nr_ice_socket *sock, nr_stun_server_ctx *srv,void **handle)
@@ -308,14 +308,14 @@ int nr_ice_socket_register_turn_client(n
 /* Just mark it deregistered. Don't delete it now because it's not safe
    in the CB, which is where this is likely to be called */
 int nr_ice_socket_deregister(nr_ice_socket *sock, void *handle)
   {
     nr_ice_stun_ctx *sc=handle;
 
     if(!sc)
       return(0);
-    
+
     sc->type=NR_ICE_STUN_NONE;
 
     return(0);
   }
 
--- a/media/mtransport/third_party/nICEr/src/ice/ice_socket.h
+++ b/media/mtransport/third_party/nICEr/src/ice/ice_socket.h
@@ -40,32 +40,32 @@ extern "C" {
 #endif /* __cplusplus */
 
 typedef struct nr_ice_stun_ctx_ {
   int type;
 #define NR_ICE_STUN_NONE    0 /* Deregistered */
 #define NR_ICE_STUN_CLIENT  1
 #define NR_ICE_STUN_SERVER  2
 #define NR_ICE_TURN_CLIENT  3
-  
+
   union {
     nr_stun_client_ctx *client;
     nr_stun_server_ctx *server;
     nr_turn_client_ctx *turn_client;
   } u;
 
   TAILQ_ENTRY(nr_ice_stun_ctx_) entry;
 } nr_ice_stun_ctx;
 
 
 
 typedef struct nr_ice_socket_ {
   nr_socket *sock;
   nr_ice_ctx *ctx;
-  
+
   nr_ice_candidate_head candidates;
   nr_ice_component *component;
 
   TAILQ_HEAD(nr_ice_stun_ctx_head_,nr_ice_stun_ctx_) stun_ctxs;
 
   nr_stun_server_ctx *stun_server;
   void *stun_server_handle;
 
--- a/media/mtransport/third_party/nICEr/src/net/nr_socket.c
+++ b/media/mtransport/third_party/nICEr/src/net/nr_socket.c
@@ -63,17 +63,17 @@ int nr_socket_destroy(nr_socket **sockp)
       return(0);
 
     sock=*sockp;
     *sockp=0;
 
     sock->vtbl->destroy(&sock->obj);
 
     RFREE(sock);
-    
+
     return(0);
   }
 
 int nr_socket_sendto(nr_socket *sock,const void *msg, size_t len, int flags,
   nr_transport_addr *addr)
   {
     return sock->vtbl->ssendto(sock->obj,msg,len,flags,addr);
   }
@@ -84,17 +84,17 @@ int nr_socket_recvfrom(nr_socket *sock,v
   {
     return sock->vtbl->srecvfrom(sock->obj, buf, maxlen, len, flags, addr);
   }
 
 int nr_socket_getfd(nr_socket *sock, NR_SOCKET *fd)
   {
     return sock->vtbl->getfd(sock->obj, fd);
   }
-  
+
 int nr_socket_getaddr(nr_socket *sock, nr_transport_addr *addrp)
   {
     return sock->vtbl->getaddr(sock->obj, addrp);
   }
 
 int nr_socket_close(nr_socket *sock)
   {
     return sock->vtbl->close(sock->obj);
--- a/media/mtransport/third_party/nICEr/src/net/transport_addr.c
+++ b/media/mtransport/third_party/nICEr/src/net/transport_addr.c
@@ -82,17 +82,17 @@ int nr_sockaddr_to_transport_addr(struct
         case IPPROTO_TCP:
         case IPPROTO_UDP:
           break;
         default:
           ABORT(R_BAD_ARGS);
       }
       addr->ip_version=NR_IPV4;
       addr->protocol=protocol;
-      
+
       memcpy(&addr->u.addr4,saddr,sizeof(struct sockaddr_in));
       addr->addr=(struct sockaddr *)&addr->u.addr4;
       addr->addr_len=saddr_len;
     }
     else if(saddr->sa_family==PF_INET6){
       /* Not implemented */
       ABORT(R_INTERNAL);
     }
@@ -107,17 +107,17 @@ int nr_sockaddr_to_transport_addr(struct
     return(_status);
   }
 
 
 int nr_transport_addr_copy(nr_transport_addr *to, nr_transport_addr *from)
   {
     memcpy(to,from,sizeof(nr_transport_addr));
     to->addr=(struct sockaddr *)((char *)to + ((char *)from->addr - (char *)from));
-    
+
     return(0);
   }
 
 /* Convenience fxn. Is this the right API?*/
 int nr_ip4_port_to_transport_addr(UINT4 ip4, UINT2 port, int protocol, nr_transport_addr *addr)
   {
     int r,_status;
 
@@ -156,32 +156,32 @@ int nr_ip4_str_port_to_transport_addr(ch
   abort:
     return(_status);
   }
 
 int nr_transport_addr_get_addrstring(nr_transport_addr *addr, char *str, int maxlen)
   {
     char buf[100]; // Long enough
     int _status;
-    
+
     switch(addr->ip_version){
       case NR_IPV4:
         if(!(addr2ascii(AF_INET, &addr->u.addr4.sin_addr,sizeof(struct in_addr),buf)))
           ABORT(R_INTERNAL);
         if(strlen(buf)>(maxlen-1))
           ABORT(R_BAD_ARGS);
         strcpy(str,buf);
         break;
       case NR_IPV6:
         UNIMPLEMENTED;
       default:
         ABORT(R_INTERNAL);
     }
 
-            
+
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_transport_addr_get_port(nr_transport_addr *addr, int *port)
   {
     int _status;
--- a/media/mtransport/third_party/nICEr/src/stun/addrs.c
+++ b/media/mtransport/third_party/nICEr/src/stun/addrs.c
@@ -292,17 +292,17 @@ abort:
 
 #define _ADAPTERS_BASE_REG "SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}"
 
 static int nr_win32_get_adapter_friendly_name(char *adapter_GUID, char **friendly_name)
 {
     int r,_status;
     HKEY adapter_reg;
     TCHAR adapter_key[_NR_MAX_KEY_LENGTH];
-	TCHAR keyval_buf[_NR_MAX_KEY_LENGTH];
+    TCHAR keyval_buf[_NR_MAX_KEY_LENGTH];
     TCHAR adapter_GUID_tchar[_NR_MAX_NAME_LENGTH];
     DWORD keyval_len, key_type;
     size_t converted_chars, newlen;
     char *my_fn = 0;
 
 #ifdef _UNICODE
     mbstowcs_s(&converted_chars, adapter_GUID_tchar, strlen(adapter_GUID)+1,
                adapter_GUID, _TRUNCATE);
@@ -310,34 +310,34 @@ static int nr_win32_get_adapter_friendly
     strlcpy(adapter_GUID_tchar, adapter_GUID, _NR_MAX_NAME_LENGTH);
 #endif
 
     _tcscpy_s(adapter_key, _NR_MAX_KEY_LENGTH, TEXT(_ADAPTERS_BASE_REG));
     _tcscat_s(adapter_key, _NR_MAX_KEY_LENGTH, TEXT("\\"));
     _tcscat_s(adapter_key, _NR_MAX_KEY_LENGTH, adapter_GUID_tchar);
     _tcscat_s(adapter_key, _NR_MAX_KEY_LENGTH, TEXT("\\Connection"));
 
-	r = RegOpenKeyEx(HKEY_LOCAL_MACHINE, adapter_key, 0, KEY_READ, &adapter_reg);
+    r = RegOpenKeyEx(HKEY_LOCAL_MACHINE, adapter_key, 0, KEY_READ, &adapter_reg);
 
     if (r != ERROR_SUCCESS) {
       r_log(NR_LOG_STUN, LOG_ERR, "Got error %d opening adapter reg key\n", r);
       ABORT(R_INTERNAL);
     }
 
     keyval_len = sizeof(keyval_buf);
     r = RegQueryValueEx(adapter_reg, TEXT("Name"), NULL, &key_type,
                         (BYTE *)keyval_buf, &keyval_len);
 
     RegCloseKey(adapter_reg);
 
 #ifdef UNICODE
     newlen = wcslen(keyval_buf)+1;
     my_fn = (char *) RCALLOC(newlen);
     if (!my_fn) {
-      ABORT(R_NO_MEMORY); 
+      ABORT(R_NO_MEMORY);
     }
     wcstombs_s(&converted_chars, my_fn, newlen, keyval_buf, _TRUNCATE);
 #else
     my_fn = r_strdup(keyval_buf);
 #endif
 
     *friendly_name = my_fn;
     _status=0;
@@ -387,51 +387,51 @@ stun_get_win32_addrs(nr_transport_addr a
 
     while (pAdapter) {
       char *c;
 
       r_log(NR_LOG_STUN, LOG_DEBUG, "Adapter Name (GUID) = %s", pAdapter->AdapterName);
       r_log(NR_LOG_STUN, LOG_DEBUG, "Adapter Description = %s", pAdapter->Description);
 
       if ((r = nr_win32_get_adapter_friendly_name(pAdapter->AdapterName, &friendly_name))) {
-        r_log(NR_LOG_STUN, LOG_ERR, "Error %d getting friendly name for adapter with GUID = %s", r, 
+        r_log(NR_LOG_STUN, LOG_ERR, "Error %d getting friendly name for adapter with GUID = %s", r,
               pAdapter->AdapterName);
         ABORT(r);
       }
 
       r_log(NR_LOG_STUN, LOG_INFO, "Found adapter with friendly name: %s", friendly_name);
 
       snprintf(munged_ifname, IFNAMSIZ, "%s%c", friendly_name, 0);
       RFREE(friendly_name);
       friendly_name = 0;
 
       /* replace spaces with underscores */
       c = strchr(munged_ifname, ' ');
       while (c != NULL) {
         *c = '_';
          c = strchr(munged_ifname, ' ');
       }
-      c = strchr(munged_ifname, '.'); 
+      c = strchr(munged_ifname, '.');
       while (c != NULL) {
         *c = '+';
-         c = strchr(munged_ifname, '+'); 
+         c = strchr(munged_ifname, '+');
       }
 
       r_log(NR_LOG_STUN, LOG_INFO, "Converted ifname: %s", munged_ifname);
 
       for (pAddrString = &(pAdapter->IpAddressList); pAddrString != NULL; pAddrString = pAddrString->Next) {
         unsigned long this_addr = inet_addr(pAddrString->IpAddress.String);
 
         if (this_addr == 0)
           continue;
 
         r_log(NR_LOG_STUN, LOG_INFO, "Adapter %s address: %s", munged_ifname, pAddrString->IpAddress.String);
 
         addrs[n].ip_version=NR_IPV4;
-        addrs[n].protocol = IPPROTO_UDP; 
+        addrs[n].protocol = IPPROTO_UDP;
 
         addrs[n].u.addr4.sin_family=PF_INET;
         addrs[n].u.addr4.sin_port=0;
         addrs[n].u.addr4.sin_addr.s_addr=this_addr;
         addrs[n].addr=(struct sockaddr *)&(addrs[n].u.addr4);
         addrs[n].addr_len=sizeof(struct sockaddr_in);
 
         strlcpy(addrs[n].ifname, munged_ifname, sizeof(addrs[n].ifname));
@@ -477,17 +477,17 @@ stun_get_win32_addrs(nr_transport_addr a
 
     buflen = 0;
 
     r = GetAdaptersAddresses(AF_INET, 0, NULL, AdapterAddresses, &buflen);
     if (r != ERROR_BUFFER_OVERFLOW) {
       r_log(NR_LOG_STUN, LOG_ERR, "Error getting buf len from GetAdaptersAddresses()");
       ABORT(R_INTERNAL);
     }
-        
+
     AdapterAddresses = (PIP_ADAPTER_ADDRESSES) RMALLOC(buflen);
     if (AdapterAddresses == NULL) {
       r_log(NR_LOG_STUN, LOG_ERR, "Error allocating buf for GetAdaptersAddresses()");
       ABORT(R_NO_MEMORY);
     }
 
     /* for real, this time */
 
@@ -496,36 +496,36 @@ stun_get_win32_addrs(nr_transport_addr a
       r_log(NR_LOG_STUN, LOG_ERR, "Error getting addresses from GetAdaptersAddresses()");
       ABORT(R_INTERNAL);
     }
 
     /* Loop through the adapters */
 
     for (tmpAddress = AdapterAddresses; tmpAddress != NULL; tmpAddress = tmpAddress->Next) {
       char *c;
-        
+
       if (tmpAddress->OperStatus != IfOperStatusUp)
         continue;
 
       snprintf(munged_ifname, IFNAMSIZ, "%S%c", tmpAddress->FriendlyName, 0);
       /* replace spaces with underscores */
-      c = strchr(munged_ifname, ' '); 
+      c = strchr(munged_ifname, ' ');
       while (c != NULL) {
         *c = '_';
-         c = strchr(munged_ifname, ' '); 
+         c = strchr(munged_ifname, ' ');
       }
-      c = strchr(munged_ifname, '.'); 
+      c = strchr(munged_ifname, '.');
       while (c != NULL) {
         *c = '+';
-         c = strchr(munged_ifname, '+'); 
+         c = strchr(munged_ifname, '+');
       }
 
       if ((tmpAddress->IfIndex != 0) || (tmpAddress->Ipv6IfIndex != 0)) {
         IP_ADAPTER_UNICAST_ADDRESS *u = 0;
-        
+
         for (u = tmpAddress->FirstUnicastAddress; u != 0; u = u->Next) {
           SOCKET_ADDRESS *sa_addr = &u->Address;
 
           if ((sa_addr->lpSockaddr->sa_family == AF_INET) ||
               (sa_addr->lpSockaddr->sa_family == AF_INET6)) {
             if ((r=nr_sockaddr_to_transport_addr((struct sockaddr*)sa_addr->lpSockaddr, sizeof(*sa_addr->lpSockaddr), IPPROTO_UDP, 0, &(addrs[n]))))
                 ABORT(r);
           }
@@ -630,17 +630,17 @@ stun_get_siocgifconf_addrs(nr_transport_
 static int
 nr_stun_is_duplicate_addr(nr_transport_addr addrs[], int count, nr_transport_addr *addr)
 {
     int i;
     int different;
 
     for (i = 0; i < count; ++i) {
         different = nr_transport_addr_cmp(&addrs[i], addr, NR_TRANSPORT_ADDR_CMP_MODE_ALL);
-        if (!different) 
+        if (!different)
             return 1;  /* duplicate */
     }
 
     return 0;
 }
 
 int
 nr_stun_remove_duplicate_addrs(nr_transport_addr addrs[], int remove_loopback, int *count)
--- a/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_client_ctx.c
@@ -96,17 +96,17 @@ int nr_stun_client_ctx_create(char *labe
   }
 
 int nr_stun_client_start(nr_stun_client_ctx *ctx, int mode, NR_async_cb finished_cb, void *cb_arg)
   {
     int r,_status;
 
     if (ctx->state != NR_STUN_CLIENT_STATE_INITTED)
         ABORT(R_NOT_PERMITTED);
-    
+
     ctx->mode=mode;
 
     ctx->state=NR_STUN_CLIENT_STATE_RUNNING;
     ctx->finished_cb=finished_cb;
     ctx->cb_arg=cb_arg;
 
     if(mode!=NR_STUN_CLIENT_MODE_KEEPALIVE){
       if(r=nr_stun_client_send_request(ctx))
@@ -132,17 +132,17 @@ int nr_stun_client_restart(nr_stun_clien
     int mode;
     NR_async_cb finished_cb;
     void *cb_arg;
     nr_stun_message_attribute *ec;
     nr_stun_message_attribute *as;
 
     if (ctx->state != NR_STUN_CLIENT_STATE_RUNNING)
         ABORT(R_NOT_PERMITTED);
- 
+
     assert(ctx->retry_ct <= 2);
     if (ctx->retry_ct > 2)
         ABORT(R_NOT_PERMITTED);
 
     ++ctx->retry_ct;
 
     mode = ctx->mode;
     finished_cb = ctx->finished_cb;
@@ -232,17 +232,17 @@ static void nr_stun_client_timer_expired
     if (ctx->state != NR_STUN_CLIENT_STATE_RUNNING) {
         /* Cancel the timer firing */
         if (ctx->timer_handle){
             NR_async_timer_cancel(ctx->timer_handle);
             ctx->timer_handle=0;
         }
 
         if (ctx->finished_cb) {
-            NR_async_cb finished_cb = ctx->finished_cb; 
+            NR_async_cb finished_cb = ctx->finished_cb;
             ctx->finished_cb = 0;  /* prevent 2nd call */
             /* finished_cb call must be absolutely last thing in function
              * because as a side effect this ctx may be operated on in the
              * callback */
             finished_cb(0,0,ctx->cb_arg);
         }
     }
     return;
@@ -359,17 +359,17 @@ static int nr_stun_client_send_request(n
             ABORT(r);
     }
 
     snprintf(string, sizeof(string)-1, "STUN-CLIENT(%s): Sending to %s ", ctx->label, ctx->peer_addr.as_string);
     r_dump(NR_LOG_STUN, LOG_DEBUG, string, (char*)ctx->request->buffer, ctx->request->length);
 
     if(r=nr_socket_sendto(ctx->sock, ctx->request->buffer, ctx->request->length, 0, &ctx->peer_addr))
       ABORT(r);
-    
+
     ctx->request_ct++;
 
     if (NR_STUN_GET_TYPE_CLASS(ctx->request->header.type) == NR_CLASS_INDICATION) {
         /* no need to set the timer because indications don't receive a
          * response */
     }
     else {
         if (ctx->request_ct < ctx->maximum_transmits) {
@@ -381,17 +381,17 @@ static int nr_stun_client_send_request(n
         }
 
         r_log(NR_LOG_STUN,LOG_DEBUG,"STUN-CLIENT(%s): Next timer will fire in %u ms",ctx->label, ctx->timeout_ms);
 
         gettimeofday(&ctx->timer_set, 0);
 
         NR_ASYNC_TIMER_SET(ctx->timeout_ms, nr_stun_client_timer_expired_cb, ctx, &ctx->timer_handle);
     }
-   
+
     _status=0;
   abort:
     if (_status) {
       ctx->state=NR_STUN_CLIENT_STATE_FAILED;
     }
     return(_status);
   }
 
@@ -628,34 +628,34 @@ int nr_stun_client_process_response(nr_s
                 ABORT(r);
         }
         else if (nr_stun_message_has_attribute(ctx->response, NR_STUN_ATTR_MAPPED_ADDRESS, &attr)) {
             if ((r=nr_transport_addr_copy(mapped_addr, &attr->u.mapped_address)))
                 ABORT(r);
         }
         else
             ABORT(R_BAD_DATA);
- 
+
         r_log(NR_LOG_STUN,LOG_DEBUG,"STUN-CLIENT(%s): Received mapped address: %s", ctx->label, mapped_addr->as_string);
     }
 
     ctx->state=NR_STUN_CLIENT_STATE_DONE;
 
     _status=0;
   abort:
     if (ctx->state != NR_STUN_CLIENT_STATE_RUNNING) {
         /* Cancel the timer firing */
         if (ctx->timer_handle) {
             NR_async_timer_cancel(ctx->timer_handle);
             ctx->timer_handle = 0;
         }
 
         /* Fire the callback */
         if (ctx->finished_cb) {
-            NR_async_cb finished_cb = ctx->finished_cb; 
+            NR_async_cb finished_cb = ctx->finished_cb;
             ctx->finished_cb = 0;  /* prevent 2nd call */
             /* finished_cb call must be absolutely last thing in function
              * because as a side effect this ctx may be operated on in the
              * callback */
             finished_cb(0,0,ctx->cb_arg);
         }
     }
 
@@ -663,36 +663,36 @@ int nr_stun_client_process_response(nr_s
   }
 
 int nr_stun_client_ctx_destroy(nr_stun_client_ctx **ctxp)
   {
     nr_stun_client_ctx *ctx;
 
     if(!ctxp || !*ctxp)
       return(0);
-    
+
     ctx=*ctxp;
 
     nr_stun_client_reset(ctx);
 
     RFREE(ctx->nonce);
     RFREE(ctx->realm);
 
     RFREE(ctx->label);
     RFREE(ctx);
-    
+
     return(0);
   }
 
 
 int nr_stun_client_cancel(nr_stun_client_ctx *ctx)
   {
     /* Cancel the timer firing */
     if (ctx->timer_handle){
       NR_async_timer_cancel(ctx->timer_handle);
       ctx->timer_handle=0;
     }
 
     /* Mark cancelled so we ignore any returned messsages */
     ctx->state=NR_STUN_CLIENT_STATE_CANCELLED;
-    
+
     return(0);
   }
--- a/media/mtransport/third_party/nICEr/src/stun/stun_codec.c
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_codec.c
@@ -995,17 +995,17 @@ nr_stun_attr_codec_unknown_attributes_de
     UINT2 *a;
 
     if ((attrlen % 4) != 0) {
         r_log(NR_LOG_STUN, LOG_WARNING, "Attribute is illegal size: %d", attrlen);
         ABORT(R_REJECTED);
     }
 
     unknown_attributes->num_attributes = attrlen / 2;
- 
+
     if (unknown_attributes->num_attributes > NR_STUN_MAX_UNKNOWN_ATTRIBUTES) {
         r_log(NR_LOG_STUN, LOG_WARNING, "Too many UNKNOWN-ATTRIBUTES: %d", unknown_attributes->num_attributes);
         ABORT(R_REJECTED);
     }
 
     for (i = 0; i < unknown_attributes->num_attributes; ++i) {
         a = &(unknown_attributes->attribute[i]);
         if (nr_stun_decode_htons(buf, buflen, &offset, a))
@@ -1432,20 +1432,20 @@ nr_stun_decode_message(nr_stun_message *
                 attr->invalid = 1;
             }
             else {
                 attr_info->codec->print(attr_info, "Parsed", &attr->u);
 
 #ifdef USE_STUN_PEDANTIC
                 r_log(NR_LOG_STUN, LOG_DEBUG, "Before pedantic attr_info checks");
                 if (attr_info->illegal) {
-    		    if ((r=attr_info->illegal(attr_info, attr->length, &attr->u))) {
+                    if ((r=attr_info->illegal(attr_info, attr->length, &attr->u))) {
                         r_log(NR_LOG_STUN, LOG_DEBUG, "Failed pedantic attr_info checks");
                         ABORT(r);
-		    }
+                    }
                 }
                 r_log(NR_LOG_STUN, LOG_DEBUG, "After pedantic attr_info checks");
 #endif /* USE_STUN_PEDANTIC */
             }
         }
 
         offset += attr->encoding_length;
         size -= attr->encoding_length;
--- a/media/mtransport/third_party/nICEr/src/stun/stun_proc.c
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_proc.c
@@ -116,17 +116,17 @@ nr_stun_receive_message(nr_stun_message 
         /* nothing to check in this case */
         break;
 #endif /* USE_STUND_0_96 */
 
     default:
 #ifdef USE_RFC_3489_BACKWARDS_COMPATIBLE
         /* in RFC 3489 there is no magic cookie, it's part of the transaction ID */
 #else
-#ifdef NDEBUG 
+#ifdef NDEBUG
         /* in deployment builds we should always see a recognized magic cookie */
         r_log(NR_LOG_STUN, LOG_ERR, "Missing Magic Cookie");
         ABORT(R_REJECTED);
 #else
         /* ignore this condition because sometimes we like to pretend we're
          * a server talking to old clients and their messages don't contain
          * a magic cookie at all but rather the magic cookie field is part
          * of their ID and therefore random */
@@ -144,17 +144,17 @@ nr_stun_receive_message(nr_stun_message 
 int
 nr_stun_process_request(nr_stun_message *req, nr_stun_message *res)
 {
     int _status;
 #ifdef USE_STUN_PEDANTIC
     int r;
     nr_stun_attr_unknown_attributes unknown_attributes = { { 0 } };
     nr_stun_message_attribute *attr;
-    
+
     if (req->comprehension_required_unknown_attributes > 0) {
         nr_stun_form_error_response(req, res, 420, "Unknown Attributes");
 
         TAILQ_FOREACH(attr, &req->attributes, entry) {
             if (attr->name == 0) {
                 /* unrecognized attribute */
 
                 /* should never happen, but truncate if it ever were to occur */
@@ -182,34 +182,34 @@ nr_stun_process_request(nr_stun_message 
 }
 
 /* draft-ietf-behave-rfc3489bis-10.txt S 7.3.2 */
 int
 nr_stun_process_indication(nr_stun_message *ind)
 {
     int _status;
 #ifdef USE_STUN_PEDANTIC
-    
+
     if (ind->comprehension_required_unknown_attributes > 0)
         ABORT(R_REJECTED);
 #endif /* USE_STUN_PEDANTIC */
- 
+
     _status=0;
 #ifdef USE_STUN_PEDANTIC
   abort:
 #endif /* USE_STUN_PEDANTIC */
     return _status;
 }
 
 /* draft-ietf-behave-rfc3489bis-10.txt S 7.3.3 */
 int
 nr_stun_process_success_response(nr_stun_message *res)
 {
     int _status;
-    
+
 #ifdef USE_STUN_PEDANTIC
     if (res->comprehension_required_unknown_attributes > 0)
         ABORT(R_REJECTED);
 #endif /* USE_STUN_PEDANTIC */
 
     if (NR_STUN_GET_TYPE_METHOD(res->header.type) == NR_METHOD_BINDING) {
         if (! nr_stun_message_has_attribute(res, NR_STUN_ATTR_XOR_MAPPED_ADDRESS, 0)) {
             r_log(NR_LOG_STUN, LOG_ERR, "Missing XOR-MAPPED-ADDRESS");
--- a/media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.c
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.c
@@ -57,67 +57,67 @@ int nr_stun_server_ctx_create(char *labe
       ABORT(R_NO_MEMORY);
 
     if(!(ctx->label=r_strdup(label)))
       ABORT(R_NO_MEMORY);
     ctx->sock=sock;
     nr_socket_getaddr(sock,&ctx->my_addr);
 
     STAILQ_INIT(&ctx->clients);
-    
+
     *ctxp=ctx;
 
     _status=0;
   abort:
     return(_status);
   }
 
 int nr_stun_server_ctx_destroy(nr_stun_server_ctx **ctxp)
   {
     nr_stun_server_ctx *ctx;
     nr_stun_server_client *clnt1,*clnt2;
 
     if(!ctxp || !*ctxp)
       return(0);
-    
+
     ctx=*ctxp;
-   
+
     STAILQ_FOREACH_SAFE(clnt1, &ctx->clients, entry, clnt2) {
         nr_stun_server_destroy_client(clnt1);
     }
 
     RFREE(ctx->label);
     RFREE(ctx);
-    
+
     return(0);
   }
 
 int nr_stun_server_add_client(nr_stun_server_ctx *ctx, char *client_label, char *user, Data *pass, int (*stun_server_cb)(void *cb_arg, nr_stun_server_ctx *ctx,nr_socket *sock, nr_stun_server_request *req, int *error), void *cb_arg)
   {
     int r,_status;
 
     nr_stun_server_client *clnt=0;
 
     if(!(clnt=RCALLOC(sizeof(nr_stun_server_client))))
       ABORT(R_NO_MEMORY);
-    
+
     if(!(clnt->label=r_strdup(client_label)))
       ABORT(R_NO_MEMORY);
 
     if(!(clnt->username=r_strdup(user)))
       ABORT(R_NO_MEMORY);
 
     if(r=r_data_copy(&clnt->password,pass))
       ABORT(r);
 
     clnt->stun_server_cb=stun_server_cb;
     clnt->cb_arg=cb_arg;
 
     STAILQ_INSERT_TAIL(&ctx->clients,clnt,entry);
-    
+
     _status=0;
   abort:
     if(_status){
       nr_stun_server_destroy_client(clnt);
     }
     return(_status);
   }
 
@@ -193,17 +193,17 @@ int nr_stun_server_process_request(nr_st
     char string[256];
     nr_stun_message *req = 0;
     nr_stun_message *res = 0;
     nr_stun_server_client *clnt = 0;
     nr_stun_server_request info;
     int error;
 
     r_log(NR_LOG_STUN,LOG_DEBUG,"STUN-SERVER(%s): Received(my_addr=%s,peer_addr=%s)",ctx->label,ctx->my_addr.as_string,peer_addr->as_string);
-   
+
     snprintf(string, sizeof(string)-1, "STUN-SERVER(%s): Received ", ctx->label);
     r_dump(NR_LOG_STUN, LOG_DEBUG, string, (char*)msg, len);
 
     memset(&info,0,sizeof(info));
 
     if ((r=nr_stun_message_create2(&req, (UCHAR*)msg, len)))
         ABORT(r);
 
@@ -307,17 +307,17 @@ int nr_stun_server_process_request(nr_st
          nr_stun_form_error_response(req, res, 500, "Failed to specify error");
 
     if ((r=nr_stun_server_send_response(ctx, sock, peer_addr, res, clnt))) {
         r_log(NR_LOG_STUN,LOG_WARNING,"STUN-SERVER(label=%s): Failed sending response (my_addr=%s,peer_addr=%s)",ctx->label,ctx->my_addr.as_string,peer_addr->as_string);
         _status = R_FAILED;
     }
 
 #if 0
-    /* EKR: suppressed these checks because if you have an error when 
+    /* EKR: suppressed these checks because if you have an error when
        you are sending an error, things go wonky */
 #ifdef SANITY_CHECKS
     if (_status == R_ALREADY) {
         assert(NR_STUN_GET_TYPE_CLASS(res->header.type) == NR_CLASS_ERROR_RESPONSE);
         assert(nr_stun_message_has_attribute(res, NR_STUN_ATTR_ERROR_CODE, 0));
     }
     else {
         assert(NR_STUN_GET_TYPE_CLASS(res->header.type) == NR_CLASS_RESPONSE);
--- a/media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.h
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_server_ctx.h
@@ -52,17 +52,17 @@ struct nr_stun_server_client_ {
   char *username;
   Data password;
   int (*stun_server_cb)(void *cb_arg, nr_stun_server_ctx *ctx,nr_socket *sock, nr_stun_server_request *req, int *error);
   void *cb_arg;
   char nonce[NR_STUN_MAX_NONCE_BYTES+1];  /* +1 for \0 */
   STAILQ_ENTRY(nr_stun_server_client_) entry;
 };
 
-typedef STAILQ_HEAD(nr_stun_server_client_head_, nr_stun_server_client_) nr_stun_server_client_head; 
+typedef STAILQ_HEAD(nr_stun_server_client_head_, nr_stun_server_client_) nr_stun_server_client_head;
 
 struct nr_stun_server_ctx_ {
   char *label;
   nr_socket *sock;
   nr_transport_addr my_addr;
   nr_stun_server_client_head clients;
 };
 
--- a/media/mtransport/third_party/nICEr/src/stun/stun_util.c
+++ b/media/mtransport/third_party/nICEr/src/stun/stun_util.c
@@ -254,42 +254,42 @@ nr_stun_msg_type(int type)
 }
 
 int
 nr_random_alphanum(char *alphanum, int size)
 {
     static char alphanums[256] = {
         'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
         'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
-        'U', 'V', 'W', 'X', 'Y', 'Z', 
+        'U', 'V', 'W', 'X', 'Y', 'Z',
         'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
         'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
-        'u', 'v', 'w', 'x', 'y', 'z', 
-        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
+        'u', 'v', 'w', 'x', 'y', 'z',
+        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
         'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
         'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
-        'U', 'V', 'W', 'X', 'Y', 'Z', 
+        'U', 'V', 'W', 'X', 'Y', 'Z',
         'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
         'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
-        'u', 'v', 'w', 'x', 'y', 'z', 
-        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
+        'u', 'v', 'w', 'x', 'y', 'z',
+        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
         'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
         'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
-        'U', 'V', 'W', 'X', 'Y', 'Z', 
+        'U', 'V', 'W', 'X', 'Y', 'Z',
         'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
         'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
-        'u', 'v', 'w', 'x', 'y', 'z', 
-        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
+        'u', 'v', 'w', 'x', 'y', 'z',
+        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
         'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
         'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
-        'U', 'V', 'W', 'X', 'Y', 'Z', 
+        'U', 'V', 'W', 'X', 'Y', 'Z',
         'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
         'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
-        'u', 'v', 'w', 'x', 'y', 'z', 
-        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
+        'u', 'v', 'w', 'x', 'y', 'z',
+        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
         'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H' };
     int i;
 
     nr_crypto_random_bytes((UCHAR*)alphanum, size);
 
     /* now convert from binary to alphanumeric */
     for (i = 0; i < size; ++i)
         alphanum[i] = alphanums[(UCHAR)alphanum[i]];
--- a/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c
+++ b/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c
@@ -436,17 +436,17 @@ nr_turn_client_relay_indication_data(nr_
     nr_stun_client_send_indication_params params = { { 0 } };
     nr_stun_message *ind = 0;
 
     if ((r=nr_transport_addr_copy(&params.remote_addr, remote_addr)))
         ABORT(r);
 
     params.data.data = (UCHAR*)msg;
     params.data.len = len;
- 
+
     if ((r=nr_stun_build_send_indication(&params, &ind)))
         ABORT(r);
 
     if ((r=nr_socket_sendto(sock, ind->buffer, ind->length, flags, relay_addr)))
         ABORT(r);
 
     _status=0;
   abort:
--- a/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.h
+++ b/media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.h
@@ -41,17 +41,17 @@ typedef struct nr_turn_client_ctx_ {
 #define NR_TURN_CLIENT_STATE_RUNNING         2
 #define NR_TURN_CLIENT_STATE_ALLOCATED       3
 //#define NR_TURN_CLIENT_STATE_ACTIVE          5
 #define NR_TURN_CLIENT_STATE_FAILED          6
 #define NR_TURN_CLIENT_STATE_TIMED_OUT       7
 #define NR_TURN_CLIENT_STATE_CANCELLED       8
 
   int phase;
-#define NR_TURN_CLIENT_PHASE_INITIALIZED          -1 
+#define NR_TURN_CLIENT_PHASE_INITIALIZED          -1
 #define NR_TURN_CLIENT_PHASE_ALLOCATE_REQUEST1    0
 #define NR_TURN_CLIENT_PHASE_ALLOCATE_REQUEST2    1
 #define NR_TURN_CLIENT_PHASE_SET_ACTIVE_DEST      2
 
   nr_stun_client_ctx  *stun_ctx[3];    /* one for each phase */
 
   char *label;
   nr_transport_addr turn_server_addr;
--- a/media/mtransport/third_party/nICEr/src/util/cb_args.c
+++ b/media/mtransport/third_party/nICEr/src/util/cb_args.c
@@ -42,20 +42,20 @@ void **nr_pack_cb_args(int ct,...)
   {
     void **vlist;
     va_list ap;
     int i;
 
     va_start(ap,ct);
     if(!(vlist=RCALLOC(sizeof(void *)*ct+1)))
       abort();
-    
+
     for(i=0;i<ct;i++){
       vlist[i]=va_arg(ap, void *);
     }
 
     va_end(ap);
-    
+
     return(vlist);
   }
 
 
 
--- a/media/mtransport/third_party/nICEr/src/util/ice_util.c
+++ b/media/mtransport/third_party/nICEr/src/util/ice_util.c
@@ -51,26 +51,26 @@ int nr_concat_strings(char **outp,...)
     while(s=va_arg(ap,char *)){
       len+=strlen(s);
     }
     va_end(ap);
 
 
     if(!(out=RMALLOC(len+1)))
       ABORT(R_NO_MEMORY);
-    
+
     *outp=out;
 
     va_start(ap,outp);
     while(s=va_arg(ap,char *)){
       len=strlen(s);
       memcpy(out,s,len);
       out+=len;
     }
     va_end(ap);
 
     *out=0;
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
--- a/media/mtransport/third_party/nICEr/src/util/mbslen.c
+++ b/media/mtransport/third_party/nICEr/src/util/mbslen.c
@@ -107,24 +107,24 @@ mbslen(const char *s, size_t *ncharsp)
 
 #ifdef DARWIN
     while (*s != '\0' && (nbytes = mbrlen_l(s, strlen(s), &mbs, loc)) != 0)
 #else
     while (*s != '\0' && (nbytes = mbrlen(s, strlen(s), &mbs)) != 0)
 #endif /* DARWIN */
     {
         if (nbytes == (size_t)-1)   /* should never happen */ {
-	    assert(0);
+            assert(0);
             ABORT(R_INTERNAL);
-	}
+        }
         if (nbytes == (size_t)-2)   /* encoding error */ {
-	    assert(0);
+            assert(0);
             ABORT(R_BAD_DATA);
-	}
- 
+        }
+
         s += nbytes;
         ++nchars;
     }
 
     *ncharsp = nchars;
 
     _status = 0;
   abort:
--- a/media/mtransport/third_party/nrappkit/src/event/async_timer.h
+++ b/media/mtransport/third_party/nrappkit/src/event/async_timer.h
@@ -1,42 +1,42 @@
 /**
    async_timer.h
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Sun Feb 22 19:35:24 2004
  */
 
 
 #ifndef _async_timer_h
 #define _async_timer_h
 
--- a/media/mtransport/third_party/nrappkit/src/event/async_wait.h
+++ b/media/mtransport/third_party/nrappkit/src/event/async_wait.h
@@ -1,42 +1,42 @@
 /**
    async_wait.h
 
-   
+
    Copyright (C) 2001-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Thu Dec 20 20:14:49 2001
  */
 
 
 #ifndef _async_wait_h
 #define _async_wait_h
 
--- a/media/mtransport/third_party/nrappkit/src/event/async_wait_int.h
+++ b/media/mtransport/third_party/nrappkit/src/event/async_wait_int.h
@@ -1,42 +1,42 @@
 /**
    async_wait_int.h
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Sun Feb 22 19:16:01 2004
  */
 
 
 #ifndef _async_wait_int_h
 #define _async_wait_int_h
 
--- a/media/mtransport/third_party/nrappkit/src/log/r_log.c
+++ b/media/mtransport/third_party/nrappkit/src/log/r_log.c
@@ -1,42 +1,42 @@
 /**
    r_log.c
 
-   
+
    Copyright (C) 2001, RTFM, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Mon Dec  3 15:24:38 2001
  */
 
 
 static char *RCSSTRING __UNUSED__ ="$Id: r_log.c,v 1.10 2008/11/25 22:25:18 adamcain Exp $";
 
 
@@ -167,17 +167,17 @@ static int r_log_get_reg_level(NR_regist
 
 int r_log_register(char *facility_name,int *log_facility)
   {
     int i,j;
     int level;
     int r,_status;
     char *buf=0;
     NR_registry dest_prefix, dest_facility_prefix;
- 
+
     for(i=0;i<log_type_ct;i++){
       if(!strcmp(facility_name,log_types[i].facility_name)){
         *log_facility=i;
         return(0);
       }
     }
 
     if(log_type_ct==MAX_LOG_TYPES){
@@ -185,17 +185,17 @@ int r_log_register(char *facility_name,i
     }
 
     i=log_type_ct;
 
     /* Initial registration completed, increment log_type_ct */
     log_types[i].facility_name=r_strdup(facility_name);
     *log_facility=log_type_ct;
     log_type_ct++;
-    
+
     for(j=0; j<LOG_NUM_DESTINATIONS; j++){
       log_types[i].level[j]=LOG_LEVEL_UNDEFINED;
 
       if(NR_reg_initted()){
 
         if(snprintf(dest_prefix,sizeof(NR_registry),
           "logging.%s.facility",log_destinations[j].dest_name)>=sizeof(NR_registry))
           ABORT(R_INTERNAL);
@@ -225,17 +225,17 @@ int r_log_register(char *facility_name,i
     }
 
     _status=0;
   abort:
     if(_status)
       RFREE(buf);
     return(_status);
   }
-     
+
 int r_log_facility(int facility,char **typename)
   {
     if(facility >= 0 && facility < log_type_ct){
       *typename=log_types[facility].facility_name;
       return(0);
     }
     return(R_NOT_FOUND);
   }
@@ -271,17 +271,17 @@ static int r_log_get_reg_level(NR_regist
   }
 
 /* Handle the case where a value changes */
 static void r_log_facility_change_cb(void *cb_arg, char action, NR_registry name)
   {
     int *lt_level=(int *)cb_arg;
     int level;
     int r,_status;
-    
+
     if(r=r_log_get_reg_level(name,&level))
       ABORT(r);
 
     *lt_level=level;
 
     _status=0;
   abort:
     return;
@@ -295,20 +295,20 @@ static void r_log_facility_delete_cb(voi
     *lt_level=LOG_LEVEL_UNDEFINED;
   }
 
 int r_log(int facility,int level,const char *format,...)
   {
     va_list ap;
 
     va_start(ap,format);
-    
+
     r_vlog(facility,level,format,ap);
     va_end(ap);
-    
+
     return(0);
   }
 
 int r_dump(int facility,int level,char *name,char *data,int len)
   {
     char *hex = 0;
     int unused;
 
@@ -365,17 +365,17 @@ int stderr_vlog(int facility,int level,c
 #if 0 /* remove time stamping, for now */
     char cbuf[30];
     time_t tt;
 
     tt=time(0);
 
     ctime_r(&tt,cbuf);
     cbuf[strlen(cbuf)-1]=0;
-    
+
     fprintf(stderr,"%s: ",cbuf);
 #endif
 
     vfprintf(stderr,format,ap);
       fprintf(stderr,"\n");
     return(0);
     }
 
@@ -465,17 +465,17 @@ static int r_logging_dest(int dest_index
     if(!log_destinations[dest_index].enabled)
       return(0);
 
     if(level <= r_log_level_environment)
       return(1);
 
     if(r_log_initted<R_LOG_INITTED2)
       return(level<=r_log_level);
-          
+
     if(facility < 0 || facility > log_type_ct)
       thresh=r_log_level;
     else{
       if(log_types[facility].level[dest_index]==LOG_LEVEL_NONE)
         return(0);
 
       if(log_types[facility].level[dest_index]>=0)
         thresh=log_types[facility].level[dest_index];
@@ -507,18 +507,18 @@ int r_logging(int facility, int level)
     return(0);
   }
 
 
 static int r_log_get_default_level(void)
   {
     char *log;
     int _status;
-    
-    log=getenv("R_LOG_LEVEL");    
+
+    log=getenv("R_LOG_LEVEL");
 
     if(log){
       r_log_level=atoi(log);
       r_log_level_environment=atoi(log);
     }
     else{
       r_log_level=LOGGING_DEFAULT_LEVEL;
     }
@@ -621,20 +621,20 @@ int _r_log_init(int use_reg)
         r_log_get_destinations(0);
 
         r_log_initted=R_LOG_INITTED1;
       }
     }
     else{
       if(r_log_initted<R_LOG_INITTED2){
         int facility;
-        
+
         r_log_get_default_level();
         r_log_get_destinations(1);
-        
+
         r_log_register("generic",&facility);
         r_log_register("logging",&NR_LOG_LOGGING);
 
         r_log_initted=R_LOG_INITTED2;
       }
     }
 
 #ifdef WIN32
--- a/media/mtransport/third_party/nrappkit/src/log/r_log.h
+++ b/media/mtransport/third_party/nrappkit/src/log/r_log.h
@@ -1,42 +1,42 @@
 /**
    r_log.h
 
-   
+
    Copyright (C) 2001, RTFM, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Mon Dec  3 15:14:45 2001
  */
 
 
 #ifndef _r_log_h
 #define _r_log_h
 
--- a/media/mtransport/third_party/nrappkit/src/plugin/nr_plugin.h
+++ b/media/mtransport/third_party/nrappkit/src/plugin/nr_plugin.h
@@ -1,41 +1,41 @@
 /**
    nr_plugin.h
 
-   
+
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@networkresonance.com  Mon Jun 19 18:18:54 2006
  */
 
 
 #ifndef _nr_plugin_h
 #define _nr_plugin_h
 
--- a/media/mtransport/third_party/nrappkit/src/port/darwin/include/csi_platform.h
+++ b/media/mtransport/third_party/nrappkit/src/port/darwin/include/csi_platform.h
@@ -1,42 +1,42 @@
 /**
    platform.h
 
-   
+
    Copyright (C) 2005, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@network-resonance.com  Tue Mar 15 14:28:12 PST 2005
  */
 
 
 #ifndef _platform_h
 #define _platform_h
 
--- a/media/mtransport/third_party/nrappkit/src/port/linux/include/csi_platform.h
+++ b/media/mtransport/third_party/nrappkit/src/port/linux/include/csi_platform.h
@@ -1,42 +1,42 @@
 /**
    platform.h
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Mon Dec 13 17:26:51 2004
  */
 
 
 #ifndef _platform_h
 #define _platform_h
 
--- a/media/mtransport/third_party/nrappkit/src/port/linux/include/linux_funcs.h
+++ b/media/mtransport/third_party/nrappkit/src/port/linux/include/linux_funcs.h
@@ -1,42 +1,42 @@
 /**
    linux_funcs.h
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Mon Dec 13 16:28:22 2004
  */
 
 
 #ifndef _linux_funcs_h
 #define _linux_funcs_h
 
--- a/media/mtransport/third_party/nrappkit/src/port/linux/include/sys/ttycom.h
+++ b/media/mtransport/third_party/nrappkit/src/port/linux/include/sys/ttycom.h
@@ -1,38 +1,38 @@
 /*
- *    
+ *
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  */
 #ifndef __LINUX_TTYCOM_H
 #define __LINUX_TTYCOM_H
 
 #include <asm/ioctls.h>
 
 #endif
--- a/media/mtransport/third_party/nrappkit/src/port/win32/include/csi_platform.h
+++ b/media/mtransport/third_party/nrappkit/src/port/win32/include/csi_platform.h
@@ -1,42 +1,42 @@
 /**
    platform.h
 
-   
+
    Copyright (C) 2005, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@network-resonance.com  Tue Mar 15 14:28:12 PST 2005
  */
 
 
 #ifndef _csi_platform_h
 #define _csi_platform_h
 
--- a/media/mtransport/third_party/nrappkit/src/registry/c2ru.c
+++ b/media/mtransport/third_party/nrappkit/src/registry/c2ru.c
@@ -3,47 +3,47 @@
  *    c2ru.c
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/c2ru.c,v $
  *    $Revision: 1.3 $
  *    $Date: 2007/06/26 22:37:50 $
  *
  *    c2r utility methods
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #include <sys/queue.h>
 #include <string.h>
 #include <registry.h>
 #include "nr_common.h"
 #include <r_errors.h>
@@ -258,17 +258,17 @@ nr_c2ru_get_children(NR_registry parent,
   }
 
   _status = 0;
 abort:
   return (_status);
 }
 
 int
-nr_c2ru_set_children(NR_registry parent, char *child, void *ptr, int (*set)(NR_registry, void*), int (*label)(NR_registry, void*, char[NR_REG_MAX_NR_REGISTRY_LEN])) 
+nr_c2ru_set_children(NR_registry parent, char *child, void *ptr, int (*set)(NR_registry, void*), int (*label)(NR_registry, void*, char[NR_REG_MAX_NR_REGISTRY_LEN]))
 {
   int r, _status;
   NR_registry registry;
   int i;
   NR_registry name;
   char buffer[NR_REG_MAX_NR_REGISTRY_LEN];
   struct entry { TAILQ_ENTRY(entry) entries; } *entry;
   TAILQ_HEAD(, entry) *tailq = (void*)ptr;
--- a/media/mtransport/third_party/nrappkit/src/registry/c2ru.h
+++ b/media/mtransport/third_party/nrappkit/src/registry/c2ru.h
@@ -3,47 +3,47 @@
  *    c2ru.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/c2ru.h,v $
  *    $Revision: 1.2 $
  *    $Date: 2006/08/16 19:39:13 $
  *
  *    c2r utility methods
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __C2RU_H__
 #define __C2RU_H__
 
 #include <sys/types.h>
 #include <r_types.h>
--- a/media/mtransport/third_party/nrappkit/src/registry/registry.c
+++ b/media/mtransport/third_party/nrappkit/src/registry/registry.c
@@ -3,47 +3,47 @@
  *    registry.c
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registry.c,v $
  *    $Revision: 1.6 $
  *    $Date: 2007/11/21 00:09:12 $
  *
  *    Datastore for tracking configuration and related info.
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #include <assert.h>
 #include <string.h>
 #ifndef _MSC_VER
 #include <strings.h>
 #include <sys/param.h>
@@ -62,17 +62,17 @@
 #include "r_errors.h"
 #include "r_macros.h"
 #include "c2ru.h"
 
 /* vtbl used to switch hit between local and remote invocations */
 static nr_registry_module *reg_vtbl = 0;
 
 /* must be in the order the types are numbered */
-static char *typenames[] = { "char", "UCHAR", "INT2", "UINT2", "INT4", "UINT4", "INT8", "UINT8", "double", "Data", "string", "registry" }; 
+static char *typenames[] = { "char", "UCHAR", "INT2", "UINT2", "INT4", "UINT4", "INT8", "UINT8", "double", "Data", "string", "registry" };
 
 int NR_LOG_REGISTRY=0;
 
 NR_registry NR_TOP_LEVEL_REGISTRY = "";
 
 int
 NR_reg_init(void *mode)
 {
@@ -405,45 +405,45 @@ NRGET2(NR_reg_get2_double,   double,  NR
 NRGET2(NR_reg_alloc2_string,   char*,   NR_reg_alloc_string)
 NRGET2(NR_reg_alloc2_data,     Data,    NR_reg_alloc_data)
 
 int
 NR_reg_get2_bytes(NR_registry parent, char *child, UCHAR *out, size_t size, size_t *length)
 {
     int r, _status;
     NR_registry registry;
-  
+
     if ((r=NR_reg_make_registry(parent, child, registry)))
       ABORT(r);
-  
+
     if ((r=NR_reg_get_bytes(registry, out, size, length)))
       ABORT(r);
-  
+
     _status = 0;
-abort:                                                               
+abort:
     return (_status);
 }
- 
+
 int
 NR_reg_get2_string(NR_registry parent, char *child, char *out, size_t size)
 {
     int r, _status;
     NR_registry registry;
-  
+
     if ((r=NR_reg_make_registry(parent, child, registry)))
       ABORT(r);
-  
+
     if ((r=NR_reg_get_string(registry, out, size)))
       ABORT(r);
-  
+
     _status = 0;
-abort:                                                               
+abort:
     return (_status);
 }
- 
+
 /* More convenience functions: the same as their parents but they
    take a prefix and a suffix */
 #define NRSET2(func, type, set) \
 int                                                                  \
 func(NR_registry parent, char *child, type in)                       \
 {                                                                    \
   int r, _status;                                                    \
   NR_registry registry;                                              \
@@ -519,39 +519,39 @@ NR_reg_make_child_registry(NR_registry p
     _status=0;
   abort:
     return(_status);
 }
 
 int
 NR_reg_get2_child_count(NR_registry base, NR_registry name, unsigned int *count)
   {
-    int r, _status;                                                    
-    NR_registry registry;                                              
-    
+    int r, _status;
+    NR_registry registry;
+
     if ((r=nr_c2ru_make_registry(base, name, registry)))
       ABORT(r);
-    
+
     if (r=NR_reg_get_child_count(registry,count))
       ABORT(r);
 
     _status=0;
   abort:
     return(_status);
   }
 
 int
 NR_reg_get2_child_registry(NR_registry base, NR_registry name, unsigned int i, NR_registry child)
   {
     int r, _status;
     NR_registry registry;
 
     if ((r=nr_c2ru_make_registry(base, name, registry)))
       ABORT(r);
-    
+
     if (r=NR_reg_get_child_registry(registry, i, child))
       ABORT(r);
 
     _status=0;
   abort:
     return(_status);
   }
 
@@ -574,31 +574,31 @@ NR_reg_make_registry(NR_registry parent,
 
     plen = strlen(parent);
     clen = strlen(child);
     if ((plen + clen + 2) > sizeof(NR_registry))
         ABORT(R_BAD_ARGS);
 
     if (out != parent)
         strcpy(out, parent);
- 
+
     c = &(out[plen]);
 
     if (parent[0] != '\0') {
         *c = '.';
         ++c;
     }
 
     for (i = 0; i < clen; ++i, ++c) {
         *c = child[i];
         if (isspace(*c) || *c == '.' || *c == '/' || ! isprint(*c))
             *c = '_';
     }
     if (i == 0 || child[i-1] == '.')
         ABORT(R_BAD_ARGS);
- 
+
     *c = '\0';
 
     _status = 0;
 abort:
     return _status;
 }
 
--- a/media/mtransport/third_party/nrappkit/src/registry/registry.h
+++ b/media/mtransport/third_party/nrappkit/src/registry/registry.h
@@ -3,47 +3,47 @@
  *    registry.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registry.h,v $
  *    $Revision: 1.3 $
  *    $Date: 2007/07/17 17:58:16 $
  *
  *    Datastore for tracking configuration and related info.
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __REGISTRY_H__
 #define __REGISTRY_H__
 
 #include <stdio.h>
 #include <sys/types.h>
@@ -56,17 +56,17 @@
 typedef char NR_registry[NR_REG_MAX_NR_REGISTRY_LEN];
 typedef char NR_registry_type[NR_REG_MAX_TYPE_LEN];
 
 extern NR_registry NR_TOP_LEVEL_REGISTRY;
 
 extern void *NR_REG_MODE_LOCAL;
 extern void *NR_REG_MODE_REMOTE;
 
-int NR_reg_init(void *mode);  
+int NR_reg_init(void *mode);
 
 int NR_reg_initted(void);
 
 int NR_reg_get_char(NR_registry name, char *out);
 int NR_reg_get_uchar(NR_registry name, UCHAR *out);
 int NR_reg_get_int2(NR_registry name, INT2 *out);
 int NR_reg_get_uint2(NR_registry name, UINT2 *out);
 int NR_reg_get_int4(NR_registry name, INT4 *out);
--- a/media/mtransport/third_party/nrappkit/src/registry/registry_int.h
+++ b/media/mtransport/third_party/nrappkit/src/registry/registry_int.h
@@ -13,47 +13,47 @@ return blahblah;
  *    registry_int.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registry_int.h,v $
  *    $Revision: 1.3 $
  *    $Date: 2007/06/26 22:37:51 $
  *
  *    Callback-related functions
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __REGISTRY_INT_H__
 #define __REGISTRY_INT_H__
 
 #include <sys/types.h>
 #include <r_types.h>
@@ -86,12 +86,12 @@ int nr_reg_cb_init(void);
 int nr_reg_client_cb_init(void);
 int nr_reg_register_for_callbacks(int fd, int connect_to_port);
 int nr_reg_raise_event(NR_registry name, int action);
 #ifndef NO_REG_RPC
 int nr_reg_get_client(CLIENT **client);
 #endif
 
 #define CALLBACK_SERVER_ADDR     "127.0.0.1"
-#define CALLBACK_SERVER_PORT     8082 
+#define CALLBACK_SERVER_PORT     8082
 #define CALLBACK_SERVER_BACKLOG  32
 
 #endif
--- a/media/mtransport/third_party/nrappkit/src/registry/registry_local.c
+++ b/media/mtransport/third_party/nrappkit/src/registry/registry_local.c
@@ -3,47 +3,47 @@
  *    registry.c
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registry_local.c,v $
  *    $Revision: 1.4 $
  *    $Date: 2007/11/21 00:09:13 $
  *
  *    Datastore for tracking configuration and related info.
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #include <assert.h>
 #include <string.h>
 #ifndef WIN32
 #include <strings.h>
 #include <sys/param.h>
@@ -262,17 +262,17 @@ nr_reg_local_find_children(void *ptr, r_
         /* only grab as many as there are room for */
         if (arg->length >= arg->size)
           ABORT(R_INTERRUPTED);
       }
     }
   }
 
   _status = 0;
- abort: 
+ abort:
   return _status;
 }
 
 int
 nr_reg_local_count_children(void *ptr, r_assoc_iterator *iter, char *prefix, char *name, nr_registry_node *node)
 {
   int prefixl = strlen(prefix);
   char *dot;
@@ -346,24 +346,24 @@ nr_reg_fetch_node(char *name, unsigned c
 
     if ((*node)->type != type)
       ABORT(R_FAILED);
 
     _status=0;
   abort:
     if (_status) {
         if (*node)
-            r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Couldn't fetch node '%s' ('%s'), found '%s' instead", 
+            r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Couldn't fetch node '%s' ('%s'), found '%s' instead",
               name, nr_reg_type_name(type), nr_reg_type_name((*node)->type));
-        else 
-            r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Couldn't fetch node '%s' ('%s')", 
+        else
+            r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Couldn't fetch node '%s' ('%s')",
               name, nr_reg_type_name(type));
     }
     else {
-        r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Fetched node '%s' ('%s')", 
+        r_log(NR_LOG_REGISTRY, LOG_DEBUG, "Fetched node '%s' ('%s')",
               name, nr_reg_type_name(type));
     }
     return(_status);
 }
 
 int
 nr_reg_insert_node(char *name, void *node)
 {
@@ -502,17 +502,17 @@ nr_reg_alloc_node_data(char *name, nr_re
       snprintf(s, len, "%s", name);
       break;
     case NR_REG_TYPE_BYTES:
       for (i = 0; i < ((nr_array_registry_node*)node)->array.length; ++i) {
         sprintf(&s[2*i], "%02x", ((nr_array_registry_node*)node)->array.data[i]);
       }
       break;
     case NR_REG_TYPE_STRING:
-      s = (char*)((nr_array_registry_node*)node)->array.data; 
+      s = (char*)((nr_array_registry_node*)node)->array.data;
       break;
     default:
       assert(0); /* bad value */
       *freeit = 0;
       s = "";
       break;
     }
 
@@ -795,17 +795,17 @@ nr_reg_is_valid(NR_registry name)
     if (strlen(name) > 0 && name[length-1] == '.')
       ABORT(R_BAD_ARGS);
 
     /* all characters cannot be space, and must be printable and not / */
     for (i = 0; i < length; ++i) {
       if (isspace(name[i]) || ! (isprint(name[i]) || name[i] == '/'))
         ABORT(R_BAD_ARGS);
     }
- 
+
     _status=0;
   abort:
     if (_status) {
       r_log(NR_LOG_REGISTRY, LOG_DEBUG, "invalid name '%s'", name);
     }
     return(_status);
 }
 
--- a/media/mtransport/third_party/nrappkit/src/registry/registry_vtbl.h
+++ b/media/mtransport/third_party/nrappkit/src/registry/registry_vtbl.h
@@ -1,46 +1,46 @@
 /*
  *
  *    registry_vtbl.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registry_vtbl.h,v $
  *    $Revision: 1.2 $
  *    $Date: 2006/08/16 19:39:14 $
  *
- *    
+ *
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __REGISTRY_VTBL_H__
 #define __REGISTRY_VTBL_H__
 
 typedef struct nr_registry_module_ nr_registry_module;
 
--- a/media/mtransport/third_party/nrappkit/src/registry/registrycb.c
+++ b/media/mtransport/third_party/nrappkit/src/registry/registrycb.c
@@ -3,47 +3,47 @@
  *    registrycb.c
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/registry/registrycb.c,v $
  *    $Revision: 1.3 $
  *    $Date: 2007/06/26 22:37:51 $
  *
  *    Callback-related functions
  *
- *    
+ *
  *    Copyright (C) 2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #include <assert.h>
 #include <string.h>
 #include "registry.h"
 #include "registry_int.h"
 #include "r_assoc.h"
--- a/media/mtransport/third_party/nrappkit/src/share/nr_api.h
+++ b/media/mtransport/third_party/nrappkit/src/share/nr_api.h
@@ -1,41 +1,41 @@
 /**
    nr_pce.h
 
-   
+
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@networkresonance.com  Wed Jul 19 13:18:39 2006
  */
 
 
 #ifndef _nr_pce_h
 #define _nr_pce_h
 
--- a/media/mtransport/third_party/nrappkit/src/share/nr_common.h
+++ b/media/mtransport/third_party/nrappkit/src/share/nr_common.h
@@ -1,41 +1,41 @@
 /**
    nr_common.h
 
-   
+
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
  */
 
 
 #ifndef _nr_common_h
 #define _nr_common_h
 
 #include <csi_platform.h>
 
@@ -65,17 +65,17 @@
 #include <sys/types.h>
 #include <sys/queue.h>
 #include <r_log.h>
 
 extern int NR_LOG_REASSD;
 
 #include "registry.h"
 #include "nrstats.h"
- 
+
 typedef struct nr_captured_packet_ {
      UCHAR cap_interface;       /* 1 for primary, 2 for secondary */
      struct timeval ts;     /* The time this packet was captured */
      UINT4 len;             /* The length of the packet */
      UINT8 packet_number;   /* The listener's packet index */
 } nr_captured_packet;
 
 #ifndef NR_ROOT_PATH
--- a/media/mtransport/third_party/nrappkit/src/share/nr_reg_keys.h
+++ b/media/mtransport/third_party/nrappkit/src/share/nr_reg_keys.h
@@ -1,46 +1,46 @@
 /*
  *
  *    nr_reg_keys.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/share/nr_reg_keys.h,v $
  *    $Revision: 1.3 $
  *    $Date: 2008/01/29 00:34:00 $
  *
- *    
+ *
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __NR_REG_KEYS_H__
 #define __NR_REG_KEYS_H__
 
 #include <stdio.h>
 
--- a/media/mtransport/third_party/nrappkit/src/stats/nrstats.h
+++ b/media/mtransport/third_party/nrappkit/src/stats/nrstats.h
@@ -3,47 +3,47 @@
  *    nrstats.h
  *
  *    $Source: /Users/ekr/tmp/nrappkit-dump/nrappkit/src/stats/nrstats.h,v $
  *    $Revision: 1.4 $
  *    $Date: 2007/06/26 22:37:55 $
  *
  *    API for keeping and sharing statistics
  *
- *    
+ *
  *    Copyright (C) 2003-2005, Network Resonance, Inc.
  *    Copyright (C) 2006, Network Resonance, Inc.
  *    All Rights Reserved
- *    
+ *
  *    Redistribution and use in source and binary forms, with or without
  *    modification, are permitted provided that the following conditions
  *    are met:
- *    
+ *
  *    1. Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *    2. Redistributions in binary form must reproduce the above copyright
  *       notice, this list of conditions and the following disclaimer in the
  *       documentation and/or other materials provided with the distribution.
  *    3. Neither the name of Network Resonance, Inc. nor the name of any
- *       contributors to this software may be used to endorse or promote 
+ *       contributors to this software may be used to endorse or promote
  *       products derived from this software without specific prior written
  *       permission.
- *    
+ *
  *    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
  *    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  *    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
- *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
- *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ *    ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ *    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ *    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  *    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ *    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  *    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  *    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  *    POSSIBILITY OF SUCH DAMAGE.
- *    
+ *
  *
  */
 
 #ifndef __NRSTATS_H__
 #define __NRSTATS_H__
 
 #include <sys/types.h>
 #ifdef WIN32
@@ -77,17 +77,17 @@ typedef struct NR_stats_app_ {
 
 extern NR_stats_type *NR_stats_type_app;
 
 /* everything measured in bytes */
 typedef struct NR_stats_memory_ {
         UINT8                current_size;
         UINT8                max_size;
         UINT8                in_use;
-        UINT8                in_use_max;         
+        UINT8                in_use_max;
 } NR_stats_memory;
 
 extern NR_stats_type *NR_stats_type_memory;
 
 /*  all functions below return 0 on success, else they return an
  *  error code */
 
 /* if errprintf is null, warnings and errors will be sent to /dev/null */
@@ -108,11 +108,11 @@ extern int NR_stats_rmids(void);
 
 extern char *NR_prefix_to_stats_module(char *prefix);
 
 #define NR_INCREMENT_STAT(stat) do { \
        stat++; if(stat>stat##_max) stat##_max=stat; \
      } while (0)
 #define NR_UPDATE_STAT(stat,newval) do { \
        stat=newval; if(stat>stat##_max) stat##_max=stat; \
-     } while (0)       
+     } while (0)
 
 #endif
--- a/media/mtransport/third_party/nrappkit/src/util/byteorder.c
+++ b/media/mtransport/third_party/nrappkit/src/util/byteorder.c
@@ -1,41 +1,41 @@
 /**
    byteorder.c
 
-   
+
    Copyright (C) 2007, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@networkresonance.com  Wed May 16 16:46:00 PDT 2007
  */
 
 
 static char *RCSSTRING __UNUSED__ ="$Id: byteorder.c,v 1.2 2007/06/26 22:37:55 adamcain Exp $";
 
 #include "nr_common.h"
--- a/media/mtransport/third_party/nrappkit/src/util/byteorder.h
+++ b/media/mtransport/third_party/nrappkit/src/util/byteorder.h
@@ -1,41 +1,41 @@
 /**
    byteorder.h
 
-   
+
    Copyright (C) 2007, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@networkresonance.com  Wed May 16 16:46:00 PDT 2007
  */
 
 
 #ifndef _byteorder_h
 #define _byteorder_h
 
--- a/media/mtransport/third_party/nrappkit/src/util/hex.c
+++ b/media/mtransport/third_party/nrappkit/src/util/hex.c
@@ -1,42 +1,42 @@
 /**
    hex.c
 
-   
+
    Copyright (C) 2001-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@network-resonance.com
  */
 
 
 static char *RCSSTRING __UNUSED__ ="$Id: hex.c,v 1.3 2007/06/26 22:37:56 adamcain Exp $";
 
 #include <sys/types.h>
@@ -55,18 +55,18 @@ nr_nbin2hex(UCHAR *bin, int binlen, char
 {
     int _status;
     int i;
 
     if (size < (2*binlen))
         ABORT(R_BAD_ARGS);
 
     for (i = 0; i < binlen; ++i) {
-        *hex++ = bin2hex_map[bin[i]][0]; 
-        *hex++ = bin2hex_map[bin[i]][1]; 
+        *hex++ = bin2hex_map[bin[i]][0];
+        *hex++ = bin2hex_map[bin[i]][1];
     }
 
     if (size >= (2*binlen)+1)
         *hex = '\0';
 
     *len = (2*binlen);
 
     _status=0;
@@ -79,32 +79,32 @@ int
 nr_nhex2bin(char *hex, int hexlen, UCHAR bin[], size_t size, int *len)
 {
     int _status;
     int binlen;
     int h1;
     int h2;
     int i;
 
-    if (hexlen % 2) 
+    if (hexlen % 2)
         ABORT(R_BAD_ARGS);
 
     binlen = hexlen/2;
- 
+
     if (size < binlen)
         ABORT(R_BAD_ARGS);
 
     for (i = 0; i < binlen; ++i) {
         h1 = hex2bin_map[(int)*hex++];
         h2 = hex2bin_map[(int)*hex++];
 
         if (h1 == -1 || h2 == -1)
             ABORT(R_BAD_ARGS);
 
-        bin[i] = (h1 << 4) | h2; 
+        bin[i] = (h1 << 4) | h2;
     }
 
     *len = binlen;
 
     _status=0;
   abort:
     return(_status);
 }
--- a/media/mtransport/third_party/nrappkit/src/util/hex.h
+++ b/media/mtransport/third_party/nrappkit/src/util/hex.h
@@ -1,42 +1,42 @@
 /**
    hex.h
 
-   
+
    Copyright (C) 2001-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    briank@network-resonance.com
  */
 
 
 #ifndef _hex_h
 #define _hex_h
 
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/assoc.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/assoc.h
@@ -1,42 +1,42 @@
 /**
    assoc.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    assoc.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/debug.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/debug.c
@@ -1,42 +1,42 @@
 /**
    debug.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    debug.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -110,22 +110,22 @@ int nr_xdump(name,data,len)
   int len;
   {
     int i;
 
     if(name){
       printf("%s[%d]=\n",name,len);
     }
     for(i=0;i<len;i++){
-      
+
       if((len>8) && i && !(i%12)){
-        printf("\n"); 
+        printf("\n");
       }
       printf("%.2x ",data[i]&255);
     }
     if(i%12)
       printf("\n");
     return(0);
   }
 
-  
-  
-  
+
+
+
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/debug.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/debug.h
@@ -1,42 +1,42 @@
 /**
    debug.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    debug.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.c
@@ -1,59 +1,59 @@
 /**
    r_assoc.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_assoc.c
 
    This is an associative array implementation, using an open-chained
    hash bucket technique.
 
    Note that this implementation permits each data entry to have
    separate copy constructors and destructors. This currently wastes
    space, but could be implemented while saving space by using
    the high order bit of the length value or somesuch.
 
    The major problem with this code is it's not resizable, though it
    could be made so.
-   
+
 
    Copyright (C) 1999-2000 RTFM, Inc.
    All Rights Reserved
 
    This package is a SSLv3/TLS protocol analyzer written by Eric Rescorla
    <ekr@rtfm.com> and licensed by RTFM, Inc.
 
    Redistribution and use in source and binary forms, with or without
@@ -61,17 +61,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -100,17 +100,17 @@ typedef struct r_assoc_el_ {
      char *key;
      int key_len;
      void *data;
      struct r_assoc_el_ *prev;
      struct r_assoc_el_ *next;
      int (*copy)(void **n,void *old);
      int (*destroy)(void *ptr);
 } r_assoc_el;
-     
+
 struct r_assoc_ {
      int size;
      int bits;
      int (*hash_func)(char *key,int len,int size);
      r_assoc_el **chains;
      UINT4 num_elements;
 };
 
@@ -123,43 +123,43 @@ static int copy_assoc_chain(r_assoc_el *
 
 int r_assoc_create(assocp,hash_func,bits)
   r_assoc **assocp;
   int (*hash_func)(char *key,int len,int size);
   int bits;
   {
     r_assoc *assoc=0;
     int _status;
-    
+
     if(!(assoc=(r_assoc *)RCALLOC(sizeof(r_assoc))))
       ABORT(R_NO_MEMORY);
     assoc->size=(1<<bits);
     assoc->bits=bits;
     assoc->hash_func=hash_func;
-    
+
     if(!(assoc->chains=(r_assoc_el **)RCALLOC(sizeof(r_assoc_el *)*
       assoc->size)))
       ABORT(R_NO_MEMORY);
 
     *assocp=assoc;
-    
+
     _status=0;
   abort:
     if(_status){
       r_assoc_destroy(&assoc);
     }
     return(_status);
   }
 
 int r_assoc_destroy(assocp)
   r_assoc **assocp;
   {
     r_assoc *assoc;
     int i;
-	    
+
     if(!assocp || !*assocp)
       return(0);
 
     assoc=*assocp;
     for(i=0;i<assoc->size;i++)
       destroy_assoc_chain(assoc->chains[i]);
 
     RFREE(assoc->chains);
@@ -167,25 +167,25 @@ int r_assoc_destroy(assocp)
 
     return(0);
   }
 
 static int destroy_assoc_chain(chain)
   r_assoc_el *chain;
   {
     r_assoc_el *nxt;
-    
+
     while(chain){
       nxt=chain->next;
 
       if(chain->destroy)
 	chain->destroy(chain->data);
 
       RFREE(chain->key);
-      
+
       RFREE(chain);
       chain=nxt;
     }
 
     return(0);
   }
 
 static int copy_assoc_chain(knewp,old)
@@ -199,61 +199,61 @@ static int copy_assoc_chain(knewp,old)
               It's not correct */
     if(!old) {
       *knewp=0;
       return(0);
     }
     for(;old;old=old->next){
       if(!(tmp=(r_assoc_el *)RCALLOC(sizeof(r_assoc_el))))
 	ABORT(R_NO_MEMORY);
-      
+
       if(!knew){
 	knew=tmp;
 	ptr=knew;
       }
       else{
 	ptr->next=tmp;
 	tmp->prev=ptr;
         ptr=tmp;
       }
 
       ptr->destroy=old->destroy;
       ptr->copy=old->copy;
-	
+
       if(old->copy){
 	if(r=old->copy(&ptr->data,old->data))
 	  ABORT(r);
       }
       else
 	ptr->data=old->data;
 
       if(!(ptr->key=(char *)RMALLOC(old->key_len)))
 	ABORT(R_NO_MEMORY);
       memcpy(ptr->key,old->key,ptr->key_len=old->key_len);
     }
 
     *knewp=knew;
-    
+
     _status=0;
   abort:
     if(_status){
       destroy_assoc_chain(knew);
     }
     return(_status);
   }
 
 static int r_assoc_fetch_bucket(assoc,key,len,bucketp)
   r_assoc *assoc;
   char *key;
   int len;
   r_assoc_el **bucketp;
   {
     UINT4 hash_value;
     r_assoc_el *bucket;
-    
+
     hash_value=assoc->hash_func(key,len,assoc->bits);
 
     for(bucket=assoc->chains[hash_value];bucket;bucket=bucket->next){
       if(bucket->key_len == len && !memcmp(bucket->key,key,len)){
 	*bucketp=bucket;
 	return(0);
       }
     }
@@ -286,32 +286,32 @@ int r_assoc_insert(assoc,key,len,data,co
   int len;
   void *data;
   int (*copy)(void **knew,void *old);
   int (*destroy)(void *ptr);
   int how;
   {
     r_assoc_el *bucket,*new_bucket=0;
     int r,_status;
-    
+
     if(r=r_assoc_fetch_bucket(assoc,key,len,&bucket)){
       /*Note that we compute the hash value twice*/
       UINT4 hash_value;
 
       if(r!=R_NOT_FOUND)
 	ABORT(r);
       hash_value=assoc->hash_func(key,len,assoc->bits);
-    
+
       if(!(new_bucket=(r_assoc_el *)RCALLOC(sizeof(r_assoc_el))))
 	ABORT(R_NO_MEMORY);
       if(!(new_bucket->key=(char *)RMALLOC(len)))
 	ABORT(R_NO_MEMORY);
       memcpy(new_bucket->key,key,len);
       new_bucket->key_len=len;
-      
+
       /*Insert at the list head. Is FIFO a good algorithm?*/
       if(assoc->chains[hash_value])
         assoc->chains[hash_value]->prev=new_bucket;
       new_bucket->next=assoc->chains[hash_value];
       assoc->chains[hash_value]=new_bucket;
       bucket=new_bucket;
     }
     else{
@@ -321,17 +321,17 @@ int r_assoc_insert(assoc,key,len,data,co
       if(bucket->destroy)
 	bucket->destroy(bucket->data);
     }
 
     bucket->data=data;
     bucket->copy=copy;
     bucket->destroy=destroy;
     assoc->num_elements++;
-    
+
     _status=0;
   abort:
     if(_status && new_bucket){
       RFREE(new_bucket->key);
       RFREE(new_bucket);
     }
     return(_status);
   }
@@ -361,47 +361,47 @@ int r_assoc_delete(assoc,key,len)
     }
 
     if(bucket->next)
       bucket->next->prev=bucket->prev;
 
     /* Remove the data */
     if(bucket->destroy)
       bucket->destroy(bucket->data);
-    
+
     RFREE(bucket->key);
     RFREE(bucket);
     assoc->num_elements--;
-    
+
     return(0);
   }
 
 int r_assoc_copy(knewp,old)
   r_assoc **knewp;
   r_assoc *old;
   {
     int r,_status,i;
     r_assoc *knew;
-    
+
     if(!(knew=(r_assoc *)RCALLOC(sizeof(r_assoc))))
       ABORT(R_NO_MEMORY);
     knew->size=old->size;
     knew->bits=old->bits;
     knew->hash_func=old->hash_func;
-    
+
     if(!(knew->chains=(r_assoc_el **)RCALLOC(sizeof(r_assoc_el)*old->size)))
       ABORT(R_NO_MEMORY);
     for(i=0;i<knew->size;i++){
       if(r=copy_assoc_chain(knew->chains+i,old->chains[i]))
 	ABORT(r);
     }
     knew->num_elements=old->num_elements;
-    
+
     *knewp=knew;
-    
+
     _status=0;
   abort:
     if(_status){
       r_assoc_destroy(&knew);
     }
     return(_status);
   }
 
@@ -412,24 +412,24 @@ int r_assoc_num_elements(r_assoc *assoc,
     return(0);
   }
 
 int r_assoc_init_iter(assoc,iter)
   r_assoc *assoc;
   r_assoc_iterator *iter;
   {
     int i;
-    
+
     iter->assoc=assoc;
     iter->prev_chain=-1;
     iter->prev=0;
 
     iter->next_chain=assoc->size;
     iter->next=0;
-    
+
     for(i=0;i<assoc->size;i++){
       if(assoc->chains[i]!=0){
 	iter->next_chain=i;
 	iter->next=assoc->chains[i];
 	break;
       }
     }
 
@@ -439,36 +439,36 @@ int r_assoc_init_iter(assoc,iter)
 int r_assoc_iter(iter,key,keyl,val)
   r_assoc_iterator *iter;
   void **key;
   int *keyl;
   void **val;
   {
     int i;
     r_assoc_el *ret;
-    
+
     if(!iter->next)
       return(R_EOD);
     ret=iter->next;
 
     *key=ret->key;
     *keyl=ret->key_len;
     *val=ret->data;
-    
+
     /* Now increment */
     iter->prev_chain=iter->next_chain;
     iter->prev=iter->next;
 
     /* More on this chain */
     if(iter->next->next){
       iter->next=iter->next->next;
     }
     else{
       iter->next=0;
-      
+
       /* FInd the next occupied chain*/
       for(i=iter->next_chain+1;i<iter->assoc->size;i++){
 	if(iter->assoc->chains[i]){
 	  iter->next_chain=i;
 	  iter->next=iter->assoc->chains[i];
 	  break;
 	}
       }
@@ -491,24 +491,24 @@ int r_assoc_iter_delete(iter)
     }
 
     if(iter->prev->next){
       iter->prev->next->prev=iter->prev->prev;
     }
 
     if (iter->prev->destroy)
       iter->prev->destroy(iter->prev->data);
-    
+
     iter->assoc->num_elements--;
     RFREE(iter->prev->key);
     RFREE(iter->prev);
     return(0);
   }
-    
-    
+
+
 /*This is a hack from AMS. Supposedly, it's pretty good for strings, even
  though it doesn't take into account all the data*/
 int r_assoc_simple_hash_compute(key,len,bits)
   char *key;
   int len;
   int bits;
   {
     UINT4 h=0;
@@ -525,17 +525,17 @@ int r_crc32(char *data,int len,UINT4 *cr
 
 int r_assoc_crc32_hash_compute(data,len,bits)
   char *data;
   int len;
   int bits;
   {
     UINT4 res;
     UINT4 mask;
-    
+
     /* First compute the CRC value */
     if(r_crc32(data,len,&res))
       ERETURN(R_INTERNAL);
 
     mask=~(0xffffffff<<bits);
 
     return(res & mask);
   }
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.h
@@ -1,52 +1,52 @@
 /**
    r_assoc.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_assoc.h
 
    Associative array code. This code has the advantage that different
    elements can have different create and destroy operators. Unfortunately,
    this can waste space.
-   
+
 
    Copyright (C) 1999-2000 RTFM, Inc.
    All Rights Reserved
 
    This package is a SSLv3/TLS protocol analyzer written by Eric Rescorla
    <ekr@rtfm.com> and licensed by RTFM, Inc.
 
    Redistribution and use in source and binary forms, with or without
@@ -54,17 +54,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.c
@@ -1,42 +1,42 @@
 /**
    r_bitfield.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_bitfield.c
 
    Copyright (C) 2001 RTFM, Inc.
    All Rights Reserved.
@@ -54,42 +54,42 @@ static char *RCSSTRING __UNUSED__ ="$Id:
 
 int r_bitfield_create(setp,size)
   r_bitfield **setp;
   UINT4 size;
   {
     r_bitfield *set=0;
     int _status;
     int num_words=size/32+!!(size%32);
-    
+
     if(!(set=(r_bitfield *)RMALLOC(sizeof(r_bitfield))))
       ABORT(R_NO_MEMORY);
 
     if(!(set->data=(UINT4 *)RMALLOC(num_words*4)))
       ABORT(R_NO_MEMORY);
     memset(set->data,0,4*num_words);
-    
+
     set->base=0;
     set->len=num_words;
 
     *setp=set;
-    
+
     _status=0;
   abort:
     if(_status){
       r_bitfield_destroy(&set);
     }
     return(_status);
   }
 
 int r_bitfield_destroy(setp)
   r_bitfield **setp;
   {
     r_bitfield *set;
-    
+
     if(!setp || !*setp)
       return(0);
 
     set=*setp;
 
     RFREE(set->data);
     RFREE(set);
 
@@ -104,23 +104,23 @@ int r_bitfield_set(set,bit)
     int word=(bit-set->base)/32;
     int bbit=(bit-set->base)%32;
     int _status;
 
     /* Resize? */
     if(word>set->len){
       UINT4 newlen=set->len;
       UINT4 *tmp;
-      
+
       while(newlen<word)
 	newlen*=2;
-      
+
       if(!(tmp=(UINT4 *)RMALLOC(newlen)))
 	ABORT(R_NO_MEMORY);
-      
+
       memcpy(tmp,set->data,set->len*4);
       memset(tmp+set->len*4,0,(newlen-set->len)*4);
 
       RFREE(set->data);
       set->data=tmp;
     }
 
     set->data[word]|=1<<bbit;
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_bitfield.h
@@ -1,42 +1,42 @@
 /**
    r_bitfield.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_bitfield.h
 
    Copyright (C) 2001 RTFM, Inc.
    All Rights Reserved.
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_common.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_common.h
@@ -1,42 +1,42 @@
 /**
    r_common.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_common.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_crc32.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_crc32.c
@@ -1,42 +1,42 @@
 /**
    r_crc32.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    crc32.c
 
    Copyright (C) 2003, RTFM, Inc.
    All Rights Reserved.
@@ -159,19 +159,19 @@ r_crc32(buf, dlen, cval)
   u_int32_t *cval;
 {
     u_int32_t crc = ~0;
     char *p ;
     int i;
     u_int32_t crc32_total = 0 ;
 
     p=buf;
-    
+
     for(i=0;i<dlen;i++){
       CRC(crc, *p) ;
       CRC(crc32_total, *p) ;
       p++;
     }
-    
+
     *cval = ~crc ;
-    
+
     return 0 ;
 }
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_data.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_data.c
@@ -1,42 +1,42 @@
 /**
    r_data.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_data.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -89,17 +89,17 @@ static char *RCSSTRING __UNUSED__ =(char
 
 int r_data_create(dp,d,l)
   Data **dp;
   UCHAR *d;
   int l;
   {
     Data *d_=0;
     int _status;
-    
+
     if(!(d_=(Data *)RCALLOC(sizeof(Data))))
       ABORT(R_NO_MEMORY);
     if(!(d_->data=(UCHAR *)RMALLOC(l)))
       ABORT(R_NO_MEMORY);
 
     memcpy(d_->data,d,l);
     d_->len=l;
 
@@ -114,40 +114,40 @@ int r_data_create(dp,d,l)
   }
 
 
 int r_data_alloc_mem(d,l)
   Data *d;
   int l;
   {
     int _status;
-    
+
     if(!(d->data=(UCHAR *)RMALLOC(l)))
       ABORT(R_NO_MEMORY);
     d->len=l;
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
 int r_data_alloc(dp,l)
   Data **dp;
   int l;
   {
     Data *d_=0;
     int _status;
-    
+
     if(!(d_=(Data *)RCALLOC(sizeof(Data))))
       ABORT(R_NO_MEMORY);
     if(!(d_->data=(UCHAR *)RCALLOC(l)))
       ABORT(R_NO_MEMORY);
 
     d_->len=l;
-    
+
     *dp=d_;
     _status=0;
   abort:
     if(_status)
       r_data_destroy(&d_);
 
     return(_status);
   }
@@ -160,17 +160,17 @@ int r_data_make(dp,d,l)
     if(!(dp->data=(UCHAR *)RMALLOC(l)))
       ERETURN(R_NO_MEMORY);
 
     memcpy(dp->data,d,l);
     dp->len=l;
 
     return(0);
   }
-  
+
 int r_data_destroy(dp)
   Data **dp;
   {
     if(!dp || !*dp)
       return(0);
 
     if((*dp)->data)
       RFREE((*dp)->data);
@@ -180,33 +180,33 @@ int r_data_destroy(dp)
 
     return(0);
   }
 
 int r_data_destroy_v(v)
   void *v;
   {
     Data *d;
-    
+
     if(!v)
       return(0);
 
     d=(Data *)v;
     r_data_zfree(d);
 
     RFREE(d);
 
     return(0);
   }
 
 int r_data_destroy_vp(v)
   void **v;
   {
     Data *d;
-    
+
     if(!v || !*v)
       return(0);
 
     d=(Data *)*v;
     r_data_zfree(d);
 
     *v=0;
     RFREE(d);
@@ -241,9 +241,9 @@ int r_data_compare(d1,d2)
   Data *d2;
   {
     if(d1->len<d2->len)
       return(-1);
     if(d2->len<d1->len)
       return(-1);
     return(memcmp(d1->data,d2->data,d1->len));
   }
-  
+
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_data.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_data.h
@@ -1,42 +1,42 @@
 /**
    r_data.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_data.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_defaults.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_defaults.h
@@ -1,42 +1,42 @@
 /**
    r_defaults.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_defaults.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.c
@@ -1,42 +1,42 @@
 /**
    r_errors.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_errors.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -87,17 +87,17 @@ static char *RCSSTRING __UNUSED__ ="$Id:
 #include <stdarg.h>
 #include <string.h>
 #include "r_common.h"
 #include "r_errors.h"
 
 static struct {
     int    errnum;
     char  *str;
-} errors[] = NR_ERROR_MAPPING;  
+} errors[] = NR_ERROR_MAPPING;
 
 int nr_verr_exit(char *fmt,...)
   {
     va_list ap;
 
     va_start(ap,fmt);
     vfprintf(stderr,fmt,ap);
 
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_errors.h
@@ -1,42 +1,42 @@
 /**
    r_errors.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_errors.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_includes.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_includes.h
@@ -1,42 +1,42 @@
 /**
    r_includes.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_includes.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_list.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_list.c
@@ -1,42 +1,42 @@
 /**
    r_list.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_list.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -106,50 +106,50 @@ int r_list_create(listp)
     int _status;
 
     if(!(list=(r_list *)RCALLOC(sizeof(r_list))))
       ABORT(R_NO_MEMORY);
 
     list->first=0;
     list->last=0;
     *listp=list;
-    
+
     _status=0;
   abort:
     return(_status);
   }
 
 int r_list_destroy(listp)
   r_list **listp;
   {
     r_list *list;
     r_list_el *el;
-    
+
     if(!listp || !*listp)
       return(0);
     list=*listp;
 
     el=list->first;
-    
+
     while(el){
       r_list_el *el_t;
-      
+
       if(el->destroy && el->data)
         el->destroy(&el->data);
       el_t=el;
       el=el->next;
       RFREE(el_t);
     }
 
     RFREE(list);
     *listp=0;
-      
+
     return(0);
   }
-    
+
 int r_list_copy(outp,in)
   r_list**outp;
   r_list *in;
   {
     r_list *out=0;
     r_list_el *el,*el2,*last=0;
     int r, _status;
 
@@ -179,33 +179,33 @@ int r_list_copy(outp,in)
       el2->prev=last;
       if(last) last->next=el2;
       last=el2;
     }
 
     out->last=last;
 
     *outp=out;
-    
+
     _status=0;
   abort:
     if(_status)
       r_list_destroy(&out);
     return(_status);
   }
 
 int r_list_insert(list,value,copy,destroy)
   r_list *list;
   void *value;
   int (*copy)(void **out, void *in);
   int (*destroy)(void **val);
   {
     r_list_el *el=0;
     int _status;
-    
+
     if(!(el=(r_list_el *)RCALLOC(sizeof(r_list_el))))
       ABORT(R_NO_MEMORY);
     el->data=value;
     el->copy=copy;
     el->destroy=destroy;
 
     el->prev=0;
     el->next=list->first;
@@ -222,29 +222,29 @@ int r_list_insert(list,value,copy,destro
 int r_list_append(list,value,copy,destroy)
   r_list *list;
   void *value;
   int (*copy)(void **out, void *in);
   int (*destroy)(void **val);
   {
     r_list_el *el=0;
     int _status;
-    
+
     if(!(el=(r_list_el *)RCALLOC(sizeof(r_list_el))))
       ABORT(R_NO_MEMORY);
     el->data=value;
     el->copy=copy;
     el->destroy=destroy;
 
     el->prev=list->last;
     el->next=0;
-    
+
     if(list->last) list->last->next=el;
     else list->first=el;
-    
+
     list->last=el;
 
     _status=0;
   abort:
     return(_status);
   }
 
 int r_list_init_iter(list,iter)
@@ -261,16 +261,16 @@ int r_list_iter(iter,val)
   r_list_iterator *iter;
   void **val;
   {
     if(!iter->ptr)
       return(R_EOD);
 
     *val=iter->ptr->data;
     iter->ptr=iter->ptr->next;
-    
+
     return(0);
   }
 
-    
-      
-    
-    
+
+
+
+
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_list.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_list.h
@@ -1,42 +1,42 @@
 /**
    r_list.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_list.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -91,16 +91,16 @@ typedef struct r_list_iterator_ {
      struct r_list_el_ *ptr;
 } r_list_iterator;
 
 int r_list_create(r_list **listp);
 int r_list_destroy(r_list **listp);
 int r_list_copy(r_list **out,r_list *in);
 int r_list_insert(r_list *list,void *value,
   int (*copy)(void **knew,void *old),
-  int (*destroy)(void **ptr));  
+  int (*destroy)(void **ptr));
 int r_list_append(r_list *list,void *value,
   int (*copy)(void **knew,void *old),
   int (*destroy)(void **ptr));
 int r_list_init_iter(r_list *list,r_list_iterator *iter);
 int r_list_iter(r_list_iterator *iter,void **val);
 
 #endif
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_macros.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_macros.h
@@ -1,42 +1,42 @@
 /**
    r_macros.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_macros.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -97,17 +97,17 @@
 #define REPORT_ERROR_(caller,a) printf("%s: error %d at %s:%d (function %s)\n", \
 	caller,a,__FILE__,__LINE__,__FUNCTION__)
 #else
 #define REPORT_ERROR_(caller,a) fprintf(stderr,"%s: error %d at %s:%d (function %s)\n", \
 	caller,a,__FILE__,__LINE__,__FUNCTION__)
 #endif
 #else
 #define REPORT_ERROR_(caller,a)
-#endif  
+#endif
 
 #ifndef ERETURN
 #define ERETURN(a) do {int _r=a; if(!_r) _r=-1; REPORT_ERROR_("ERETURN",_r); return(_r);} while(0)
 #endif
 
 #ifndef ABORT
 #define ABORT(a) do { int _r=a; if(!_r) _r=-1; REPORT_ERROR_("ABORT",_r); _status=_r; goto abort;} while(0)
 #endif
@@ -129,9 +129,9 @@ int debug(int cls, char *format,...);
 #else
 #define DBG(a)
 #endif
 
 #define UNIMPLEMENTED do { fprintf(stderr,"%s:%d Function %s unimplemented\n",__FILE__,__LINE__,__FUNCTION__); abort(); } while(0)
 
 #include "r_memory.h"
 
-#endif 
+#endif
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.c
@@ -1,59 +1,59 @@
 /**
    r_memory.c
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Thu Apr 22 20:40:45 2004
  */
 
 
 static char *RCSSTRING __UNUSED__="$Id: r_memory.c,v 1.2 2006/08/16 19:39:17 adamcain Exp $";
 
 #include <string.h>
 #include <stddef.h>
 #include <assert.h>
 #include "r_common.h"
 #include "r_memory.h"
 
 typedef struct r_malloc_chunk_ {
-#ifdef SANITY_CHECKS     
+#ifdef SANITY_CHECKS
      UINT4 hdr;
-#endif     
+#endif
      UCHAR type;
      UINT4 size;
      UCHAR memory[1];
 } r_malloc_chunk;
 
 #define CHUNK_MEMORY_OFFSET                    offsetof(struct r_malloc_chunk_, memory)
 #define GET_CHUNK_ADDR_FROM_MEM_ADDR(memp) \
         ((struct r_malloc_chunk *)(((unsigned char*)(memp))-CHUNK_MEMORY_OFFSET))
@@ -65,31 +65,31 @@ static UINT4 mem_usage;      /* Includes
 static UINT4 mem_stats[256]; /* Does not include our header */
 
 void *r_malloc(type,size)
   int type;
   size_t size;
   {
     size_t total;
     r_malloc_chunk *chunk;
-    
+
     total=size+sizeof(r_malloc_chunk);
 
     if(!(chunk=malloc(total)))
       return(0);
 
-#ifdef SANITY_CHECKS    
+#ifdef SANITY_CHECKS
     chunk->hdr=HDR_FLAG;
-#endif    
+#endif
     chunk->type=type;
     chunk->size=size;
 
     mem_usage+=CHUNK_SIZE(size);
     mem_stats[type]+=size;
-    
+
     return(chunk->memory);
   }
 
 void *r_calloc(type,number,size)
   int type;
   size_t number;
   size_t size;
   {
@@ -100,83 +100,83 @@ void *r_calloc(type,number,size)
 
     if(!(ret=r_malloc(type,total)))
       return(0);
 
     memset(ret,0,size);
 
     return(ret);
   }
-     
+
 void r_free(ptr)
   void *ptr;
   {
     r_malloc_chunk *chunk;
 
     if(!ptr) return;
 
     chunk=(r_malloc_chunk *)GET_CHUNK_ADDR_FROM_MEM_ADDR(ptr);
 #ifdef SANITY_CHECKS
     assert(chunk->hdr==HDR_FLAG);
-#endif    
+#endif
 
     mem_usage-=CHUNK_SIZE(chunk->size);
     mem_stats[chunk->type]-=chunk->size;
-    
+
     free(chunk);
   }
 
 void *r_realloc(ptr,size)
   void *ptr;
   size_t size;
   {
     r_malloc_chunk *chunk,*nchunk;
     size_t total;
-    
+
     if(!ptr) return(r_malloc(255,size));
 
     chunk=(r_malloc_chunk *)GET_CHUNK_ADDR_FROM_MEM_ADDR(ptr);
 #ifdef SANITY_CHECKS
     assert(chunk->hdr==HDR_FLAG);
-#endif    
+#endif
 
     total=size + sizeof(r_malloc_chunk);
 
     if(!(nchunk=realloc(chunk,total)))
       return(0);
 
     mem_usage-=CHUNK_SIZE(nchunk->size);
     mem_stats[nchunk->type]-=nchunk->size;
-    
+
     nchunk->size=size;
     mem_usage+=CHUNK_SIZE(nchunk->size);
     mem_stats[nchunk->type]+=nchunk->size;
-    
+
     return(nchunk->memory);
   }
-      
+
 char *r_strdup(str)
   char *str;
   {
     int len;
     char *nstr;
-    
+
     if(!str)
       return(0);
 
     len=strlen(str)+1;
 
     if(!(nstr=r_malloc(0,len)))
       return(0);
 
     memcpy(nstr,str,len);
 
     return(nstr);
   }
-    
+
 int r_mem_get_usage(usagep)
   UINT4 *usagep;
   {
     *usagep=mem_usage;
 
     return(0);
   }
 
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.h
@@ -1,42 +1,42 @@
 /**
    r_memory.h
 
-   
+
    Copyright (C) 2004, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Sat Apr 24 08:30:00 2004
  */
 
 
 #ifndef _r_memory_h
 #define _r_memory_h
 
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_replace.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_replace.c
@@ -1,42 +1,42 @@
 /**
    r_replace.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_replace.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -87,24 +87,24 @@ static char *RCSSTRING __UNUSED__ ="$Id:
 
 #ifndef HAVE_STRDUP
 
 char *strdup(str)
   char *str;
   {
     int len=strlen(str);
     char *n;
-    
+
     if(!(n=(char *)malloc(len+1)))
       return(0);
 
     memcpy(n,str,len+1);
 
     return(n);
   }
-#endif  
-  
+#endif
+
 
 #ifdef SUPPLY_ATEXIT
 int atexit(void (*func)(void)){
   ;
 }
 #endif
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_thread.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_thread.h
@@ -1,42 +1,42 @@
 /**
    r_thread.h
 
-   
+
    Copyright (C) 1999, RTFM, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Tue Feb 23 14:58:36 1999
  */
 
 
 #ifndef _r_thread_h
 #define _r_thread_h
 
@@ -51,17 +51,17 @@ int r_thread_yield (void);
 int r_thread_exit (void);
 int r_thread_wait_last (void);
 int r_thread_self (void);
 
 int r_rwlock_create (r_rwlock **lockp);
 int r_rwlock_destroy (r_rwlock **lock);
 int r_rwlock_lock (r_rwlock *lock,int action);
 
-int r_cond_init (r_cond *cond);  
+int r_cond_init (r_cond *cond);
 int r_cond_wait (r_cond cond);
 int r_cond_signal (r_cond cond);
 
 #define R_RWLOCK_UNLOCK 0
 #define R_RWLOCK_RLOCK 1
 #define R_RWLOCK_WLOCK 2
 
 #endif
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_time.c
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_time.c
@@ -1,42 +1,42 @@
 /**
    r_time.c
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_time.c
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
@@ -96,17 +96,17 @@ int r_timeval_diff(t1,t0,diff)
     if(t0->tv_sec > t1->tv_sec)
       ERETURN(R_BAD_ARGS);
     if((t0->tv_sec == t1->tv_sec) && (t0->tv_usec > t1->tv_usec))
       ERETURN(R_BAD_ARGS);
 
     /*Easy case*/
     if(t0->tv_usec <= t1->tv_usec){
       diff->tv_sec=t1->tv_sec - t0->tv_sec;
-      diff->tv_usec=t1->tv_usec - t0->tv_usec;      
+      diff->tv_usec=t1->tv_usec - t0->tv_usec;
       return(0);
     }
 
     /*Hard case*/
     d=t0->tv_usec - t1->tv_usec;
     if(t1->tv_sec < (t0->tv_sec + 1))
       ERETURN(R_BAD_ARGS);
     diff->tv_sec=t1->tv_sec - (t0->tv_sec + 1);
@@ -130,17 +130,17 @@ int r_timeval_add(t1,t2,sum)
       tv_usec=d-1000000;
     }
     else{
       tv_usec=d;
     }
 
     sum->tv_sec=tv_sec;
     sum->tv_usec=tv_usec;
-    
+
     return(0);
   }
 
 int r_timeval_cmp(t1,t2)
   struct timeval *t1;
   struct timeval *t2;
   {
     if(t1->tv_sec>t2->tv_sec)
@@ -149,26 +149,26 @@ int r_timeval_cmp(t1,t2)
       return(-1);
     if(t1->tv_usec>t2->tv_usec)
       return(1);
     if(t1->tv_usec<t2->tv_usec)
       return(-1);
     return(0);
   }
 
-    
+
 UINT8 r_timeval2int(tv)
   struct timeval *tv;
   {
     UINT8 r=0;
-    
+
     r=(tv->tv_sec);
     r*=1000000;
     r+=tv->tv_usec;
-        
+
     return r;
   }
 
 int r_int2timeval(UINT8 t,struct timeval *tv)
   {
     tv->tv_sec=t/1000000;
     tv->tv_usec=t%1000000;
 
@@ -205,17 +205,17 @@ int r_timeval_diff_usec(struct timeval *
                 ABORT(r);
         }
     }
 
     /* 1 second = 1000 milliseconds
      * 1 milliseconds = 1000 microseconds */
 
     *diff = ((tmp.tv_sec * (1000*1000)) + tmp.tv_usec) * sign;
-    
+
     _status = 0;
   abort:
     return(_status);
   }
 
 /* t1-t0 in milliseconds */
 int r_timeval_diff_ms(struct timeval *t1, struct timeval *t0, INT8 *diff)
   {
@@ -231,14 +231,14 @@ int r_timeval_diff_ms(struct timeval *t1
                 ABORT(r);
         }
     }
 
     /* 1 second = 1000 milliseconds
      * 1 milliseconds = 1000 microseconds */
 
     *diff = ((tmp.tv_sec * 1000) + (tmp.tv_usec / 1000)) * sign;
-    
+
     _status = 0;
   abort:
     return(_status);
   }
 
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_time.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_time.h
@@ -1,42 +1,42 @@
 /**
    r_time.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_time.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/libekr/r_types.h
+++ b/media/mtransport/third_party/nrappkit/src/util/libekr/r_types.h
@@ -1,42 +1,42 @@
 /**
    r_types.h
 
-   
+
    Copyright (C) 2002-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
  */
 
 /**
    r_types.h
 
 
    Copyright (C) 1999-2000 RTFM, Inc.
@@ -50,17 +50,17 @@
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. All advertising materials mentioning features or use of this software
       must display the following acknowledgement:
-   
+
       This product includes software developed by Eric Rescorla for
       RTFM, Inc.
 
    4. Neither the name of RTFM, Inc. nor the name of Eric Rescorla may be
       used to endorse or promote products derived from this
       software without specific prior written permission.
 
    THIS SOFTWARE IS PROVIDED BY ERIC RESCORLA AND RTFM, INC. ``AS IS'' AND
--- a/media/mtransport/third_party/nrappkit/src/util/p_buf.c
+++ b/media/mtransport/third_party/nrappkit/src/util/p_buf.c
@@ -1,42 +1,42 @@
 /**
    p_buf.c
 
-   
+
    Copyright (C) 2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    All Rights Reserved.
 
    ekr@rtfm.com  Tue Nov 25 16:33:08 2003
  */
 
 static char *RCSSTRING __UNUSED__ ="Id: p_buf.c,v 1.3 2004/01/03 22:13:53 ekr Exp $";
 
@@ -90,34 +90,34 @@ int nr_p_buf_ctx_destroy(ctxp)
   }
 
 int nr_p_buf_alloc(ctx,bufp)
   nr_p_buf_ctx *ctx;
   nr_p_buf **bufp;
   {
     int _status;
     nr_p_buf *buf=0;
-    
+
     if(!STAILQ_EMPTY(&ctx->free_list)){
       buf=STAILQ_FIRST(&ctx->free_list);
       STAILQ_REMOVE_HEAD(&ctx->free_list,entry);
       goto ok;
     }
     else {
       if(!(buf=(nr_p_buf *)RCALLOC(sizeof(nr_p_buf))))
         ABORT(R_NO_MEMORY);
       if(!(buf->data=(UCHAR *)RMALLOC(ctx->buf_size)))
         ABORT(R_NO_MEMORY);
       buf->size=ctx->buf_size;
     }
 
   ok:
      buf->r_offset=0;
      buf->length=0;
-     
+
      *bufp=buf;
     _status=0;
   abort:
      if(_status){
        nr_p_buf_destroy(buf);
      }
     return(_status);
   }
@@ -137,24 +137,24 @@ int nr_p_buf_free_chain(ctx,head)
   {
     nr_p_buf *n1,*n2;
 
     n1=STAILQ_FIRST(head);
     while(n1){
       n2=STAILQ_NEXT(n1,entry);
 
       nr_p_buf_free(ctx,n1);
-      
+
       n1=n2;
     }
 
     return(0);
   }
 
-    
+
 int nr_p_buf_write_to_chain(ctx,chain,data,len)
   nr_p_buf_ctx *ctx;
   nr_p_buf_head *chain;
   UCHAR *data;
   UINT4 len;
   {
     int r,_status;
     nr_p_buf *buf;
@@ -179,39 +179,39 @@ int nr_p_buf_write_to_chain(ctx,chain,da
       r_log(LOG_COMMON,LOG_DEBUG,"Wrote %d bytes to buffer %d",towrite,buf);
       buf=0;
     }
 
     _status=0;
   abort:
     return(_status);
   }
-  
+
 static int nr_p_buf_destroy_chain(head)
   nr_p_buf_head *head;
   {
     nr_p_buf *n1,*n2;
 
     n1=STAILQ_FIRST(head);
     while(n1){
       n2=STAILQ_NEXT(n1,entry);
 
       nr_p_buf_destroy(n1);
-      
+
       n1=n2;
     }
 
     return(0);
   }
 
 static int nr_p_buf_destroy(buf)
   nr_p_buf *buf;
   {
     if(!buf)
       return(0);
-    
+
     RFREE(buf->data);
     RFREE(buf);
 
     return(0);
   }
 
-  
+
--- a/media/mtransport/third_party/nrappkit/src/util/p_buf.h
+++ b/media/mtransport/third_party/nrappkit/src/util/p_buf.h
@@ -1,42 +1,42 @@
 /**
    p_buf.h
 
-   
+
    Copyright (C) 2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Tue Nov 25 15:58:37 2003
  */
 
 
 #ifndef _p_buf_h
 #define _p_buf_h
 
@@ -50,20 +50,20 @@ typedef struct nr_p_buf_ {
      STAILQ_ENTRY(nr_p_buf_) entry;
 } nr_p_buf;
 
 typedef STAILQ_HEAD(nr_p_buf_head_,nr_p_buf_) nr_p_buf_head;
 
 
 typedef struct nr_p_buf_ctx_ {
      int buf_size;
-     
+
      nr_p_buf_head free_list;
 } nr_p_buf_ctx;
-     
+
 int nr_p_buf_ctx_create(int size,nr_p_buf_ctx **ctxp);
 int nr_p_buf_ctx_destroy(nr_p_buf_ctx **ctxp);
 int nr_p_buf_alloc(nr_p_buf_ctx *ctx,nr_p_buf **bufp);
 int nr_p_buf_free(nr_p_buf_ctx *ctx,nr_p_buf *buf);
 int nr_p_buf_free_chain(nr_p_buf_ctx *ctx,nr_p_buf_head *chain);
 int nr_p_buf_write_to_chain(nr_p_buf_ctx *ctx,
                                        nr_p_buf_head *chain,
                                        UCHAR *data,UINT4 len);
--- a/media/mtransport/third_party/nrappkit/src/util/util.c
+++ b/media/mtransport/third_party/nrappkit/src/util/util.c
@@ -1,42 +1,42 @@
 /**
    util.c
 
-   
+
    Copyright (C) 2001-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Wed Dec 26 17:19:36 2001
  */
 
 
 static char *RCSSTRING __UNUSED__ ="$Id: util.c,v 1.5 2007/11/21 00:09:13 adamcain Exp $";
 
 #ifndef WIN32
@@ -61,24 +61,24 @@ int nr_util_default_log_facility=LOG_COM
 int nr_get_filename(base,name,namep)
   char *base;
   char *name;
   char **namep;
   {
     int len=strlen(base)+strlen(name)+2;
     char *ret=0;
     int _status;
-    
+
     if(!(ret=(char *)RMALLOC(len)))
       ABORT(R_NO_MEMORY);
     if(base[strlen(base)-1]!='/'){
       sprintf(ret,"%s/%s",base,name);
     }
     else{
-      sprintf(ret,"%s%s",base,name);      
+      sprintf(ret,"%s%s",base,name);
     }
     *namep=ret;
     _status=0;
   abort:
     return(_status);
   }
 
 #if 0
@@ -87,17 +87,17 @@ int read_RSA_private_key(base,name,keyp)
   char *name;
   RSA **keyp;
   {
     char *keyfile=0;
     BIO *bio=0;
     FILE *fp=0;
     RSA *rsa=0;
     int r,_status;
-    
+
     /* Load the keyfile */
     if(r=get_filename(base,name,&keyfile))
       ABORT(r);
     if(!(fp=fopen(keyfile,"r")))
       ABORT(R_NOT_FOUND);
     if(!(bio=BIO_new(BIO_s_file())))
       ABORT(R_NO_MEMORY);
     BIO_set_fp(bio,fp,BIO_NOCLOSE);
@@ -105,41 +105,41 @@ int read_RSA_private_key(base,name,keyp)
     if(!(rsa=PEM_read_bio_RSAPrivateKey(bio,0,0,0)))
       ABORT(R_NOT_FOUND);
 
     *keyp=rsa;
     _status=0;
   abort:
     return(_status);
   }
-#endif    
-    
+#endif
+
 
 void nr_errprintf_log(const char *format,...)
   {
     va_list ap;
 
     va_start(ap,format);
-    
+
     r_vlog(nr_util_default_log_facility,LOG_ERR,format,ap);
 
     va_end(ap);
   }
 
 void nr_errprintf_log2(void *ignore, const char *format,...)
   {
     va_list ap;
 
     va_start(ap,format);
-    
+
     r_vlog(nr_util_default_log_facility,LOG_ERR,format,ap);
 
     va_end(ap);
   }
-  
+
 
 int nr_fwrite_all(FILE *fp,UCHAR *buf,int len)
   {
     int r,_status;
 
     while(len){
       r=fwrite(buf,1,len,fp);
       if(r==0)
@@ -155,48 +155,48 @@ int nr_fwrite_all(FILE *fp,UCHAR *buf,in
   }
 
 int nr_read_data(fd,buf,len)
   int fd;
   char *buf;
   int len;
   {
     int r,_status;
-    
+
     while(len){
       r=NR_SOCKET_READ(fd,buf,len);
       if(r<=0)
         ABORT(R_EOD);
 
       buf+=r;
       len-=r;
     }
 
-    
+
     _status=0;
   abort:
     return(_status);
   }
-    
+
 #ifdef WIN32
   // TODO
 #else
 int nr_drop_privileges(char *username)
   {
     int _status;
-    
+
     /* Drop privileges */
     if ((getuid() == 0) || geteuid()==0) {
       struct passwd *passwd;
-      
+
       if ((passwd = getpwnam(CAPTURE_USER)) == 0){
         r_log(LOG_GENERIC,LOG_EMERG,"Couldn't get user %s",CAPTURE_USER);
         ABORT(R_INTERNAL);
       }
-      
+
       if(setuid(passwd->pw_uid)!=0){
         r_log(LOG_GENERIC,LOG_EMERG,"Couldn't drop privileges");
         ABORT(R_INTERNAL);
       }
     }
 
     _status=0;
   abort:
@@ -216,84 +216,84 @@ int nr_bin2hex(UCHAR *in,int len,UCHAR *
     }
 
     return(0);
   }
 
 int nr_hex_ascii_dump(Data *data)
   {
     UCHAR *ptr=data->data;
-    int len=data->len;    
-    
+    int len=data->len;
+
     while(len){
       int i;
       int bytes=MIN(len,16);
-      
+
       for(i=0;i<bytes;i++)
         printf("%.2x ",ptr[i]&255);
       /* Fill */
       for(i=0;i<(16-bytes);i++)
         printf("   ");
       printf("   ");
-      
+
       for(i=0;i<bytes;i++){
         if(isprint(ptr[i]))
           printf("%c",ptr[i]);
         else
           printf(".");
       }
       printf("\n");
-      
+
       len-=bytes;
       ptr+=bytes;
     }
     return(0);
   }
 
 #ifdef OPENSSL
 int nr_sha1_file(char *filename,UCHAR *out)
   {
     EVP_MD_CTX md_ctx;
     FILE *fp=0;
     int r,_status;
     UCHAR buf[1024];
     int out_len;
 
     EVP_MD_CTX_init(&md_ctx);
-    
+
     if(!(fp=fopen(filename,"r"))){
       r_log(LOG_COMMON,LOG_ERR,"Couldn't open file %s",filename);
       ABORT(R_NOT_FOUND);
     }
 
     EVP_DigestInit_ex(&md_ctx,EVP_sha1(),0);
-    
+
     while(1){
       r=fread(buf,1,sizeof(buf),fp);
 
       if(r<0){
         r_log(LOG_COMMON,LOG_ERR,"Error reading from %s",filename);
         ABORT(R_INTERNAL);
       }
 
       if(!r)
         break;
-      
+
       EVP_DigestUpdate(&md_ctx,buf,r);
     }
 
     EVP_DigestFinal(&md_ctx,out,(unsigned int*)&out_len);
     if(out_len!=20)
       ABORT(R_INTERNAL);
 
     _status=0;
   abort:
     EVP_MD_CTX_cleanup(&md_ctx);
     if(fp) fclose(fp);
-    
+
     return(_status);
   }
 
 #endif
 
 #ifdef WIN32
   // TODO
 #else
@@ -304,25 +304,25 @@ int nr_sha1_file(char *filename,UCHAR *o
 
 int nr_rm_tree(char *path)
   {
     FTS *fts=0;
     FTSENT *p;
     int failed=0;
     int _status;
     char *argv[2];
-    
+
     argv[0]=path;
     argv[1]=0;
 
     if(!(fts=fts_open(argv,0,NULL))){
       r_log_e(LOG_COMMON,LOG_ERR,"Couldn't open directory %s",path);
       ABORT(R_FAILED);
     }
-      
+
     while(p=fts_read(fts)){
       switch(p->fts_info){
         case FTS_D:
           break;
         case FTS_DOT:
           break;
         case FTS_ERR:
           r_log_e(LOG_COMMON,LOG_ERR,"Problem reading %s",p->fts_path);
@@ -334,17 +334,17 @@ int nr_rm_tree(char *path)
             r_log_e(LOG_COMMON,LOG_ERR,"Problem removing %s",p->fts_path);
             failed=1;
           }
       }
     }
 
     if(failed)
       ABORT(R_FAILED);
-    
+
     _status=0;
   abort:
     if(fts) fts_close(fts);
     return(_status);
   }
 #endif
 
 int nr_write_pid_file(char *pid_filename)
@@ -558,10 +558,10 @@ int snprintf(char *buffer, size_t n, con
   int ret;
   va_start(argp, format);
   ret = _vscprintf(format, argp);
   vsnprintf_s(buffer, n, _TRUNCATE, format, argp);
   va_end(argp);
   return ret;
 }
 
-#endif 
+#endif
 
--- a/media/mtransport/third_party/nrappkit/src/util/util.h
+++ b/media/mtransport/third_party/nrappkit/src/util/util.h
@@ -1,42 +1,42 @@
 /**
    util.h
 
-   
+
    Copyright (C) 2001-2003, Network Resonance, Inc.
    Copyright (C) 2006, Network Resonance, Inc.
    All Rights Reserved
-   
+
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
-   
+
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of Network Resonance, Inc. nor the name of any
-      contributors to this software may be used to endorse or promote 
+      contributors to this software may be used to endorse or promote
       products derived from this software without specific prior written
       permission.
-   
+
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+   ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    POSSIBILITY OF SUCH DAMAGE.
-   
+
 
    ekr@rtfm.com  Wed Dec 26 17:20:23 2001
  */
 
 
 #ifndef _util_h
 #define _util_h