void statement::param_null(char is_null) { st_mysql_bind& bind = get_bind(); bind.buffer_type = MYSQL_TYPE_NULL; bind.is_null = &is_null; }
void statement::param(const unsigned int& value) { st_mysql_bind& bind = get_bind(); bind.buffer_type = MYSQL_TYPE_LONG; bind.buffer = (void*)&value; bind.is_unsigned = 1; bind.is_null = 0; bind.length = 0; }
void statement::param(const double& value) { st_mysql_bind& bind = get_bind(); bind.buffer_type = MYSQL_TYPE_DOUBLE; bind.buffer = (void*)&value; bind.is_null = 0; lengths[bind_index - 1] = sizeof(value); bind.length = &lengths[bind_index - 1]; }
void statement::param_blob(const std::string& value) { st_mysql_bind& bind = get_bind(); bind.buffer_type = MYSQL_TYPE_BLOB; bind.buffer = (void*)value.c_str(); bind.is_null = 0; lengths[bind_index - 1] = value.size(); bind.buffer_length = lengths[bind_index - 1]; bind.length = &lengths[bind_index - 1]; }
int init_serveur(t_serv *serv) { if ((serv->s = socket(AF_INET, SOCK_STREAM, serv->proto->p_proto)) == -1) { perror(""); return (EXIT_FAILURE); } if (get_bind(serv) == EXIT_FAILURE) return (EXIT_FAILURE); start_serv(); if (my_listen(&serv->s) == EXIT_FAILURE) return (EXIT_FAILURE); serv->client_len = sizeof(serv->sin_client); return (EXIT_SUCCESS); }
int main ( int argc, char *argvv[] ) { int status; void look_thread (), get_person (), get_bind(); argv = argvv; /* Get binding information of the phone server. */ status = pthread_create ( &phon_bind_thread_h, pthread_attr_default, ( pthread_startroutine_t )get_bind, ( pthread_addr_t ) 1 ); THRCHK ( status ); /* Get binding information of the address server. */ get_bind ( 2 ); /* Wait for all binding threads to terminate. */ status = pthread_join ( phon_bind_thread_h, NULL ); THRCHK ( status ); /* Free the storage being used by the binding threads. */ status = pthread_detach ( &phon_bind_thread_h ); THRCHK ( status ); /* Initialize condition variable mutex. */ status = pthread_mutex_init ( &name_mutex, pthread_mutexattr_default ); THRCHK ( status ); /* Initialize condition variable. */ status = pthread_cond_init ( &name_ready, pthread_condattr_default ); THRCHK ( status ); /* Initialize condition variable predicate. */ name_ready_p = APP_LOOKUP; /* Create a thread to do a phone number lookup in a server. */ status = pthread_create ( &phon_thread_h, pthread_attr_default, ( pthread_startroutine_t )look_thread, ( pthread_addr_t ) 1 ); THRCHK ( status ); /* Create a thread to do an address lookup in a server. */ status = pthread_create ( &addr_thread_h, pthread_attr_default, ( pthread_startroutine_t )look_thread, ( pthread_addr_t ) 2 ); THRCHK ( status ); /* Get input of a person's name. */ get_person ( ); /* Wait for all remaining threads to terminate. */ status = pthread_join ( phon_thread_h, NULL ); THRCHK ( status ); status = pthread_join ( addr_thread_h, NULL ); THRCHK ( status ); /* Free the storage being used by the remaining threads. */ status = pthread_detach ( &phon_thread_h ); THRCHK ( status ); status = pthread_detach ( &addr_thread_h ); THRCHK ( status ); printf ( "Thanks for using %s !\n", argv[ 0 ] ); }