• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ create_session函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ create_shader函数代码示例发布时间:2022-05-30
下一篇:
C++ create_server函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap