当前位置: 首页>>代码示例>>C++>>正文


C++ chat函数代码示例

本文整理汇总了C++中chat函数的典型用法代码示例。如果您正苦于以下问题:C++ chat函数的具体用法?C++ chat怎么用?C++ chat使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了chat函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: ropen

static void
ropen(Req *r)
{
	Xfile *f;

	chat("open(fid=%d,mode=%d)...", thdr.fid, thdr.mode);

	errno = 0;
	f = xfile(r->fid, Asis);
	if( !f ){
		errno = Eio;
		goto error;
	}
	
	if(thdr.mode & OTRUNC){
		if( !S_ISREG(getmode(f)) ){
			errno = Eperm;
			goto error;
		}
		if(truncfile(f) < 0){
			goto error;
		}
	}
	chat("f->qid=0x%8.8lux...", r->fid->qid.path);
	rhdr.qid = r->fid->qid;
error:
	response(r);
}
开发者ID:99years,项目名称:plan9,代码行数:28,代码来源:ext2fs.c

示例2: rwrite

static void
rwrite(Req *r)
{
	Xfile *f; int nr;
	
	chat("write(fid=%d,offset=%lld,count=%d)...",
		thdr.fid, thdr.offset, thdr.count);

	errno = 0;
	if (!(f=xfile(r->fid, Asis)) ){
		errno = Eio;
		goto error;
	}
	if( !S_ISREG(getmode(f)) ){
		errno = Elink;
		goto error;
	}
	nr = writefile(f, thdr.data, thdr.offset, thdr.count);
	if(nr >= 0){	
		rhdr.count = nr;
		chat("rcnt=%d...OK\n", nr);
		respond(r, nil);
		return;
	}
	errno = Eio;
error:
	response(r);
}
开发者ID:99years,项目名称:plan9,代码行数:28,代码来源:ext2fs.c

示例3: QModemService

NeoModemService::NeoModemService
    (const QString & service, QSerialIODeviceMultiplexer * mux,
     QObject * parent)
