123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /* go-varargs.c -- functions for calling C varargs functions.
- Copyright 2013 The Go Authors. All rights reserved.
- Use of this source code is governed by a BSD-style
- license that can be found in the LICENSE file. */
- #include "config.h"
- #include <sys/types.h>
- #include <fcntl.h>
- /* The syscall package calls C functions. The Go compiler can not
- represent a C varargs functions. On some systems it's important
- that the declaration of a function match the call. This function
- holds non-varargs C functions that the Go code can call. */
- int
- __go_open (char *path, int mode, mode_t perm)
- {
- return open (path, mode, perm);
- }
- int
- __go_fcntl (int fd, int cmd, int arg)
- {
- return fcntl (fd, cmd, arg);
- }
- int
- __go_fcntl_flock (int fd, int cmd, struct flock *arg)
- {
- return fcntl (fd, cmd, arg);
- }
- #ifdef HAVE_OPEN64
- int
- __go_open64 (char *path, int mode, mode_t perm)
- {
- return open64 (path, mode, perm);
- }
- #endif
- #ifdef HAVE_OPENAT
- int
- __go_openat (int fd, char *path, int flags, mode_t mode)
- {
- return openat (fd, path, flags, mode);
- }
- #endif
|