root/compat/svr4/svr4_jioctl.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. svr4_jerq_ioctl

    1 /*      $OpenBSD: svr4_jioctl.c,v 1.2 2002/03/14 01:26:51 millert Exp $  */
    2 
    3 /*
    4  * Copyright (c) 1997 Niklas Hallqvist
    5  * All rights reserved.
    6  *
    7  * Redistribution and use in source and binary forms, with or without
    8  * modification, are permitted provided that the following conditions
    9  * are met:
   10  * 1. Redistributions of source code must retain the above copyright
   11  *    notice, this list of conditions and the following disclaimer.
   12  * 2. Redistributions in binary form must reproduce the above copyright
   13  *    notice, this list of conditions and the following disclaimer in the
   14  *    documentation and/or other materials provided with the distribution.
   15  * 3. The name of the author may not be used to endorse or promote products
   16  *    derived from this software without specific prior written permission
   17  *
   18  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   19  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   20  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   21  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   22  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   23  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   24  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   25  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   26  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   27  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   28  */
   29 
   30 /*
   31  * Deal with the "j" svr4 ioctls ("j" stands for "jerq", the first windowing
   32  * terminal).
   33  */
   34 
   35 #include <sys/types.h>
   36 #include <sys/param.h>
   37 #include <sys/errno.h>
   38 #include <sys/file.h>
   39 #include <sys/proc.h>
   40 #include <sys/systm.h>
   41 #include <sys/ttycom.h>
   42 
   43 #include <compat/svr4/svr4_ioctl.h>
   44 #include <compat/svr4/svr4_jioctl.h>
   45 #include <compat/svr4/svr4_util.h>
   46 
   47 int
   48 svr4_jerq_ioctl(fp, p, retval, fd, cmd, data)
   49         struct file *fp;
   50         struct proc *p;
   51         register_t *retval;
   52         int fd;
   53         u_long cmd;
   54         caddr_t data;
   55 {
   56         struct svr4_jwinsize jws;
   57         struct winsize ws;
   58         int error;
   59         int (*ctl)(struct file *, u_long,  caddr_t, struct proc *) =
   60             fp->f_ops->fo_ioctl;
   61 
   62         switch (cmd) {
   63         case SVR4_JWINSIZE:
   64                 error = (*ctl)(fp, TIOCGWINSZ, (caddr_t)&ws, p);
   65                 if (error)
   66                         return (error);
   67                 jws.bytesx = ws.ws_col;
   68                 jws.bytesy = ws.ws_row;
   69                 jws.bitsx = ws.ws_xpixel;
   70                 jws.bitsy = ws.ws_ypixel;
   71                 return (copyout(&jws, data, sizeof (jws)));
   72 
   73         default:
   74                 DPRINTF(("Unimplemented ioctl %lx\n", cmd));
   75                 return (EINVAL);
   76         }
   77 }

/* [<][>][^][v][top][bottom][index][help] */