Lines Matching defs:q

134 static int	rcv_parse(queue_t *q, mblk_t *mp);
135 static int snd_parse(queue_t *q, mblk_t *mp);
208 telmodopen(queue_t *q, dev_t *devp, int oflag, int sflag, cred_t *credp)
218 if (q->q_ptr != NULL) {
230 q->q_ptr = tmip;
231 WR(q)->q_ptr = tmip;
233 noenable(q);
235 qprocson(q);
248 bufcall_id_t id = qbufcall(q, sizeof (union T_primitives),
250 if (!qwait_sig(q)) {
251 qunbufcall(q, id);
255 qunbufcall(q, id);
269 bufcall_id_t id = qbufcall(q, sizeof (union T_primitives),
271 if (!qwait_sig(q)) {
272 qunbufcall(q, id);
276 qunbufcall(q, id);
284 putnext(q, bp);
288 qprocsoff(q);
293 q->q_ptr = NULL;
294 WR(q)->q_ptr = NULL;
305 telmodclose(queue_t *q, int flag, cred_t *credp)
307 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
316 while (mp = getq(WR(q)))
317 putnext(WR(q), mp);
320 (void) putnextctl(q, M_HANGUP);
322 qprocsoff(q);
324 qunbufcall(q, tmip->wbufcid);
328 qunbufcall(q, tmip->rbufcid);
332 (void) quntimeout(q, tmip->wtimoutid);
336 (void) quntimeout(q, tmip->rtimoutid);
343 kmem_free(q->q_ptr, sizeof (struct telmod_info));
344 q->q_ptr = WR(q)->q_ptr = NULL;
356 telmodrput(queue_t *q, mblk_t *mp)
359 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
363 ((q->q_first) || ((tmip->flags & TEL_STOPPED) &&
364 !(tmip->flags & TEL_GETBLK)) || !canputnext(q))) {
365 (void) putq(q, mp);
380 recover(q, mp, msgdsize(mp));
388 noenable(q);
391 putnext(q, newmp);
403 (void) rcv_parse(q, mp);
414 flushq(q, FLUSHALL);
415 putnext(q, mp);
426 putnext(q, mp);
454 putnext(q, mp);
455 qreply(q, tmip->unbind_mp);
458 putnext(q, mp);
511 telmodrsrv(queue_t *q)
514 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
517 while ((mp = getq(q)) != NULL) {
519 !(tmip->flags & TEL_GETBLK)) || !canputnext(q)) {
520 (void) putbq(q, mp);
530 recover(q, mp, msgdsize(mp));
538 noenable(q);
541 putnext(q, newmp);
545 if (!rcv_parse(q, mp)) {
581 putnext(q, mp);
582 qreply(q, tmip->unbind_mp);
585 putnext(q, mp);
623 putnext(q, mp);
652 queue_t *q, /* Pointer to the read queue */
661 tmip = (struct telmod_info *)q->q_ptr;
665 if (!canputnext(q) || (tmip->flags & TEL_STOPPED) ||
666 (q->q_first)) {
667 noenable(q);
668 (void) putq(q, mp);
677 (void) snd_parse(q, mp);
687 putnext(q, mp);
700 miocnak(q, mp, 0, EINVAL);
704 qenable(RD(q));
705 enableok(RD(q));
707 miocack(q, mp, 0, 0);
723 miocnak(q, mp, 0, EINVAL);
728 (void) putbq(RD(q), mp->b_cont);
732 qenable(RD(q));
733 enableok(RD(q));
734 qenable(q);
735 enableok(q);
737 miocack(q, mp, 0, 0);
747 miocnak(q, mp, 0, error);
752 miocack(q, mp, 0, 0);
765 miocnak(q, mp, 0, EINVAL);
771 miocnak(q, mp, 0, error);
779 miocack(q, mp, 0, 0);
784 putnext(q, mp);
791 miocnak(q, mp, 0, EINVAL);
817 qreply(q, mp);
828 flushq(q, FLUSHDATA);
833 putnext(q, mp);
838 if (!canputnext(q) || q->q_first != NULL)
839 (void) putq(q, mp);
841 putnext(q, mp);
859 telmodwsrv(queue_t *q)
863 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
865 while ((mp = getq(q)) != NULL) {
866 if (!canputnext(q)) {
868 (void) putbq(q, mp);
875 (void) putbq(q, mp);
882 if (!snd_parse(q, mp)) {
894 putnext(q, mp);
898 putnext(q, mp);
940 rcv_parse(queue_t *q, mblk_t *mp)
946 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
1016 recover(q, datamp, msgsize);
1041 putnext(q, datamp);
1057 recover(q, protomp, msgsize);
1064 noenable(q);
1066 putnext(q, newmp);
1108 putnext(q, datamp);
1127 snd_parse(queue_t *q, mblk_t *mp)
1131 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
1137 putnext(q, mp);
1147 recover(q, mp, (2 * size)+1);
1191 putnext(q, newmp);
1199 queue_t *q = arg;
1200 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
1204 if (q->q_flag & QREADR) {
1211 enableok(q);
1212 qenable(q);
1218 queue_t *q = arg;
1219 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
1223 if (q->q_flag & QREADR) {
1230 enableok(q);
1231 qenable(q);
1235 recover(queue_t *q, mblk_t *mp, size_t size)
1239 struct telmod_info *tmip = (struct telmod_info *)q->q_ptr;
1242 noenable(q);
1243 (void) putbq(q, mp);
1248 if (q->q_flag & QREADR) {
1257 if (!(bid = qbufcall(RD(q), size, BPRI_MED, telmod_buffer, q))) {
1258 tid = qtimeout(RD(q), telmod_timer, q, SIMWAIT);
1259 if (q->q_flag & QREADR)
1264 if (q->q_flag & QREADR)