本文整理汇总了C++中create_session函数的典型用法代码示例。如果您正苦于以下问题:C++ create_session函数的具体用法?C++ create_session怎么用?C++ create_session使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了create_session函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: printf
//-----------------------------------------------------------------------------
worker_c::error_e worker_c::service_handshake_request( Reveal::Core::authorization_ptr auth ) {
Reveal::Core::session_ptr session;
Reveal::Core::user_ptr user;
Reveal::Core::authorization_c::type_e type = auth->get_type();
if( type == Reveal::Core::authorization_c::TYPE_IDENTIFIED ) {
// validate user credentials
printf( "client requested identified authorization: id[%s]\n", auth->get_user().c_str() );
// TODO : Logging
if( is_user_valid( auth, user ) ) {
if( create_session( auth, session ) ) {
printf( "created session: " ); session->print();
auth->set_error( Reveal::Core::authorization_c::ERROR_NONE );
auth->set_user( user->id );
auth->set_type( Reveal::Core::authorization_c::TYPE_SESSION );
auth->set_session( session->session_id );
send_valid_handshake_response( auth );
} else {
// TODO : handle failed session insert into database
}
} else {
printf( "ERROR: failed to find %s in user table\n", auth->get_user().c_str() );
// failed query and failed authentication
auth->set_error( Reveal::Core::authorization_c::ERROR_INVALID_IDENTITY );
send_invalid_handshake_response( auth );
}
} else if( type == Reveal::Core::authorization_c::TYPE_ANONYMOUS ) {
printf( "client requested anonymous authorization\n" );
// TODO : Logging
if( create_session( auth, session ) ) {
printf( "created session: " ); session->print();
auth->set_type( Reveal::Core::authorization_c::TYPE_SESSION );
auth->set_session( session->session_id );
send_valid_handshake_response( auth );
} else {
// TODO : handle failed session insert into database
}
} else if( type == Reveal::Core::authorization_c::TYPE_SESSION ) {
// this should only occur if a session was disrupted to the point that
// the client is trying to resume after being completely disconnected
// from the server. This is the most suspicious case though and
// probably should be denied as it is possible to session hijack if allowed.
}
return ERROR_NONE;
}
开发者ID:jacquelinekay,项目名称:reveal,代码行数:61,代码来源:worker.cpp
示例2: main
int main(int argc, char* argv[])
{
schd = create_scheduler();
initialize_scheduler(schd, NULL);
session_1 = create_session();
initialize_session(session_1, "222.214.218.237", 6601, "1299880", 0);
set_session_index(session_1, 0);
add_session(schd, session_1);
session_2 = create_session();
initialize_session(session_2, "222.214.218.237", 6601, "1299880", 1);
set_session_index(session_2, 1);
add_session(schd, session_2);
set_surface_mode(schd->surface, mode_2);
scheduler_start(schd);
session_start(session_1);
session_start(session_2);
scheduler_wait(schd);
session_stop(session_1);
session_stop(session_2);
destroy_session(session_1);
destroy_session(session_2);
return 0;
}
开发者ID:dalinhuang,项目名称:jorhy-player,代码行数:30,代码来源:win_main.c
示例3: register_tests
bool register_tests(test_suite *suite, node n)
{
ELLIPTICS_TEST_CASE(test_write_order_execution, create_session(n, { 1 }, 0, 0));
ELLIPTICS_TEST_CASE(test_oplock, create_session(n, { 1 }, 0, 0));
return true;
}
开发者ID:abudnik,项目名称:elliptics,代码行数:7,代码来源:locks_test.cpp
示例4: main
int main (int argc, char ** argv)
{
gchar* filename;
QofSession* session_1;
qof_init();
cashobjects_register();
qof_load_backend_library ("../.libs/", GNC_LIB_NAME);
// Create a session with data
session_1 = create_session();
filename = tempnam( "/tmp", "test-sqlite3-" );
printf( "Using filename: %s\n", filename );
test_dbi_store_and_reload( "sqlite3", session_1, filename );
#if 0
printf( "TEST_MYSQL_URL='%s'\n", TEST_MYSQL_URL );
if ( strlen( TEST_MYSQL_URL ) > 0 )
{
session_1 = create_session();
test_dbi_store_and_reload( "mysql", session_1, TEST_MYSQL_URL );
}
printf( "TEST_PGSQL_URL='%s'\n", TEST_PGSQL_URL );
if ( strlen( TEST_PGSQL_URL ) > 0 )
{
session_1 = create_session();
test_dbi_store_and_reload( "pgsql", session_1, TEST_PGSQL_URL );
}
#endif
print_test_results();
qof_close();
exit(get_rv());
}
开发者ID:cstim,项目名称:gnucash-svn,代码行数:32,代码来源:test-dbi-basic.c
示例5: register_tests
bool register_tests(test_suite *suite, node n)
{
ELLIPTICS_TEST_CASE(test_cache_records_sizes, create_session(n, { 5 }, 0, DNET_IO_FLAGS_CACHE | DNET_IO_FLAGS_CACHE_ONLY));
ELLIPTICS_TEST_CASE(test_cache_overflow, create_session(n, { 5 }, 0, DNET_IO_FLAGS_CACHE | DNET_IO_FLAGS_CACHE_ONLY));
ELLIPTICS_TEST_CASE(test_cache_overflow, create_session(n, { 5 }, 0, DNET_IO_FLAGS_CACHE));
return true;
}
开发者ID:daemondn,项目名称:elliptics,代码行数:8,代码来源:cache_test.cpp
示例6: register_tests
bool register_tests(test_suite *suite, node n)
{
ELLIPTICS_TEST_CASE(upload_application, global_data->locator_port, global_data->directory.path());
ELLIPTICS_TEST_CASE(start_application, create_session(n, { 1 }, 0, 0), "dnet_cpp_srw_test_app");
ELLIPTICS_TEST_CASE(init_application, create_session(n, { 1 }, 0, 0), "dnet_cpp_srw_test_app");
ELLIPTICS_TEST_CASE(send_echo, create_session(n, { 1 }, 0, 0), "dnet_cpp_srw_test_app", "some-data");
ELLIPTICS_TEST_CASE(send_echo, create_session(n, { 1 }, 0, 0), "dnet_cpp_srw_test_app", "some-data and long-data.. like this");
return true;
}
开发者ID:kshcherban,项目名称:elliptics,代码行数:10,代码来源:srw_test.cpp
示例7: b_engine
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Interactive render session constructor
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
BlenderSession::BlenderSession(BL::RenderEngine b_engine_, BL::UserPreferences b_userpref_, BL::BlendData b_data_, BL::Scene b_scene_, BL::SpaceView3D b_v3d_, BL::RegionView3D b_rv3d_, int width_, int height_)
: b_engine(b_engine_), b_userpref(b_userpref_), b_data(b_data_), b_scene(b_scene_), b_v3d(b_v3d_), b_rv3d(b_rv3d_) {
for(int i = 0; i < Passes::NUM_PASSES; ++i) {
if(pass_buffers[i]) pass_buffers[i] = 0;
}
for(int i = 0; i < Passes::NUM_PASSES; ++i) {
if(mb_pass_buffers[i]) mb_pass_buffers[i] = 0;
}
// 3d view render
width = width_;
height = height_;
interactive = true;
last_redraw_time = 0.0f;
create_session();
if(motion_blur && mb_type == INTERNAL) {
bool stop_render;
session->start("Interactive", false, load_internal_mb_sequence(stop_render), 0);
}
else {
motion_blur = false;
session->start("Interactive", false, 0, 0);
}
} //BlenderSession(BL::RenderEngine b_engine_, BL::UserPreferences b_userpref_, BL::BlendData b_data_, BL::Scene b_scene_, BL::SpaceView3D b_v3d_, BL::RegionView3D b_rv3d_, int width_, int height_)
开发者ID:mistajuliax,项目名称:OctaneBlender,代码行数:29,代码来源:blender_session.cpp
示例8: _RUDPA_DEBUG
SESSION_t *session_begin(LISTEN_t * thiz,UDP_PKT_H_t *uph,u_int32_t len,int sock_fd,u_int32_t ip,u_int16_t port)
{
SESSION_t *s;
u_int32_t radom;
_RUDPA_DEBUG("session_begin>>in \n");
if (len != UDPH_LEN + sizeof(u_int32_t))
return NULL;
radom = *(u_int32_t*)uph->data;
if ((s = query_old_session((radom))) == NULL)
{
if ((s = create_session(uph->session_id)) == NULL)
return NULL;
NEW_SESSION_t ns;
ns.session = s;
ns.radom = radom;
ListenerEventCall(thiz,LEvent_New_Session,(void *)&ns,sizeof(ns));
_RUDPA_DEBUG("session:%x\r\n",s);
_RUDPA_TRACE("\033[31m new session id=====0x%x\r\n\033[0m",s->session_id);
}
s->fd = sock_fd;
s->ip = ip;
s->port = port;
s->tick = uph->tick;
s->radom = radom;
_RUDPA_DEBUG("session_begin>>out\n");
return s;
}
开发者ID:LinLL,项目名称:ipc,代码行数:35,代码来源:session.c
示例9: authenticate
int API::api_read(Json::Value &request, Json::Value &response, Json::Value &errors)
{
if (validate_read(request["data"], errors) < 0)
{
response["status"] = Json::Value(STATUS_STRUCTURE);
return -1;
}
int user = authenticate(request["auth"]);
if (user == -1)
{
response["status"] = STATUS_AUTH;
errors.append(Json::Value("Authentication failed"));
return -1;
}
create_session(response, user);
Json::Value call_data;
if (strcmp(request["data"]["view"].asCString(), "list") == 0)
{
if (strcmp(request["data"]["type"].asCString(), "profile") == 0) call_data = read_profile_list(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "department") == 0) call_data = read_department_list(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "user") == 0) call_data = read_user_list(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "pictogram") == 0) call_data = read_pictogram_list(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "application") == 0) call_data = read_application_list(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "category") == 0) call_data = read_category_list(request["data"], user, errors);
else
{
response["status"] = STATUS_STRUCTURE;
errors.append(Json::Value("Invalid data type requested"));
}
}
else
{
if (strcmp(request["data"]["type"].asCString(), "profile") == 0) call_data = read_profile_details(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "department") == 0) call_data = read_department_details(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "user") == 0) call_data = read_user_details(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "pictogram") == 0) call_data = read_pictogram_details(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "application") == 0) call_data = read_application_details(request["data"], user, errors);
else if (strcmp(request["data"]["type"].asCString(), "category") == 0) call_data = read_category_details(request["data"], user, errors);
else
{
response["status"] = STATUS_STRUCTURE;
errors.append(Json::Value("Invalid data type requested"));
}
}
if (!errors.empty())
{
response["status"] = Json::Value(STATUS_ACCESS);
return -1;
}
response["data"] = call_data;
return 0;
}
开发者ID:Ezphares,项目名称:giraf_database,代码行数:60,代码来源:api_read.cpp
示例10: runpartialgetresponsetest
int runpartialgetresponsetest(char *hostname, char *username, char *password)
{
int session_id = -1;
int i = 0;
int total= 100;
int batchsize = 10;
char *batchid = "batchid";
char *request[total];
char *userdata[total];
for(; i < total; i++)
{
request[i] = malloc(1024);
sprintf(request[i], "req%d", i);
userdata[i] = malloc(1024);
sprintf(userdata[i], "userdata%d", i);
}
init_client(hostname, username, password);
session_id = create_session();
send_request(session_id, batchid, request, userdata, total, true);
get_response(session_id, batchid, "", "", batchsize, true);
i = 1;
for(; i < 9; i++)
{
get_response(session_id, batchid, "", "", batchsize, false);
}
close_session(session_id);
return 0;
}
开发者ID:MicrosoftHPC,项目名称:REST-Client-Sample,代码行数:28,代码来源:main.c
示例11: CompanyContactsKeeper
bool
Server::init()
{
if(m_server_type == SERVER_TYPE_USER){
m_com_contacts = new CompanyContactsKeeper(m_mongodb_addr,m_company_list_filename);
if(m_com_contacts->init()==false){
return false;
}
}
if(m_server_type == SERVER_TYPE_JOB){
m_com_score = new CompanyScoreKeeper(m_company_score_filename);
if(m_com_score->init()==false){
return false;
}
}
pthread_mutex_init(&m_db_lock,0);
pthread_cond_init(&m_db_cond,0);
for(size_t i=0;i<db_pool_size;i++){
m_dbs.push_back(new Xapian::Database(m_index_dir));
m_dbs_busy.push_back(false);
}
Session* new_session = create_session();
new_session->init();
acceptor_.async_accept(new_session->socket(),
boost::bind(&Server::handle_accept, this, new_session,
boost::asio::placeholders::error));
return true;
}
开发者ID:RyanWarm,项目名称:ZUtils,代码行数:28,代码来源:Server.cpp
示例12: main
int main(int argc, char **argv)
{
int server_socket;
struct sockaddr_in serv_addr;
if(argc != 5){
perror("argc :");
exit(2);
}
bzero(&serv_addr, sizeof(serv_addr));
serv_addr.sin_family = PF_INET;
serv_addr.sin_port = htons(atoi(argv[2]));
if ((server_socket = socket(PF_INET, SOCK_STREAM, 0)) == -1){
perror("Client: socket(): ");
exit(2);
}
if (connect(server_socket, (struct sockaddr*)&serv_addr, sizeof(serv_addr)) == -1){
perror("Client: connect(): ");
exit(2);
}
create_session(argv[3], argv[4], server_socket, &serv_addr);
close(server_socket);
return 0;
}
开发者ID:KillingNoisesWorkgroup,项目名称:chat,代码行数:28,代码来源:main.c
示例13: login_handler
/*
* If requested via GET, serves the login page.
* If requested via POST (form submission), checks password and logs user in.
*/
static void login_handler(struct mg_connection *nc, int ev, void *p) {
struct http_message *hm = (struct http_message *) p;
if (mg_vcmp(&hm->method, "POST") != 0) {
/* Serve login.html */
mg_serve_http(nc, (struct http_message *) p, s_http_server_opts);
} else {
/* Perform password check. */
char user[50], pass[50];
int ul = mg_get_http_var(&hm->body, "user", user, sizeof(user));
int pl = mg_get_http_var(&hm->body, "pass", pass, sizeof(pass));
if (ul > 0 && pl > 0) {
if (check_pass(user, pass)) {
struct session *s = create_session(user, hm);
mg_printf(nc, "HTTP/1.0 302 Found\r\n");
set_session_cookie(nc, s);
mg_printf(nc, "Location: /\r\n");
mg_printf(nc, "\r\nHello, %s!\r\n", s->user);
fprintf(stderr, "%s logged in, sid %" INT64_X_FMT "\n", s->user, s->id);
} else {
mg_printf(nc, "HTTP/1.0 403 Unauthorized\r\n\r\nWrong password.\r\n");
}
} else {
mg_printf(nc, "HTTP/1.0 400 Bad Request\r\n\r\nuser, pass required.\r\n");
}
nc->flags |= MG_F_SEND_AND_CLOSE;
}
(void) ev;
}
开发者ID:BenDerPan,项目名称:mongoose,代码行数:32,代码来源:cookie_auth.c
示例14: create_session
void BlenderSession::create()
{
create_session();
if(b_v3d)
session->start();
}
开发者ID:the3dadvantage,项目名称:blender-git,代码行数:7,代码来源:blender_session.cpp
示例15: process_msg_general
int process_msg_general(worker_data *wd, message *msg)
{
//Basic sanity checks
if (msg == NULL || wd == NULL || msg->destination_id != wd->id || msg->destination_type != WORKER) {
return -1;
}
//If the message comes from a thread, we check that it has the correct format
if (msg->origin_type == THREAD) {
int errcode = check_thread_message_args(msg);
if (errcode != 0) {
message *answer = create_error_message(WORKER, wd->id, THREAD, msg->thread_id, msg->thread_id, ANSWER, ERROR, errcode);
send_message(answer);
delete_message(answer);
return 0;
}
}
//We check if there is an existing session for the thread associated to this message, and if not, we create it
session *s = create_session(wd, msg->thread_id);
//If it comes from a thread
if (msg->origin_type == THREAD) {
process_thread_request(wd, msg, s);
}
//Else, if it comes from another worker and its an request for something
else if (msg->origin_type == WORKER && msg->msg_type == REQUEST) {
process_worker_request(wd, msg, s);
}
//Else, if it comes from another worker, but its an answer to something we requested
else if (msg->origin_type == WORKER && msg->msg_type == ANSWER) {
process_worker_answer(wd, msg, s);
}
return 0;
}
开发者ID:facutuesca,项目名称:DistributedFS,代码行数:35,代码来源:worker.c
示例16: server_work
static void server_work(struct work_struct *work)
{
struct socket *server_socket;
struct socket *slave_socket;
kkv_server *server;
kkv_session *session;
server=container_of(work,kkv_server,work);
server_socket=server->socket;
again:
slave_socket=accept_socket(server_socket);
if (!slave_socket)
return;
session=create_session(session_work_socket,slave_socket);
if(!session) {
#ifdef DEBUG_KKV_NETWORK
printk("create_session() failed\n");
#endif
goto out;
}
set_slave_sk_callbacks(slave_socket,session);
goto again;
out:
slave_socket->ops->shutdown(slave_socket,SHUT_RDWR);
sock_release(slave_socket);
}
开发者ID:jilinxpd,项目名称:kkv,代码行数:28,代码来源:server.c
示例17:
session& connection::default_session() {
struct connection_context& ctx = connection_context::get(pn_cast(this));
if (!ctx.default_session) {
ctx.default_session = &create_session();
ctx.default_session->open();
}
return *ctx.default_session;
}
开发者ID:kawakawa75,项目名称:qpid-proton,代码行数:8,代码来源:connection.cpp
示例18: register_tests
bool register_tests(test_suite *suite, node n)
{
ELLIPTICS_TEST_CASE(test_error_message, create_session(n, {2}, 0, 0), "non-existen-key", -ENOENT);
ELLIPTICS_TEST_CASE_NOARGS(test_error_null_message);
ELLIPTICS_TEST_CASE_NOARGS(test_data_buffer);
return true;
}
开发者ID:3Hren,项目名称:elliptics,代码行数:8,代码来源:api_test.cpp
示例19: MultipleNodesTest
SingleSessionTest::SingleSessionTest(unsigned int num_nodes_dc1, unsigned int num_nodes_dc2, unsigned int protocol_version, bool isSSL /* = false */)
: MultipleNodesTest(num_nodes_dc1, num_nodes_dc2, protocol_version, isSSL), session(NULL), ssl(NULL) {
//SSL verification flags must be set before establishing session
if (!isSSL) {
create_session();
} else {
ssl = cass_ssl_new();
}
}
开发者ID:Ilceren,项目名称:cpp-driver,代码行数:9,代码来源:test_utils.cpp
示例20: create_recv_rtp
/* Create a pad for receiving RTP for the session in @name
*/
static GstPad *
create_recv_rtp (GstRDTManager * rdtmanager, GstPadTemplate * templ,
const gchar * name)
{
guint sessid;
GstRDTManagerSession *session;
/* first get the session number */
if (name == NULL || sscanf (name, "recv_rtp_sink_%u", &sessid) != 1)
goto no_name;
GST_DEBUG_OBJECT (rdtmanager, "finding session %d", sessid);
/* get or create session */
session = find_session_by_id (rdtmanager, sessid);
if (!session) {
GST_DEBUG_OBJECT (rdtmanager, "creating session %d", sessid);
/* create session now */
session = create_session (rdtmanager, sessid);
if (session == NULL)
goto create_error;
}
/* check if pad was requested */
if (session->recv_rtp_sink != NULL)
goto existed;
GST_DEBUG_OBJECT (rdtmanager, "getting RTP sink pad");
session->recv_rtp_sink = gst_pad_new_from_template (templ, name);
gst_pad_set_element_private (session->recv_rtp_sink, session);
gst_pad_set_event_function (session->recv_rtp_sink,
gst_rdt_manager_event_rdt);
gst_pad_set_chain_function (session->recv_rtp_sink,
gst_rdt_manager_chain_rdt);
gst_pad_set_active (session->recv_rtp_sink, TRUE);
gst_element_add_pad (GST_ELEMENT_CAST (rdtmanager), session->recv_rtp_sink);
return session->recv_rtp_sink;
/* ERRORS */
no_name:
{
g_warning ("rdtmanager: invalid name given");
return NULL;
}
create_error:
{
/* create_session already warned */
return NULL;
}
existed:
{
g_warning ("rdtmanager: recv_rtp pad already requested for session %d",
sessid);
return NULL;
}
}
开发者ID:lubing521,项目名称:gst-embedded-builder,代码行数:59,代码来源:rdtmanager.c
注:本文中的create_session函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论