prn_timeouts
(caddr_t)arg, sizeof (struct prn_timeouts), flag)) {
struct prn_timeouts prn_timeouts;
if (ddi_copyin((caddr_t)arg, &prn_timeouts,
sizeof (struct prn_timeouts), flag)) {
if ((prn_timeouts.tmo_forward < USBPRN_XFER_TIMEOUT_MIN) ||
(prn_timeouts.tmo_forward > USBPRN_XFER_TIMEOUT_MAX)) {
usbprnp->usbprn_prn_timeouts = prn_timeouts;
usbprnp->usbprn_setparms.write_timeout = prn_timeouts.tmo_forward;
#define PRNIOC_GET_TIMEOUTS _IOR(PRNIOC, 96, struct prn_timeouts)
#define PRNIOC_SET_TIMEOUTS _IOW(PRNIOC, 97, struct prn_timeouts)
struct prn_timeouts usbprn_prn_timeouts; /* prnio timeouts */
pp->prn_timeouts = prn_timeouts_default;
struct prn_timeouts timeouts;
timeouts = pp->prn_timeouts;
mcopyin(mp, NULL, sizeof (struct prn_timeouts),
pp->prn_timeouts.tmo_forward = pp->xfer_parms.write_timeout;
struct prn_timeouts *prn_timeouts;
prn_timeouts = (struct prn_timeouts *)mp->b_cont->b_rptr;
if (prn_timeouts->tmo_forward > ECPP_MAX_TIMEOUT) {
pp->prn_timeouts = *prn_timeouts;
pp->xfer_parms.write_timeout = (int)prn_timeouts->tmo_forward;
static const struct prn_timeouts prn_timeouts_default = {
struct prn_timeouts prn_timeouts; /* prnio timeouts */