Ignore:
Timestamp:
Dec 13, 2005, 5:42:38 AM (20 years ago)
Author:
bird
Message:

Ported to MSC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gmake/kmkbuiltin/setmode.c

    r227 r361  
    3838static char sccsid[] = "@(#)setmode.c   8.2 (Berkeley) 3/25/94";
    3939#endif /* LIBC_SCCS and not lint */
     40#ifndef _MSC_VER
    4041#include <sys/cdefs.h>
     42#endif
    4143//__FBSDID("$FreeBSD: src/lib/libc/gen/setmode.c,v 1.9 2003/02/23 00:24:03 mikeh Exp $");
    4244
     
    4951#include <stddef.h>
    5052#include <stdlib.h>
     53#ifndef _MSC_VER
    5154#include <unistd.h>
     55#endif
    5256
    5357#ifdef SETMODE_DEBUG
     
    5559#endif
    5660//#include "un-namespace.h"
     61
     62#ifdef _MSC_VER
     63#define setmode setmode_msc
     64#include <io.h>
     65#undef setmode
     66typedef unsigned int u_int;
     67typedef int mode_t;
     68#define S_ISDIR(m)  (((m) & _S_IFMT) == _S_IFDIR)
     69#define S_IRWXU (_S_IREAD | _S_IWRITE | _S_IEXEC)
     70#define S_IXUSR _S_IEXEC
     71#define S_IWUSR _S_IWRITE
     72#define S_IRUSR _S_IREAD
     73#define S_IRWXG 0000070
     74#define S_IRGRP 0000040
     75#define S_IWGRP 0000020
     76#define S_IXGRP 0000010
     77#define S_IRWXO 0000007
     78#define S_IROTH 0000004
     79#define S_IWOTH 0000002
     80#define S_IXOTH 0000001
     81#define S_ISUID 0004000
     82#define S_ISGID 0002000
     83#endif /* _MSC_VER */
     84
    5785
    5886#define SET_LEN 6               /* initial # of bitcmd struct to malloc */
     
    187215        char op, *ep;
    188216        BITCMD *set, *saveset, *endset;
     217#ifndef _MSC_VER
    189218        sigset_t sigset, sigoset;
     219#endif
    190220        mode_t mask;
    191221        int equalopdone=0, permXbits, setlen;
     
    201231         * as best we can.
    202232         */
     233#ifndef _MSC_VER
    203234        sigfillset(&sigset);
    204235        (void)sigprocmask(SIG_BLOCK, &sigset, &sigoset);
     236#endif
    205237        (void)umask(mask = umask(0));
    206238        mask = ~mask;
     239#ifndef _MSC_VER
    207240        (void)sigprocmask(SIG_SETMASK, &sigoset, NULL);
     241#endif
    208242
    209243        setlen = SET_LEN + 2;
Note: See TracChangeset for help on using the changeset viewer.