本文整理汇总了C++中request_init函数的典型用法代码示例。如果您正苦于以下问题:C++ request_init函数的具体用法?C++ request_init怎么用?C++ request_init使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了request_init函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: assert
/* 1 - 7 is the range we use for the global modifiers array
* above */
assert(mods->modifiers > 0);
assert(mods->modifiers <= 7);
assert(mods->modifiers % 2 == 1); /* because we fail odd ones */
assert(mods->status != Success);
assert(mods->pad0 == 0);
assert(mods->pad1 == 0);
}
reply_handler = reply_XIPassiveGrabDevice;
}
static void request_XIPassiveGrabDevice(ClientPtr client, xXIPassiveGrabDeviceReq* req, int error, int errval)
{
int rc;
int modifiers;
rc = ProcXIPassiveGrabDevice(&client_request);
assert(rc == error);
if (rc != Success)
assert(client_request.errorValue == errval);
client_request.swapped = TRUE;
swaps(&req->length);
swapl(&req->time);
swapl(&req->grab_window);
swapl(&req->cursor);
swapl(&req->detail);
swaps(&req->deviceid);
modifiers = req->num_modifiers;
swaps(&req->num_modifiers);
swaps(&req->mask_len);
while(modifiers--)
{
CARD32 *mod = ((CARD32*)(req + 1)) + modifiers;
swapl(mod);
}
rc = SProcXIPassiveGrabDevice(&client_request);
assert(rc == error);
if (rc != Success)
assert(client_request.errorValue == errval);
}
static unsigned char *data[4096]; /* the request buffer */
static void test_XIPassiveGrabDevice(void)
{
int i;
xXIPassiveGrabDeviceReq *request = (xXIPassiveGrabDeviceReq*)data;
unsigned char *mask;
request_init(request, XIPassiveGrabDevice);
request->grab_window = CLIENT_WINDOW_ID;
reply_handler = reply_XIPassiveGrabDevice;
client_request = init_client(request->length, request);
printf("Testing invalid device\n");
request->deviceid = 12;
request_XIPassiveGrabDevice(&client_request, request, BadDevice, request->deviceid);
request->deviceid = XIAllMasterDevices;
printf("Testing invalid grab types\n");
for (i = XIGrabtypeFocusIn + 1; i < 0xFF; i++)
{
request->grab_type = i;
request_XIPassiveGrabDevice(&client_request, request, BadValue, request->grab_type);
}
printf("Testing invalid grab type + detail combinations\n");
request->grab_type = XIGrabtypeEnter;
request->detail = 1;
request_XIPassiveGrabDevice(&client_request, request, BadValue, request->detail);
request->grab_type = XIGrabtypeFocusIn;
request_XIPassiveGrabDevice(&client_request, request, BadValue, request->detail);
request->detail = 0;
printf("Testing invalid masks\n");
mask = (unsigned char*)&request[1];
request->mask_len = bytes_to_int32(XI2LASTEVENT + 1);
request->length += request->mask_len;
SetBit(mask, XI2LASTEVENT + 1);
request_XIPassiveGrabDevice(&client_request, request, BadValue, XI2LASTEVENT + 1);
ClearBit(mask, XI2LASTEVENT + 1);
/* tested all special cases now, test a few valid cases */
/* no modifiers */
request->deviceid = XIAllDevices;
request->grab_type = XIGrabtypeButton;
//.........这里部分代码省略.........
示例2: request_XIQueryDevice
static void request_XIQueryDevice(struct test_data *querydata,
int deviceid, int error)
{
int rc;
ClientRec client;
xXIQueryDeviceReq request;
request_init(&request, XIQueryDevice);
client = init_client(request.length, &request);
reply_handler = reply_XIQueryDevice;
querydata->which_device = deviceid;
request.deviceid = deviceid;
rc = ProcXIQueryDevice(&client);
assert(rc == error);
if (rc != Success)
assert(client.errorValue == deviceid);
reply_handler = reply_XIQueryDevice;
client.swapped = TRUE;
swaps(&request.length);
swaps(&request.deviceid);
rc = SProcXIQueryDevice(&client);
assert(rc == error);
if (rc != Success)
assert(client.errorValue == deviceid);
}
示例3: check
static int check(char *name, int fd) {
struct request_info request;
request_init(&request, RQ_DAEMON, name, RQ_FILE, fd, 0);
fromhost(&request);
return hosts_access(&request);
}
示例4: socket_tcpwrap
bool socket_tcpwrap(int fd, const char *name) {
#ifdef HAVE_LIBWRAP
struct request_info req;
union {
struct sockaddr sa;
struct sockaddr_in in;
struct sockaddr_in6 in6;
struct sockaddr_un un;
struct sockaddr_storage storage;
} sa_union;
socklen_t l = sizeof(sa_union);
if (getsockname(fd, &sa_union.sa, &l) < 0)
return true;
if (sa_union.sa.sa_family != AF_INET &&
sa_union.sa.sa_family != AF_INET6)
return true;
request_init(&req,
RQ_DAEMON, name,
RQ_FILE, fd,
NULL);
fromhost(&req);
if (!hosts_access(&req)) {
log_warning("Connection refused by tcpwrap.");
return false;
}
log_debug("Connection accepted by tcpwrap.");
#endif
return true;
}
示例5: http_accept_request_socket
void
http_accept_request_socket(http_conf_t * conf, int fd) {
int confd ;
struct sockaddr addr;
struct sockaddr_in addrIn;
socklen_t addLen = sizeof(struct sockaddr );
while( (confd = accept(fd, &addr, &addLen)) && confd > 0) {
pool_t *p = (pool_t *)pool_create();
http_connect_t * con;
epoll_extra_data_t *data_ptr;
addrIn = *((struct sockaddr_in *) &addr);
data_ptr = (epoll_extra_data_t *)palloc(p, sizeof(epoll_extra_data_t));
con = (http_connect_t *) palloc(p, sizeof(http_connect_t));//换成初始化函数,
con->p= p;
con->fd = confd;
con->in = (request *)request_init(p);
con->out = (response *)response_init(p);
/*char *ip = NULL;
if(addrIn.sin_addr.s_addr) {
ip = inet_ntoa(addrIn.sin_addr);
}
if(ip) {
//con->in->clientIp = (string *) string_init_from_str(p, ip, strlen(ip));
}*/
con->next_handle = accept_handler;
data_ptr->type = SOCKFD;
data_ptr->ptr = (void *) con;
epoll_add_fd(conf->epfd, confd, EPOLL_R, (void *)data_ptr);//对epoll data结构指向的结构体重新封装,分websit
//data struct , connect data struct , file data struct ,
}
}
示例6: request_init
//=================================================================================================
void eve::dx11::structured_buffer::init(void)
{
// Call parent class.
eve::dx11::object::init();
request_init();
}
示例7: elm_main
EAPI_MAIN int
elm_main(int argc, char **argv) {
Evas_Object *win = NULL;
Evas_Object *dayselector = NULL;
win = elm_win_add(NULL, "dayselector sample", ELM_WIN_BASIC);
elm_win_title_set(win, "dayselector sample");
elm_win_autodel_set(win, EINA_TRUE);
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
dayselector = elm_dayselector_add(win);
elm_object_text_set(dayselector, "DaySelector!");
request_init();
evas_object_smart_callback_add(win, "focus,in", _register_cb, dayselector);
register_request_listener(EVENT_RESIZE, resize, dayselector);
register_request_listener(EVENT_SET_DISABLED, set_disabled, dayselector);
register_request_listener(EVENT_SET_ENABLED, set_enabled, dayselector);
register_request_listener(EVENT_HIDE, hide, dayselector);
register_request_listener(EVENT_SHOW, show, dayselector);
evas_object_resize(win, 380, 80);
evas_object_resize(dayselector, 120, 40);
evas_object_move(dayselector, 30, 15);
evas_object_show(win);
evas_object_show(dayselector);
elm_run();
request_shutdown();
elm_shutdown();
return 0;
}
示例8: test_XIQueryDevice
static void test_XIQueryDevice(void)
{
int i;
xXIQueryDeviceReq request;
struct test_data data;
reply_handler = reply_XIQueryDevice;
userdata = &data;
request_init(&request, XIQueryDevice);
printf("Testing XIAllDevices.\n");
request_XIQueryDevice(&data, XIAllDevices, Success);
printf("Testing XIAllMasterDevices.\n");
request_XIQueryDevice(&data, XIAllMasterDevices, Success);
printf("Testing existing device ids.\n");
for (i = 2; i < 6; i++)
request_XIQueryDevice(&data, i, Success);
printf("Testing non-existing device ids.\n");
for (i = 6; i <= 0xFFFF; i++)
request_XIQueryDevice(&data, i, BadDevice);
reply_handler = NULL;
}
示例9: afsocket_sd_process_connection
static gboolean
afsocket_sd_process_connection(AFSocketSourceDriver *self, GSockAddr *client_addr, GSockAddr *local_addr, gint fd)
{
gchar buf[MAX_SOCKADDR_STRING], buf2[MAX_SOCKADDR_STRING];
#if SYSLOG_NG_ENABLE_TCP_WRAPPER
if (client_addr && (client_addr->sa.sa_family == AF_INET
#if SYSLOG_NG_ENABLE_IPV6
|| client_addr->sa.sa_family == AF_INET6
#endif
))
{
struct request_info req;
request_init(&req, RQ_DAEMON, "syslog-ng", RQ_FILE, fd, 0);
fromhost(&req);
if (hosts_access(&req) == 0)
{
msg_error("Syslog connection rejected by tcpd",
evt_tag_str("client", g_sockaddr_format(client_addr, buf, sizeof(buf), GSA_FULL)),
evt_tag_str("local", g_sockaddr_format(local_addr, buf2, sizeof(buf2), GSA_FULL)),
NULL);
return FALSE;
}
}
#endif
if (self->num_connections >= self->max_connections)
{
msg_error("Number of allowed concurrent connections reached, rejecting connection",
evt_tag_str("client", g_sockaddr_format(client_addr, buf, sizeof(buf), GSA_FULL)),
evt_tag_str("local", g_sockaddr_format(local_addr, buf2, sizeof(buf2), GSA_FULL)),
evt_tag_int("max", self->max_connections),
NULL);
return FALSE;
}
else
{
AFSocketSourceConnection *conn;
conn = afsocket_sc_new(client_addr, fd, self->super.super.super.cfg);
afsocket_sc_set_owner(conn, self);
if (log_pipe_init(&conn->super))
{
afsocket_sd_add_connection(self, conn);
self->num_connections++;
log_pipe_append(&conn->super, &self->super.super.super);
}
else
{
log_pipe_unref(&conn->super);
return FALSE;
}
}
return TRUE;
}
示例10: cs_parse_request
cs_request_t cs_parse_request(char *buf)
{
cs_request_t req;
request_init(&req);
if (buf == NULL) {
E("parameter error.");
return req;
}
char *buf_copy = strdup(buf);
if (buf_copy == NULL) {
E("strncup() failed.");
return req;
}
char *str = buf_copy;
char *token = NULL;
char *saveptr = NULL;
int i = 0;
while (1) {
token = strtok_r(str, ":", &saveptr);
if (token == NULL)
break;
switch (i) {
case 0:
req.req_type = atoi(token);
break;
case 1:
req.name = strdup(token);
break;
case 2:
req.passwd = strdup(token);
break;
case 3:
req.buddy_name = strdup(token);
break;
case 4:
req.content = strdup(token);
break;
case 5:
req.datetime = strdup(token);
break;
default:
DD(i);
break;
}
str = NULL;
i++;
}
//request_dump(&req);
cs_free(&buf_copy);
return req;
}
示例11: do_server_request
static void
do_server_request(struct server *sv, int connfd)
{
int ret;
struct request *rq;
struct file_data *data;
data = file_data_init();
rq = request_init(connfd, data);
if (!rq) {
file_data_free(data);
return;
}
if(cache_active ==1){
pthread_mutex_lock( &conditionMutex);
struct hash_node *cache_stored;
cache_stored= cache_lookup(data->file_name);
if(cache_stored!=NULL){ // check if it populated in the cache{
data->file_buf = Malloc(cache_stored->data->file_size);
strncpy(data->file_buf, cache_stored->data->file_buf, cache_stored->data->file_size);
data->file_size =cache_stored->data->file_size;
}
else{
/* reads file,
* fills data->file_buf with the file contents,
* data->file_size with file size. */
pthread_mutex_unlock( &conditionMutex );
ret = request_readfile(rq);
pthread_mutex_lock( &conditionMutex );
// need to renew the cache
if(data->file_size<max_cache){
if(data->file_size <=(max_cache-cache_current_size) ){
cache_insert(data);
}
else{
cache_evict(data->file_size);
cache_insert(data);
}
}
}
pthread_mutex_unlock( &conditionMutex );
}
else{
ret = request_readfile(rq);
if (!ret)
goto out;
}
/* sends file to client */
request_sendfile(rq);
out:
request_destroy(rq);
file_data_free(data);
}
示例12: check_access
int
check_access(SVCXPRT *xprt, rpcproc_t proc, rpcprog_t prog, unsigned int rpcbvers)
{
struct netbuf *caller = svc_getrpccaller(xprt);
struct sockaddr *addr = (struct sockaddr *)caller->buf;
#ifdef LIBWRAP
struct request_info req;
#endif
/*
* The older PMAP_* equivalents have the same numbers, so
* they are accounted for here as well.
*/
switch (proc) {
case RPCBPROC_SET:
case RPCBPROC_UNSET:
if (!insecure && !is_loopback(caller)) {
#ifdef RPCBIND_DEBUG
if (debugging)
fprintf(stderr, " declined (non-loopback sender) \n");
#endif
if (verboselog)
logit(log_severity, addr, proc, prog,
" declined (non-loopback sender)");
return 0;
}
break;
case RPCBPROC_GETADDR:
case RPCBPROC_CALLIT:
case RPCBPROC_INDIRECT:
case RPCBPROC_DUMP:
case RPCBPROC_GETTIME:
case RPCBPROC_UADDR2TADDR:
case RPCBPROC_TADDR2UADDR:
case RPCBPROC_GETVERSADDR:
case RPCBPROC_GETADDRLIST:
case RPCBPROC_GETSTAT:
default:
break;
}
#ifdef LIBWRAP
if (addr->sa_family == AF_LOCAL)
return 1;
request_init(&req, RQ_DAEMON, "rpcbind", RQ_CLIENT_SIN, addr, 0);
sock_methods(&req);
if(!hosts_access(&req)) {
logit(deny_severity, addr, proc, prog, ": request from unauthorized host");
return 0;
}
#endif
if (verboselog)
logit(log_severity, addr, proc, prog, "");
return 1;
}
示例13: test_XIQueryPointer
static void test_XIQueryPointer(void)
{
int i;
xXIQueryPointerReq request;
memset(&request, 0, sizeof(request));
request_init(&request, XIQueryPointer);
reply_handler = reply_XIQueryPointer;
client_request = init_client(request.length, &request);
request.deviceid = XIAllDevices;
request_XIQueryPointer(&client_request, &request, BadDevice);
request.deviceid = XIAllMasterDevices;
request_XIQueryPointer(&client_request, &request, BadDevice);
request.win = root.drawable.id;
test_data.win = &root;
test_data.dev = devices.vcp;
request.deviceid = devices.vcp->id;
request_XIQueryPointer(&client_request, &request, Success);
request.deviceid = devices.vck->id;
request_XIQueryPointer(&client_request, &request, BadDevice);
request.deviceid = devices.mouse->id;
request_XIQueryPointer(&client_request, &request, BadDevice);
request.deviceid = devices.kbd->id;
request_XIQueryPointer(&client_request, &request, BadDevice);
test_data.dev = devices.mouse;
devices.mouse->u.master = NULL; /* Float, kind-of */
request.deviceid = devices.mouse->id;
request_XIQueryPointer(&client_request, &request, Success);
for (i = devices.kbd->id + 1; i <= 0xFFFF; i++)
{
request.deviceid = i;
request_XIQueryPointer(&client_request, &request, BadDevice);
}
request.win = window.drawable.id;
test_data.dev = devices.vcp;
test_data.win = &window;
request.deviceid = devices.vcp->id;
request_XIQueryPointer(&client_request, &request, Success);
test_data.dev = devices.mouse;
request.deviceid = devices.mouse->id;
request_XIQueryPointer(&client_request, &request, Success);
}
示例14: peer_ok
int peer_ok(char *prog, int sd)
{
struct request_info request;
request_init(&request, RQ_DAEMON, prog, RQ_FILE, sd, 0);
fromhost(&request);
if (!hosts_access(&request))
return 0;
else
return 1;
}
示例15: callback
static void callback(pa_mainloop_api *mainloop, pa_io_event *e, int fd, pa_io_event_flags_t f, void *userdata) {
pa_socket_server *s = userdata;
pa_iochannel *io;
int nfd;
pa_assert(s);
pa_assert(PA_REFCNT_VALUE(s) >= 1);
pa_assert(s->mainloop == mainloop);
pa_assert(s->io_event == e);
pa_assert(e);
pa_assert(fd >= 0);
pa_assert(fd == s->fd);
pa_socket_server_ref(s);
if ((nfd = pa_accept_cloexec(fd, NULL, NULL)) < 0) {
pa_log("accept(): %s", pa_cstrerror(errno));
goto finish;
}
if (!s->on_connection) {
pa_close(nfd);
goto finish;
}
#ifdef HAVE_LIBWRAP
if (s->tcpwrap_service) {
struct request_info req;
request_init(&req, RQ_DAEMON, s->tcpwrap_service, RQ_FILE, nfd, NULL);
fromhost(&req);
if (!hosts_access(&req)) {
pa_log_warn("TCP connection refused by tcpwrap.");
pa_close(nfd);
goto finish;
}
pa_log_info("TCP connection accepted by tcpwrap.");
}
#endif
/* There should be a check for socket type here */
if (s->type == SOCKET_SERVER_IPV4)
pa_make_tcp_socket_low_delay(fd);
else
pa_make_socket_low_delay(fd);
pa_assert_se(io = pa_iochannel_new(s->mainloop, nfd, nfd));
s->on_connection(s, io, s->userdata);
finish:
pa_socket_server_unref(s);
}