13 #include "ns3/simulator.h" 
   25   NS_ASSERT (
sizeof (pthread_t) >= 4);
 
   26   return (thread_handle >> 16) & 0xffff;
 
   32   NS_ASSERT (
sizeof (pthread_t) >= 4);
 
   33   return thread_handle & 0xffff;
 
   39   NS_ASSERT (
sizeof (pthread_t) >= 4);
 
   53   for (std::list<ThreadKeyValue>::iterator j = current->
keyValues.begin ();
 
   56       NS_LOG_DEBUG (
"destroy key " << j->key << 
" " << j->destructor << 
" " << j->value);
 
   57       if (j->destructor != 0 && j->value != 0)
 
   73   std::ostringstream oss;
 
   77   NS_ASSERT (current != 0);
 
   88   oss << 
"Exit (" << status << 
")";
 
   99   void *(*start_routine)(
void*);
 
  128                         const pthread_attr_t *attr,
 
  134   NS_ASSERT (current != 0);
 
  153   NS_ASSERT (current != 0);
 
  155   if (process->
threads.size () == 1)
 
  185   NS_ASSERT (current != 0);
 
  214   if (value_ptr != NULL)
 
  226   NS_ASSERT (current != 0);
 
  256   NS_ASSERT (current != 0);
 
  264   if (once_control == 0 || init_routine == 0)
 
  268   if (*once_control == 1)
 
  281   for (std::list<struct ThreadKeyValue>::const_iterator i = current->
keyValues.begin ();
 
  295   NS_ASSERT (current != 0);
 
  296   for (std::list<struct ThreadKeyValue>::const_iterator i = current->
keyValues.begin ();
 
  310   NS_ASSERT (current != 0);
 
  311   for (std::list<struct ThreadKeyValue>::iterator i = current->
keyValues.begin ();
 
  316           i->value = 
const_cast<void *
> (value);
 
  326   NS_LOG_FUNCTION (current << 
UtilsGetNodeId () << key << destructor);
 
  327   NS_ASSERT (current != 0);
 
  328   pthread_key_t tmp = 2;
 
  340           for (std::vector<struct Thread *>::const_iterator i = process->
threads.begin ();
 
  341                i != process->
threads.end (); ++i)
 
  343               struct Thread *thread = *i;
 
  357   NS_ASSERT (current != 0);
 
  363   for (std::vector<struct Thread *>::const_iterator i = process->
threads.begin ();
 
  364        i != process->
threads.end (); ++i)
 
  366       struct Thread *thread = *i;
 
  368       for (std::list<struct ThreadKeyValue>::iterator j = thread->
keyValues.begin ();
 
  386   NS_ASSERT (current != 0);
 
  395   if (sigismember (&thread->
signalMask, sig) == 0)
 
  407 int dce_pthread_sigmask (
int how, 
const sigset_t *restrict 
set,
 
  408                          sigset_t *restrict oset)
 
  414                      sigset_t *restrict oset)