1094 extern int strpoll(register struct stdata *, short, int, short *, |
1094 extern int strpoll(register struct stdata *, short, int, short *, |
1095 struct pollhead **); |
1095 struct pollhead **); |
1096 extern void strclean(struct vnode *); |
1096 extern void strclean(struct vnode *); |
1097 extern void str_cn_clean(); /* XXX hook for consoles signal cleanup */ |
1097 extern void str_cn_clean(); /* XXX hook for consoles signal cleanup */ |
1098 extern int strwrite(struct vnode *, struct uio *, cred_t *); |
1098 extern int strwrite(struct vnode *, struct uio *, cred_t *); |
|
1099 extern int strwrite_common(struct vnode *, struct uio *, cred_t *, int); |
|
1100 extern int kstrwritemp(struct vnode *, mblk_t *, ushort_t); |
1099 extern int strread(struct vnode *, struct uio *, cred_t *); |
1101 extern int strread(struct vnode *, struct uio *, cred_t *); |
1100 extern int strioctl(struct vnode *, int, intptr_t, int, int, cred_t *, int *); |
1102 extern int strioctl(struct vnode *, int, intptr_t, int, int, cred_t *, int *); |
1101 extern int strrput(queue_t *, mblk_t *); |
1103 extern int strrput(queue_t *, mblk_t *); |
1102 extern int strrput_nondata(queue_t *, mblk_t *); |
1104 extern int strrput_nondata(queue_t *, mblk_t *); |
1103 extern mblk_t *strrput_proto(vnode_t *, mblk_t *, |
1105 extern mblk_t *strrput_proto(vnode_t *, mblk_t *, |
1178 extern vnode_t *strq2vp(queue_t *); |
1180 extern vnode_t *strq2vp(queue_t *); |
1179 extern mblk_t *allocb_wait(size_t, uint_t, uint_t, int *); |
1181 extern mblk_t *allocb_wait(size_t, uint_t, uint_t, int *); |
1180 extern mblk_t *allocb_cred(size_t, cred_t *); |
1182 extern mblk_t *allocb_cred(size_t, cred_t *); |
1181 extern mblk_t *allocb_cred_wait(size_t, uint_t, int *, cred_t *); |
1183 extern mblk_t *allocb_cred_wait(size_t, uint_t, int *, cred_t *); |
1182 extern mblk_t *allocb_tmpl(size_t, const mblk_t *); |
1184 extern mblk_t *allocb_tmpl(size_t, const mblk_t *); |
|
1185 extern mblk_t *allocb_tryhard(size_t); |
1183 extern void mblk_setcred(mblk_t *, cred_t *); |
1186 extern void mblk_setcred(mblk_t *, cred_t *); |
1184 extern void strpollwakeup(vnode_t *, short); |
1187 extern void strpollwakeup(vnode_t *, short); |
1185 extern int putnextctl_wait(queue_t *, int); |
1188 extern int putnextctl_wait(queue_t *, int); |
1186 |
1189 |
1187 extern int kstrputmsg(struct vnode *, mblk_t *, struct uio *, ssize_t, |
1190 extern int kstrputmsg(struct vnode *, mblk_t *, struct uio *, ssize_t, |
1188 unsigned char, int, int); |
1191 unsigned char, int, int); |
1189 extern int kstrgetmsg(struct vnode *, mblk_t **, struct uio *, |
1192 extern int kstrgetmsg(struct vnode *, mblk_t **, struct uio *, |
1190 unsigned char *, int *, clock_t, rval_t *); |
1193 unsigned char *, int *, clock_t, rval_t *); |
1191 extern int kstrwritemp(struct vnode *, mblk_t *, ushort_t); |
|
1192 |
1194 |
1193 extern void strsetrerror(vnode_t *, int, int, errfunc_t); |
1195 extern void strsetrerror(vnode_t *, int, int, errfunc_t); |
1194 extern void strsetwerror(vnode_t *, int, int, errfunc_t); |
1196 extern void strsetwerror(vnode_t *, int, int, errfunc_t); |
1195 extern void strseteof(vnode_t *, int); |
1197 extern void strseteof(vnode_t *, int); |
1196 extern void strflushrq(vnode_t *, int); |
1198 extern void strflushrq(vnode_t *, int); |
1215 extern void fmodsw_rele(fmodsw_impl_t *); |
1217 extern void fmodsw_rele(fmodsw_impl_t *); |
1216 |
1218 |
1217 extern void freemsgchain(mblk_t *); |
1219 extern void freemsgchain(mblk_t *); |
1218 extern mblk_t *copymsgchain(mblk_t *); |
1220 extern mblk_t *copymsgchain(mblk_t *); |
1219 |
1221 |
|
1222 extern mblk_t *mcopyinuio(struct stdata *, uio_t *, ssize_t, ssize_t, int *); |
|
1223 |
1220 /* |
1224 /* |
1221 * shared or externally configured data structures |
1225 * shared or externally configured data structures |
1222 */ |
1226 */ |
1223 extern ssize_t strmsgsz; /* maximum stream message size */ |
1227 extern ssize_t strmsgsz; /* maximum stream message size */ |
1224 extern ssize_t strctlsz; /* maximum size of ctl message */ |
1228 extern ssize_t strctlsz; /* maximum size of ctl message */ |
1261 extern struct queue *OTHERQ(queue_t *); /* stream.h */ |
1265 extern struct queue *OTHERQ(queue_t *); /* stream.h */ |
1262 extern struct queue *RD(queue_t *); |
1266 extern struct queue *RD(queue_t *); |
1263 extern struct queue *WR(queue_t *); |
1267 extern struct queue *WR(queue_t *); |
1264 extern int SAMESTR(queue_t *); |
1268 extern int SAMESTR(queue_t *); |
1265 |
1269 |
|
1270 /* |
|
1271 * The following hardware checksum related macros are private |
|
1272 * interfaces that are subject to change without notice. |
|
1273 */ |
|
1274 #ifdef _KERNEL |
|
1275 #define DB_CKSUMSTART(mp) ((mp)->b_datap->db_cksumstart) |
|
1276 #define DB_CKSUMEND(mp) ((mp)->b_datap->db_cksumend) |
|
1277 #define DB_CKSUMSTUFF(mp) ((mp)->b_datap->db_cksumstuff) |
|
1278 #define DB_CKSUMFLAGS(mp) ((mp)->b_datap->db_struioun.cksum.flags) |
|
1279 #define DB_CKSUM16(mp) ((mp)->b_datap->db_cksum16) |
|
1280 #define DB_CKSUM32(mp) ((mp)->b_datap->db_cksum32) |
|
1281 #endif /* _KERNEL */ |
|
1282 |
1266 #ifdef __cplusplus |
1283 #ifdef __cplusplus |
1267 } |
1284 } |
1268 #endif |
1285 #endif |
1269 |
1286 |
1270 |
1287 |