本文整理汇总了C++中buffer_flush函数的典型用法代码示例。如果您正苦于以下问题:C++ buffer_flush函数的具体用法?C++ buffer_flush怎么用?C++ buffer_flush使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了buffer_flush函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: web_client_api_old_graph_request
inline int web_client_api_old_graph_request(RRDHOST *host, struct web_client *w, char *url) {
// get the name of the data to show
char *tok = mystrsep(&url, "/?&");
if(tok && *tok) {
debug(D_WEB_CLIENT, "%llu: Searching for RRD data with name '%s'.", w->id, tok);
// do we have such a data set?
RRDSET *st = rrdset_find_byname(host, tok);
if(!st) st = rrdset_find(host, tok);
if(!st) {
// we don't have it
// try to send a file with that name
buffer_flush(w->response.data);
return mysendfile(w, tok);
}
st->last_accessed_time = now_realtime_sec();
debug(D_WEB_CLIENT_ACCESS, "%llu: Sending %s.json of RRD_STATS...", w->id, st->name);
w->response.data->contenttype = CT_APPLICATION_JSON;
buffer_flush(w->response.data);
rrd_graph2json_api_old(st, url, w->response.data);
return 200;
}
buffer_flush(w->response.data);
buffer_strcat(w->response.data, "Graph name?\r\n");
return 400;
}
开发者ID:cppmx,项目名称:netdata,代码行数:28,代码来源:web_api_old.c
示例2: ows_layer_storage_flush
void ows_layer_storage_flush(ows_layer_storage * storage, FILE * output)
{
assert(storage);
assert(output);
if (storage->schema) {
fprintf(output, "schema: ");
buffer_flush(storage->schema, output);
fprintf(output, "\n");
}
if (storage->table) {
fprintf(output, "table: ");
buffer_flush(storage->table, output);
fprintf(output, "\n");
}
if (storage->geom_columns) {
fprintf(output, "geom_columns: ");
list_flush(storage->geom_columns, output);
fprintf(output, "\n");
}
fprintf(output, "srid: %i\n", storage->srid);
fprintf(output, "is_degree: %i\n", storage->is_degree?1:0);
if (storage->pkey) {
fprintf(output, "pkey: ");
buffer_flush(storage->pkey, output);
fprintf(output, "\n");
}
fprintf(output, "pkey_column_number: %i\n", storage->pkey_column_number);
if (storage->pkey_sequence) {
fprintf(output, "pkey_sequence: ");
buffer_flush(storage->pkey_sequence, output);
fprintf(output, "\n");
}
if (storage->pkey_default) {
fprintf(output, "pkey_default: ");
buffer_flush(storage->pkey_default, output);
fprintf(output, "\n");
}
if (storage->attributes) {
fprintf(output, "attributes: ");
array_flush(storage->attributes, output);
fprintf(output, "\n");
}
if (storage->not_null_columns) {
fprintf(output, "not_null_columns: ");
list_flush(storage->not_null_columns, output);
fprintf(output, "\n");
}
}
开发者ID:joathan00,项目名称:gitted.ig3,代码行数:59,代码来源:ows_storage.c
示例3: sh_errorn
/* output error message
* ----------------------------------------------------------------------- */
int sh_errorn(const char *s, unsigned int len) {
sh_msg(NULL);
buffer_put(fd_err->w, s, len);
buffer_putm(fd_err->w, ": ", strerror(errno), "\n", NULL);
buffer_flush(fd_err->w);
return 1;
}
开发者ID:rsenn,项目名称:shish,代码行数:9,代码来源:sh_errorn.c
示例4: main
int main(int argc,char **argv)
{
char *name;
char *value;
unsigned char ch;
char octal[4];
name = argv[1];
if (!name) _exit(100);
value = argv[2];
if (!value) _exit(100);
puts("char ");
puts(name);
puts("[] = \"\\\n");
while ((ch = *value++)) {
puts("\\");
octal[3] = 0;
octal[2] = '0' + (ch & 7); ch >>= 3;
octal[1] = '0' + (ch & 7); ch >>= 3;
octal[0] = '0' + (ch & 7);
puts(octal);
}
puts("\\\n\";\n");
if (buffer_flush(&b) == -1) _exit(111);
_exit(0);
}
开发者ID:Safari77,项目名称:ucspi-tcp-safari,代码行数:29,代码来源:auto-str.c
示例5: flushread
int flushread(int fd,char *buf,int len)
{
int j;
for (j = 0;j < cnum;++j)
buffer_flush(&c[j].ss);
if (flagforcerotate) {
for (j = 0;j < cnum;++j)
if (c[j].bytes > 0)
fullcurrent(&c[j]);
flagforcerotate = 0;
}
if (!len) return 0;
if (flagexitasap) {
if (flagnewline) return 0;
len = 1;
}
sig_unblock(sig_term);
sig_unblock(sig_alarm);
len = read(fd,buf,len);
sig_block(sig_term);
sig_block(sig_alarm);
if (len <= 0) return len;
flagnewline = (buf[len - 1] == '\n');
return len;
}
开发者ID:schmurfy,项目名称:daemontools,代码行数:31,代码来源:multilog.c
示例6: main
int main(int argc,char **argv)
{
int i;
dns_random_init(seed);
if (*argv) ++argv;
while (*argv) {
if (!stralloc_copys(&fqdn,*argv))
strerr_die2x(111,FATAL,"out of memory");
if (dns_ip4(&out,&fqdn) == -1)
strerr_die4sys(111,FATAL,"unable to find IP address for ",*argv,": ");
for (i = 0; i + 4 <= out.len; i += 4) {
buffer_put(buffer_1,str,ip4_fmt(str,out.s + i));
buffer_puts(buffer_1," ");
}
buffer_puts(buffer_1,"\n");
++argv;
}
buffer_flush(buffer_1);
_exit(0);
}
开发者ID:kunishi,项目名称:qmail-hg,代码行数:26,代码来源:dnsip.c
示例7: _search_flush_and_process_buffer
static int
_search_flush_and_process_buffer(ReaderArgs *args)
{
int status = PROCESS_STATUS_OK;
assert(args != NULL);
assert(args->buffer != NULL);
args->count = 0;
if(args->cb && !buffer_is_empty(args->buffer))
{
status = _search_process_lines_from_buffer(args);
if(status == PROCESS_STATUS_OK && buffer_flush(args->buffer, &args->line, &args->llen))
{
if(_search_process_line(args) == PROCESS_STATUS_OK)
{
if(args->count < INT32_MAX)
{
++args->count;
}
}
}
}
return status;
}
开发者ID:20centaurifux,项目名称:efind,代码行数:28,代码来源:search.c
示例8: main
int main (int argc, char const *const *argv)
{
stralloc sa = STRALLOC_ZERO ;
int path = 0, nl = 1 ;
PROG = "s6-linkname" ;
{
subgetopt_t l = SUBGETOPT_ZERO ;
for (;;)
{
register int opt = subgetopt_r(argc, argv, "nf", &l) ;
if (opt == -1) break ;
switch(opt)
{
case 'n' : nl = 0 ; break ;
case 'f' : path = 1 ; break ;
default : dieusage() ;
}
}
argv += l.ind ; argc -= l.ind ;
}
if (!argc) dieusage() ;
if ((path ? sarealpath(&sa, *argv) : sareadlink(&sa, *argv)) == -1)
strerr_diefu2sys(111, "resolve ", *argv) ;
if ((buffer_putalign(buffer_1small, sa.s, sa.len) == -1)
|| (nl && (buffer_putalign(buffer_1small, "\n", 1)) == -1)
|| (buffer_flush(buffer_1small) == -1))
strerr_diefu1sys(111, "write to stdout") ;
/* stralloc_free(&sa) ; */
return 0 ;
}
开发者ID:rlonstein,项目名称:s6-portable-utils,代码行数:33,代码来源:s6-linkname.c
示例9: iobufferu_flush
int iobufferu_flush (iobufferu_ref b)
{
register int r = buffer_flush(&b->b[1]) ;
b->b[0].n = b->b[1].n ;
b->b[0].p = b->b[1].p ;
return r ;
}
开发者ID:Jubei-Mitsuyoshi,项目名称:aaa-skalibs,代码行数:7,代码来源:iobufferu_flush.c
示例10: sln
int
sln(const char* path) {
stralloc s, d;
char* to;
ssize_t i;
stralloc_init(&s);
stralloc_copys(&s, path);
stralloc_init(&d);
stralloc_copy(&d, &s);
while(reduce(&d)) {
buffer_puts(buffer_2, "'");
buffer_putsa(buffer_2, &d);
buffer_puts(buffer_2, "' -> '");
buffer_putsa(buffer_2, &s);
buffer_puts(buffer_2, "'\n");
buffer_flush(buffer_2);
stralloc_nul(&s);
stralloc_nul(&d);
if(mklink_sa(&s, &d) == -1) {
errmsg_warnsys("symlink failed", NULL);
exit(2);
}
stralloc_copy(&s, &d);
}
return 0;
}
开发者ID:rsenn,项目名称:dirlist,代码行数:32,代码来源:sln.c
示例11: main
int
main(int argc, char* argv[]) {
int fd;
static struct cdb c;
errmsg_iam("cdbget");
if(argc < 3)
die(1, "usage: cdbget data.cdb key");
fd = open(argv[1], O_RDONLY | O_BINARY);
if(fd == -1)
diesys(1, "open");
cdb_init(&c, fd);
if(cdb_find(&c, argv[2], str_len(argv[2])) > 0) {
do {
char* x = malloc(cdb_datalen(&c));
if(!x)
die(1, "out of memory");
if(cdb_read(&c, x, cdb_datalen(&c), cdb_datapos(&c)) == -1)
diesys(1, "cdb_read");
buffer_put(buffer_1, x, cdb_datalen(&c));
buffer_put(buffer_1, "\n", 1);
free(x);
} while(cdb_findnext(&c, argv[2], str_len(argv[2])) > 0);
}
buffer_flush(buffer_1);
}
开发者ID:rsenn,项目名称:dirlist,代码行数:25,代码来源:cdbget2.c
示例12: process_stop
/*
* stop
*/
void process_stop()
{
//flush buffer, close & free things
buffer_flush();
close(fd);
free(buffer);
}
开发者ID:marcoscunha,项目名称:reverse,代码行数:10,代码来源:hwetrace_write.c
示例13: doit
static int doit(stralloc *out,int s,char ipremote[16],uint16 portremote,char iplocal[16],uint16 portlocal,unsigned int timeout,uint32 netif)
{
buffer b;
char bspace[128];
char strnum[FMT_ULONG];
int numcolons;
char ch;
if (socket_bind6(s,iplocal,0,netif) == -1) return -1;
if (timeoutconn6(s,ipremote,113,timeout,netif) == -1) return -1;
buffer_init(&b,mywrite,s,bspace,sizeof bspace);
buffer_put(&b,strnum,fmt_ulong(strnum,portremote));
buffer_put(&b," , ",3);
buffer_put(&b,strnum,fmt_ulong(strnum,portlocal));
buffer_put(&b,"\r\n",2);
if (buffer_flush(&b) == -1) return -1;
buffer_init(&b,myread,s,bspace,sizeof bspace);
numcolons = 0;
for (;;) {
if (buffer_get(&b,&ch,1) != 1) return -1;
if ((ch == ' ') || (ch == '\t') || (ch == '\r')) continue;
if (ch == '\n') return 0;
if (numcolons < 3) {
if (ch == ':') ++numcolons;
}
else {
if (!stralloc_append(out,&ch)) return -1;
if (out->len > 256) return 0;
}
}
}
开发者ID:comotion,项目名称:ucspi-tcp,代码行数:33,代码来源:remoteinfo6.c
示例14: main
int
main (int argc, char *argv[])
{
int n = 0;
char *x = NULL;
dns_random_init (seed);
prog = strdup ((x = strrchr (argv[0], '/')) != NULL ? x + 1 : argv[0]);
n = check_option (argc, argv);
argv += n;
argc -= n;
while (*argv)
{
if (!ip4_scan (*argv, ip))
errx (-1, "could not parse IP address `%s'", *argv);
if (dns_name4 (&out, ip) == -1)
errx (-1, "could not find host name for `%s'", *argv);
buffer_put (buffer_1, out.s, out.len);
buffer_puts (buffer_1,"\n");
++argv;
}
buffer_flush (buffer_1);
return 0;
}
开发者ID:siddhesh,项目名称:djbdns,代码行数:28,代码来源:dnsname.c
示例15: count_depth
int count_depth() {
char buffer[MAXIMUM_PATH_LENGTH];
size_t len, i, c;
for(;;) {
buffer[0] = '\0';
len = buffer_getline(buffer_0, buffer, sizeof(buffer));
if(len == 0 || buffer[0] == '\0')
break;
if(buffer[len - 1 ] == '/')
len--;
c = 0;
for(i = 0; i < len; i++) {
if(buffer[i] == '/')
c++;
}
buffer_putulong(buffer_1, (unsigned long)c);
buffer_put(buffer_1, " ", 1);
buffer_put(buffer_1, buffer, len);
buffer_put(buffer_1, "\n", 1);
}
buffer_flush(buffer_1);
return 0;
}
开发者ID:rsenn,项目名称:dirlist,代码行数:26,代码来源:count-depth.c
示例16: buffer_putflush
int buffer_putflush (buffer *b, char const *s, unsigned int len)
{
int r = buffer_put(b, s, len) ;
if (r < 0) return -1 ;
if (!buffer_flush(b)) return -1 ;
return r ;
}
开发者ID:fvigotti,项目名称:skalibs,代码行数:7,代码来源:buffer_putflush.c
示例17: snap_dump
void snap_dump(char *filename, stralloc *sa)
{
dAVLCursor c;
dAVLNode *node;
char strip[IP6_FMT];
char strnum[FMT_ULONG];
int fd;
fd = open_trunc("filename");
if(fd == -1)
strerr_warn1(ARGV0 "warning: unable to open for tcp.tmp for writing", &strerr_sys);
buffer_init(&wb, write, fd, wbspace, sizeof wbspace);
node = dAVLFirst(&c, t);
while(node)
{
buffer_put(&wb, strnum, fmt_ulong(strnum, node->key));
buffer_puts(&wb, ",");
buffer_put(&wb, strip, ip4_fmt(strip, node->ip4));
buffer_puts(&wb, ",");
buffer_put(&wb, strip, ip6_fmt(strip, node->ip6));
buffer_puts(&wb, ",LOC\n");
node = dAVLNext(&c);
}
buffer_flush(&wb);
close(fd);
}
开发者ID:mdornseif,项目名称:ddns,代码行数:30,代码来源:ddns-cdbout.c
示例18: main
int main(int argc,char **argv)
{
int i;
char *x;
char *y;
unsigned int u;
uint32 ttl;
if (!cache_init(200)) _exit(111);
if (*argv) ++argv;
while (x = *argv++) {
i = str_chr(x,':');
if (x[i])
cache_set(x,i,x + i + 1,str_len(x) - i - 1,86400,0);
else {
y = cache_get(x,i,&u,&ttl,0);
if (y)
buffer_put(buffer_1,y,u);
buffer_puts(buffer_1,"\n");
}
}
buffer_flush(buffer_1);
_exit(0);
}
开发者ID:stribika,项目名称:curveprotect,代码行数:27,代码来源:cachetest.c
示例19: outputlines
static int outputlines (stralloc const *s, unsigned int len)
{
register unsigned int i = 0 ;
for (; i < len ; i++)
if (buffer_put(buffer_1, s[i].s, s[i].len) < 0) return 0 ;
return buffer_flush(buffer_1) ;
}
开发者ID:matya,项目名称:s6-portable-utils,代码行数:7,代码来源:s6-sort.c
示例20: carp
static void carp(const char* routine) {
buffer_flush(buffer_1);
buffer_puts(buffer_2,"httpbench: ");
buffer_puts(buffer_2,routine);
buffer_puts(buffer_2,": ");
buffer_puterror(buffer_2);
buffer_putnlflush(buffer_2);
}
开发者ID:scolytus,项目名称:gatling,代码行数:8,代码来源:httpbench.c
注:本文中的buffer_flush函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论