Documentation

Generated on Thu Aug 31 00:02:34 2006

 

User.h File Reference

#include "generic.h"
#include "Utilities.h"
#include "Configuration.h"
#include "Log.h"
#include "Connection.h"
#include "Data.h"
#include "Commands.h"

Include dependency graph for User.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


Classes

class  User

Enumerations

enum  logged { NOT_LOGGED_IN, USER_SUPPLIED, LOGGED_IN }

Functions

vector< User * >::iterator get_user_it (pthread_t)
void kill_user (void *)

Variables

pthread_key_t my_user
pthread_rwlock_t user_list_lock
vector< User * > user_list

Enumeration Type Documentation

enum logged

Enumerator:
NOT_LOGGED_IN 
USER_SUPPLIED 
LOGGED_IN 

Definition at line 23 of file User.h.


Function Documentation

vector<User*>::iterator get_user_it ( pthread_t   ) 

Definition at line 64 of file User.cpp.

References user_list, and user_list_lock.

Referenced by User::~User().

00065 {
00066   vector<User*>::iterator user_it;
00067 
00068   BABY_RDLOCK(user_list_lock);
00069   for(user_it = user_list.begin(); user_it != user_list.end(); user_it++)
00070     if(pthread_equal((*user_it)->thread_id(), thread_id))
00071       break;
00072   BABY_UNLOCK(user_list_lock);
00073 
00074   return(user_it);
00075 }

void kill_user ( void *   ) 

Definition at line 149 of file User.cpp.

Referenced by main().

00150 {
00151   delete static_cast<User*>(user);
00152 }


Variable Documentation

pthread_key_t my_user

Definition at line 37 of file babyftpd.h.

Referenced by exit_baby(), main(), and user_wrapper().

vector<User*> user_list

pthread_rwlock_t user_list_lock