:  QModemService(service, mux, parent)
    , inputEvent("/dev/input/incoming")
    , inputNotifier(0)
{
    qDebug() << "Gta04ModemService::constructor";

    // Turn on dynamic signal quality notifications.
    // Register for "_OSIGQ" notifications to get signal quality updates.
    primaryAtChat()->registerNotificationType
        ("_OSIGQ:", this, SLOT(sigq(QString)));

    chat("AT+CSCS=\"GSM\"");    // GSM encoding
    chat("AT_OSQI=1");          // unsolicited reporting of antenna signal strength, e.g. "_OSIGQ: 3,0"
    chat("AT_OPCMENABLE=1");    // enable the PCM interface for voice calls
    chat("AT_OPSYS=0,2");       // disable UMTS, use only GSM

    // Modem input device - reports keys when modem generates interrupt (e.g.
    // on incoming call or sms).
    if(inputEvent.open(QIODevice::ReadOnly)) {
        inputNotifier = new QSocketNotifier(inputEvent.handle(), QSocketNotifier::Read, this);
        connect(inputNotifier, SIGNAL(activated(int)), this, SLOT(handleInputEvent()));
    }
开发者ID:RobertZenz,项目名称:qtmoko,代码行数:25,代码来源:vendor_neo.cpp

示例4: pc1auth

static int
pc1auth(int n, Rpccall *cmd, Rpccall *reply)
{
	uchar *argptr = cmd->args;
	uchar *dataptr = reply->results;
	String id, pw;
	Unixidmap *m;
	int uid;

	chat("host=%I, port=%ld: pcauth...",
		cmd->host, cmd->port);
	if(n <= 8)
		return garbage(reply, "count too small");
	argptr += string2S(argptr, &id);
	argptr += string2S(argptr, &pw);
	if(argptr != &((uchar*)cmd->args)[n])
		return garbage(reply, "bad count");
	scramble(&id);
	scramble(&pw);
	m = pair2idmap("pcnfsd", cmd->host);
	uid = -1;
	if(m)
		uid = name2id(&m->u.ids, id.s);
	if(uid < 0)
		uid = 1;
	chat("\"%.*s\",\"%.*s\" uid=%d\n", utfnlen(id.s, id.n), id.s, utfnlen(pw.s, pw.n), pw.s, uid);
	PLONG(0);	/* status */
	PLONG(uid);	/* uid */
	PLONG(uid);	/* gid */
	return dataptr - (uchar*)reply->results;
}
开发者ID:99years,项目名称:plan9,代码行数:31,代码来源:pcnfsd.c

示例5: rread

static void
rread(Req *r)
{
	Xfile *f; 
	int nr;

	chat("read(fid=%d,offset=%lld,count=%d)...",
		thdr.fid, thdr.offset, thdr.count);
	errno = 0;
	if ( !(f=xfile(r->fid, Asis)) )
		goto error;
	if( r->fid->qid.type & QTDIR ){
		nr = readdir(f, r->rbuf, thdr.offset, thdr.count);
	}else
		nr = readfile(f, r->rbuf, thdr.offset, thdr.count);
	
	if(nr >= 0){
		rhdr.count = nr;
		chat("rcnt=%d...OK\n", nr);
		respond(r, nil);
		return;
	}
error:
	errno = Eio;
	response(r);
}
开发者ID:99years,项目名称:plan9,代码行数:26,代码来源:ext2fs.c

示例6: main

int     main(int argc, char **argv)
{
    struct sockaddr_in sin;
    struct hostent *hp;
    char    buf[BUFSIZ];
    int     sock;
    FILE   *fp;

    if (argc != 2)
        fatal("usage: %s host", argv[0]);
    if ((hp = gethostbyname(argv[1])) == 0)
        fatal("host %s not found", argv[1]);
    memset((char *) &sin, 0, sizeof(sin));
    sin.sin_family = AF_INET;
    memcpy((char *) &sin.sin_addr, hp->h_addr, sizeof(sin.sin_addr));
    sin.sin_port = htons(25);
    if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
        fatal("socket: %s", strerror(errno));
    if (connect(sock, (struct sockaddr *) & sin, sizeof(sin)) < 0)
        fatal("connect to %s: %s", argv[1], strerror(errno));
    if ((fp = fdopen(sock, "r+")) == 0)
        fatal("fdopen: %s", strerror(errno));
    if (fgets(buf, sizeof(buf), fp) == 0)
        fatal("connection lost");
    chat(fp, "mail from:<[email protected]>", fp);
    for (;;)
        chat(fp, "rcpt to:<[email protected]%s>", argv[1]);
}
开发者ID:offensive-security,项目名称:exploit-database,代码行数:28,代码来源:20562.c

示例7: nfsstatfs

static int
nfsstatfs(int n, Rpccall *cmd, Rpccall *reply)
{
	uchar *dataptr = reply->results;
	enum {
		Xfersize = 2048,
		Maxlong = (long)((1ULL<<31) - 1),
		Maxfreeblks = Maxlong / Xfersize,
	};

	chat("statfs...");
	showauth(&cmd->cred);
	if(n != FHSIZE)
		return garbage(reply, "bad count");
	PLONG(NFS_OK);
	PLONG(4096);		/* tsize (fs block size) */
	PLONG(Xfersize);	/* bsize (optimal transfer size) */
	PLONG(Maxfreeblks);	/* blocks in fs */
	PLONG(Maxfreeblks);	/* bfree to root*/
	PLONG(Maxfreeblks);	/* bavail (free to mortals) */
	chat("OK\n");
	/*conftime = 0;
	readunixidmaps(config);*/
	return dataptr - (uchar *)reply->results;
}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:25,代码来源:nfsserver.c

示例8: pcinfo

static int
pcinfo(int n, Rpccall *cmd, Rpccall *reply)
{
	uchar *argptr = cmd->args;
	uchar *dataptr = reply->results;
	String vers, cm;
	int i;

	chat("host=%I, port=%ld: pcinfo...",
		cmd->host, cmd->port);
	if(n <= 16)
		return garbage(reply, "count too small");
	argptr += string2S(argptr, &vers);
	argptr += string2S(argptr, &cm);
	if(argptr != &((uchar *)cmd->args)[n])
		return garbage(reply, "bad count");
	chat("\"%.*s\",\"%.*s\"\n", utfnlen(vers.s, vers.n), vers.s, utfnlen(cm.s, cm.n), cm.s);
	PLONG(sizeof(pc_vers)-1);
	PPTR(pc_vers, sizeof(pc_vers)-1);
	PLONG(sizeof(no_comment)-1);
	PPTR(no_comment, sizeof(no_comment)-1);
	PLONG(nelem(pcfacilities));
	for(i=0; i<nelem(pcfacilities); i++)
		PLONG(pcfacilities[i]);
	return dataptr - (uchar *)reply->results;
}
开发者ID:99years,项目名称:plan9,代码行数:26,代码来源:pcnfsd.c

示例9: nfsnull

static int
nfsnull(int n, Rpccall *cmd, Rpccall *reply)
{
	USED(n, reply);
	chat("nfsnull...");
	showauth(&cmd->cred);
	chat("OK\n");
	return 0;
}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:9,代码来源:nfsserver.c

示例10: diag_ok

/*
 * diag_ok:
 *	Check to see if the move is legal if it is diagonal
 */
int
diag_ok(const coord *sp, const coord *ep)
{
    if (ep->x < 0 || ep->x >= NUMCOLS || ep->y <= 0 || ep->y >= NUMLINES - 1)
	return FALSE;
    if (ep->x == sp->x || ep->y == sp->y)
	return TRUE;
    return (step_ok(chat(ep->y, sp->x)) && step_ok(chat(sp->y, ep->x)));
}
开发者ID:kioy,项目名称:TA-Demo2,代码行数:13,代码来源:chase.c

示例11: creat

static int
creat(int n, Rpccall *cmd, Rpccall *reply, int chdir)
{
	Xfid *xf, *newxf;
	Xfile *xp;
	String elem;
	Dir dir; Sattr sattr;
	uchar *argptr = cmd->args;
	uchar *dataptr = reply->results;
	int trunced;

	if(n <= FHSIZE)
		return garbage(reply, "count too small");
	xf = rpc2xfid(cmd, 0);
	argptr += FHSIZE;
	argptr += string2S(argptr, &elem);
	argptr += convM2sattr(argptr, &sattr);
	if(argptr != &((uchar *)cmd->args)[n])
		return garbage(reply, "bad count");
	if(xf == 0)
		return error(reply, NFSERR_STALE);
	xp = xf->xp;
	if(!(xp->qid.type & QTDIR))
		return error(reply, NFSERR_NOTDIR);
	chat("%s/%.*s...", xp->name, utfnlen(elem.s, elem.n), elem.s);
	trunced = 0;
	if(xp->parent == xp && elem.s[0] == '#'){
		newxf = xfauth(xp, &elem);
		if(newxf == 0)
			return error(reply, NFSERR_PERM);
		if(xfauthremove(newxf, cmd->user) < 0)
			return error(reply, NFSERR_PERM);
		trunced = 1;
	}else
		newxf = xfwalkcr(Twalk, xf, &elem, 0);
	if(newxf == 0){
		newxf = xfwalkcr(Tcreate, xf, &elem, chdir|(sattr.mode&0777));
		if(newxf)
			trunced = 1;
		else
			newxf = xfwalkcr(Twalk, xf, &elem, 0);
	}
	if(newxf == 0)
		return error(reply, NFSERR_PERM);
	if(!trunced && chdir)
		return error(reply, NFSERR_EXIST);
	if(!trunced && xfopen(newxf, Trunc|Oread|Owrite) < 0)
		return error(reply, NFSERR_PERM);
	if(xfstat(newxf, &dir) < 0)
		return error(reply, NFSERR_IO);

	PLONG(NFS_OK);
	dataptr += xp2fhandle(newxf->xp, dataptr);
	dataptr += dir2fattr(cmd->up, &dir, dataptr);
	chat("OK\n");
	return dataptr - (uchar *)reply->results;
}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:57,代码来源:nfsserver.c

示例12: nfswritecache

static int
nfswritecache(int n, Rpccall *cmd, Rpccall *reply)
{
	USED(n, reply);
	chat("writecache...");
	showauth(&cmd->cred);
	chat("OK\n");
	return 0;
}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:9,代码来源:nfsserver.c

示例13: rcreate

static void
rcreate(Req *r)
{
	Xfile *f;
	int inr, perm;

	chat("create(fid=%d,name=\"%s\",perm=%uo,mode=%d)...",
		thdr.fid, thdr.name, thdr.perm, thdr.mode);

	errno = 0;
	if(strcmp(thdr.name, ".") == 0 || strcmp(thdr.name, "..") == 0){
		errno = Eperm;
		goto error;
	}
	f = xfile(r->fid, Asis);
	if( !f ){
		errno = Eio;
		goto error;
	}
	if( strlen(thdr.name) > EXT2_NAME_LEN ){
		chat("name too long ...");
		errno = Elongname;
		goto error;
	}

	/* create */
	errno = 0;
	if( thdr.perm & DMDIR ){
		perm = (thdr.perm & ~0777) | 
				(getmode(f) & thdr.perm & 0777);
		perm |= S_IFDIR;
		inr = create_dir(f, thdr.name, perm);
	}else{
		perm = (thdr.perm & (~0777|0111)) |
				(getmode(f) & thdr.perm & 0666);
		perm |= S_IFREG;
		inr = create_file(f, thdr.name, perm);
		
	}
	if( inr < 0 )
		goto error;

	/* fill with new inode */
	f->pinbr = f->inbr;
	if( get_inode(f, inr) < 0 ){
		errno = Eio;
		goto error;
	}
	r->fid->qid = (Qid){inr, 0, 0};
	if( S_ISDIR(getmode(f)) )
		r->fid->qid.type |= QTDIR;
	chat("f->qid=0x%8.8lux...", r->fid->qid.path);
	rhdr.qid = r->fid->qid;
error:
	response(r);
}
开发者ID:99years,项目名称:plan9,代码行数:56,代码来源:ext2fs.c

示例14: getclust

/*
 *  get an io block from an io buffer
 */
Clustbuf*
getclust(Dos *dos, long sector)
{
	Bootfs *fs;
	Clustbuf *p, *oldest;
	int size;

	chat("getclust @ %ld\n", sector);

	/*
	 *  if we have it, just return it
	 */
	for(p = bio; p < &bio[Nbio]; p++){
		if(sector == p->sector && dos == p->dos){
			p->age = m->ticks;
			chat("getclust %ld in cache\n", sector);
			return p;
		}
	}

	/*
	 *  otherwise, reuse the oldest entry
	 */
	oldest = bio;
	for(p = &bio[1]; p < &bio[Nbio]; p++){
		if(p->age <= oldest->age)
			oldest = p;
	}
	p = oldest;

	/*
	 *  make sure the buffer is big enough
	 */
	size = dos->clustsize*dos->sectsize;
	if(p->iobuf==0 || p->size < size)
		p->iobuf = smalloc(size);
	p->size = size;

	/*
	 *  read in the cluster
	 */
	fs = (Bootfs*)dos;		/* assume dos is embedded at start of an Bootfs */
	chat("getclust addr %llud %p %s\n", ((sector+dos->start)*(vlong)dos->sectsize),
		fs, fs->disk);
	fs->devch->offset = (sector+dos->start) * (vlong)dos->sectsize;
	if(myreadn(fs->devch, p->iobuf, size) != size){
		chat("can't read block\n");
		return 0;
	}
	USED(fs);
	p->age = m->ticks;
	p->dos = dos;
	p->sector = sector;
	chat("getclust %ld read\n", sector);
	return p;
}
开发者ID:carriercomm,项目名称:plan9-gpl,代码行数:59,代码来源:dosboot.c

示例15: ppp_reconnect

void ppp_reconnect(struct ppp_context_s *ctx)
{
  int ret;
  int retry = PPP_MAX_CONNECT;
  struct pppd_settings_s *pppd_settings = ctx->settings;
  netlib_ifdown((char*)ctx->ifname);

  lcp_disconnect(ctx, ++ctx->ppp_id);
  sleep(1);
  lcp_disconnect(ctx, ++ctx->ppp_id);
  sleep(1);
  write(ctx->ctl.fd, "+++", 3);
  sleep(2);
  write(ctx->ctl.fd, "ATE1\r\n", 6);

  if (pppd_settings->disconnect_script)
    {
      ret = chat(&ctx->ctl, pppd_settings->disconnect_script);
      if (ret < 0)
        {
          printf("ppp: disconnect script failed\n");
        }
    }

  if (pppd_settings->connect_script)
    {
      do
        {
          ret = chat(&ctx->ctl, pppd_settings->connect_script);
          if (ret < 0)
            {
              printf("ppp: connect script failed\n");
              --retry;
              if (retry == 0)
                {
                  retry = PPP_MAX_CONNECT;
#ifdef PPP_ARCH_HAVE_MODEM_RESET
                  ppp_arch_modem_reset(pppd_settings->ttyname);
#endif
                  sleep(45);
                }
              else
                {
                  sleep(10);
                }
            }
        }
      while (ret != 0);
    }

  ppp_init(ctx);
  ppp_connect(ctx);

  ctx->ip_len = 0;
}
开发者ID:acassis,项目名称:ros2_nuttx,代码行数:55,代码来源:pppd.c


注:本文中的chat函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。