|
|
1.1 ! root 1: /*++ ! 2: ! 3: Copyright (c) 1991 Microsoft Corporation ! 4: ! 5: Module Name: ! 6: ! 7: ex_bot.c ! 8: ! 9: Abstract: ! 10: ! 11: This source file implements the bottom exit module for a subsystem-parallel ! 12: (ie. non mp-safe) STREAMS stack that sits atop a FULL_PARALLEL module. ! 13: ! 14: All downstream messages that arrive at this module are queued up, to be ! 15: serviced by our write service procedure, inswsrv(). Note that this ! 16: module is declared to be FULL_PARALLEL. ! 17: ! 18: --*/ ! 19: ! 20: #include "insulate.h" ! 21: ! 22: ! 23: ! 24: // ! 25: // Queue Information Structures ! 26: // ---------------------------- ! 27: // Each queue has an minfo structure. ! 28: // ! 29: // id name min max hi lo ! 30: // ! 31: static ! 32: struct module_info minfo = { ! 33: EXBOT_STID, EXBOT_NAME, 0, INFPSZ, 0x7fff, 0x7fff, ! 34: }; ! 35: ! 36: ! 37: // ! 38: // Queue Initialization Templates ! 39: // ------------------------------ ! 40: // put service open close future minfo future subsystem ! 41: // ! 42: static ! 43: struct qinit urinit = { ! 44: putnext,NULL, noopen, noclose,NULL, &minfo, NULL, FULL_PARALLEL ! 45: }; ! 46: ! 47: static ! 48: struct qinit uwinit = { ! 49: putq, inswsrv,NULL, NULL, NULL, &minfo, NULL, FULL_PARALLEL ! 50: }; ! 51: ! 52: ! 53: // ! 54: // Streamtab Entry ! 55: // --------------- ! 56: // upper queue pair lower queue pair ! 57: // ! 58: struct streamtab exbotinfo = { ! 59: &urinit, &uwinit, NULL, NULL ! 60: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.