Mbed OS version of IoT.js implementation running on GR-PEACH

ビルド方法

ビルド環境セットアップ

Host PC要件 : Ubuntu 16.04 (64-bit)



1. 以下のコマンドを実行し、下表に示すツールをインストールします。

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install [Package]
PackageVersion
build-essential12.1ubuntu2
gyp0.1+20150913git1f374df9-1ubuntu1
mercurial3.7.3-1ubuntu1
cmake3.5.1-1ubuntu3
git1:2.7.4-0ubuntu1.4
python2.72.7.12-1ubuntu016.04.3
valgrind1:3.11.0-1ubuntu4.2
python-pip8.1.1-2ubuntu0.4

2. 以下のコマンドを実行してMbed OS用ビルドツール mbed CLIをインストールします。

$ sudo -H pip install mbed-cli

3. GNU Arm Embedded Toolchainをインストールします。

  • ダウンロードしたファイルを任意のディレクトリに展開します。
    (以下、展開先を${TOOLCHAIN}と記載します)

tar xjf gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2
  • ツールチェインのパスを設定します。

環境変数を使用する場合

$ export GCC_ARM_ROOT=${TOOLCHAIN}/gcc-arm-none-eabi-6-2017-q2-update/bin
$ export PATH=$GCC_ARM_ROOT:$PATH

mbed CLIで指定する場合

$ mbed config -G GCC_ARM_PATH $GCC_ARM_ROOT

iotjs環境のビルド

1. 本プログラムのクローン

下記コマンドを実行し、本プログラムをクローンしてください。

$ hg clone https://HinoNaka@os.mbed.com/users/HinoNaka/code/GR-PEACH_mbed-os-iotjs/

クローンが正常に終了すると、GR-PEACH_mbed-os-iotjs という名称のディレクトリが生成されますので、下記コマンドで当該ディレクトリへ移動してください。

$ cd GR-PEACH_mbed-os-iotjs

(Optional)
GR-PEACH-mbed-os-iotjsディレクトリを指す環境変数 ROOTを設定してください。以降の記載は本環境変数が設定されているものとします。

$ export ROOT=$(PWD)

2. 作業用ディレクトリ(e.g. work)を作成し、当該ディレクトリに移動してください。

$ mkdir -p work
$ cd work

(Optional)
作業用ディレクトリを指す環境変数 WORK を設定してください。以降の記載は本環境変数 が設定されているものとします。

$ export WORK=$(PWD)

3. iotjsのソースツリーを取得します。

$ git clone https://github.com/pando-project/iotjs

クローンが正常に終了するとiotjsというディレクトリが生成されますので、当該ディレクトリに移動してください。

$cd iotjs

コミットID: acae9c8b2d40e7598b8d39b630b79113ce880a7e を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix acae9c8b2d40e7598b8d39b630b79113ce880a7e

4. mbed-osセットアップ
Mbed OSソースツリーを格納するフォルダを生成し、当該フォルダへ移動します。

$ mkdir -p $(WORK)/iotjs/src/platform/mbedos5
$ cd $(WORK)/iotjs/src/platform/mbedos5

Mbed OSのソースツリーをクローンします。

$ git clone -b mbed-os-5.9 https://github.com/ARMmbed/mbed-os.git

クローンが正常に終了するとmbed-osというディレクトリが生成されますので、当該ディレクトリに移動してください。

$ cd mbed-os

コミットID: 50bd61a4a72332baa6b1bac6caccb44dc5423309 を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix 50bd61a4a72332baa6b1bac6caccb44dc5423309

5. sd-driverの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

sd-driverをクローンします。

$ git clone https://github.com/ARMmbed/sd-driver.git

クローンが正常終了するとsd-driverディレクトリが生成されますので、当該ディレクトリへ移動します。

$ cd sd-driver

コミットID: c8ae38fb291e086232566b0f1372cfb69c277e84 を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix c8ae38fb291e086232566b0f1372cfb69c277e84

6. mbed-gr-libsの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

mbed-gr-libsをクローンします。

$ git clone https://github.com/d-kato/mbed-gr-libs

クローンが正常終了するとmbed-gr-libsディレクトリが生成されますので、当該ディレクトリへ移動します。

$ cd mbed-gr-libs

コミットID: d921d611d596ecaebaab49070ef82450c583309c を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix d921d611d596ecaebaab49070ef82450c583309c

7. AsciiFONTの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

AsciiFONTライブラリを追加します。

$ mbed add https://os.mbed.com/teams/Renesas/code/AsciiFont/

8. iotjs環境のビルド
下記コマンドでiotjs環境のビルドディレクトリに移動し、ビルドを実行します。

$ cd $(WORK)/iotjs
$ ./tools/build.py --no-snapshot

9. GR-PEACH用コードのコピー
(Optional) 既存のiotjs環境に上書きする場合、下記コマンドを実行してください。

$ rm -rf $(WORK)/iotjs/deps/posix
$ rm -rf $(WORK)/iotjs/src/ext-modules
$ rm -rf $(WORK)/iotjs/src/platform/mbedos5/iotjs_def.h

下記コマンドでGR-PEACH用コードをコピーします。

$ cp -pr $(ROOT)/src/iotjs/* $(WORK)/iotjs/

10. lwipパッチ適用
以下コマンドでlwipパッチを適用します。

$ cd $(WORK)/iotjs/src/platform/mbedos5/mbed-os
$ git apply lwip_improve.patch

11. ESP32 TRNG対応パッチ適用
以下コマンドでESP32のTRNGを活用するためのパッチを適用します。

$ cd $(WORK)/iotjs/src/platform/mbedos5/mbed-os
$ git apply trng_support.patch

12. Mbed OS版iotjs環境のビルド
下記コマンドを実行してMbed OS版iotjs環境をビルドします。
(リリースビルドの場合)

$ cd $(WORK)/iotjs/src/platform/mbedos5
$ make clean; make DEBUG=0

(デバッグビルドの場合)

$ cd $(WORK)/iotjs/src/platform/mbedos5
$ make clean; make DEBUG=1

13. ビルドが正常に終了すると、以下の通りバイナリが生成されます。
(リリースビルドの場合)

$ ls -l ${WORK}/iotjs/src/platform/mbedos5/BUILD/RZ_A1H/GCC_ARM-RELEASE/iotjs.bin

(デバッグビルドの場合)

$ ls -l ${WORK}/iotjs/src/platform/mbedos5/BUILD/RZ_A1H/GCC_ARM-DEBUG/iotjs.bin

実行方法

1. GR-PEACHにmicro SDカードを挿入します。

2. GR-PEACHのEthernetポートから遠い側のUSBポートとHost PCをマイクロUSBケーブルで接続します。

3. Host PCでGR-PEACHが『mbed:』ドライブとして認識されたら、iotjs.binをmbedドライブにコピーします。

4. ターミナルS/Wを立上げ、『mbed Serial Port』と接続します。
/media/uploads/HinoNaka/img1.jpg
シリアルポートは下記設定としてください。

Baud rate115200
Data8 bit
Paritynone
Stop1 bit
Flow controlnone

5. 正常に書込みが終了したらGR-PEACHのRESETボタンを押下します。

6. ターミナルS/W上に下記メッセージが表示されます。
/media/uploads/HinoNaka/img2.jpg

7. Enterキーを押下してコード入力モードに移行します。
/media/uploads/HinoNaka/img3.jpg

8. 実行するJavascriptコードをターミナルソフトウェアに貼り付けてEnterキーを押下すると、実行開始します。Javascriptコード例については、test/case.txtを参照ください。

Committer:
Osamu Nakamura
Date:
Thu Jul 11 18:48:09 2019 +0900
Revision:
0:7cc000799c93
Initial commit of iotjs core

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Osamu Nakamura 0:7cc000799c93 1 /* Copyright 2017-present Renesas Electronics Corporation and other contributors
Osamu Nakamura 0:7cc000799c93 2 *
Osamu Nakamura 0:7cc000799c93 3 * Licensed under the Apache License, Version 2.0 (the "License");
Osamu Nakamura 0:7cc000799c93 4 * you may not use this file except in compliance with the License.
Osamu Nakamura 0:7cc000799c93 5 * You may obtain a copy of the License at
Osamu Nakamura 0:7cc000799c93 6 *
Osamu Nakamura 0:7cc000799c93 7 * http://www.apache.org/licenses/LICENSE-2.0
Osamu Nakamura 0:7cc000799c93 8 *
Osamu Nakamura 0:7cc000799c93 9 * Unless required by applicable law or agreed to in writing, software
Osamu Nakamura 0:7cc000799c93 10 * distributed under the License is distributed on an "AS IS" BASIS
Osamu Nakamura 0:7cc000799c93 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Osamu Nakamura 0:7cc000799c93 12 * See the License for the specific language governing permissions and
Osamu Nakamura 0:7cc000799c93 13 * limitations under the License.
Osamu Nakamura 0:7cc000799c93 14 */
Osamu Nakamura 0:7cc000799c93 15
Osamu Nakamura 0:7cc000799c93 16 #include "./posix4_target.h"
Osamu Nakamura 0:7cc000799c93 17
Osamu Nakamura 0:7cc000799c93 18 inline const char* safe_str(const char* in) { return in ? in : "<null>"; }
Osamu Nakamura 0:7cc000799c93 19
Osamu Nakamura 0:7cc000799c93 20 char* P4(getcwd)(char* buf, P4(size_t) size)
Osamu Nakamura 0:7cc000799c93 21 {
Osamu Nakamura 0:7cc000799c93 22 TRACE(ENTER "getcwd(buf=%p, size=%u)", buf, size);
Osamu Nakamura 0:7cc000799c93 23 char* rc = posix::getcwd( buf, size );
Osamu Nakamura 0:7cc000799c93 24 TRACE(LEAVE "getcwd(buf=%p, size=%u) = %s(errno:%d)", buf, size, safe_str(rc), errno);
Osamu Nakamura 0:7cc000799c93 25 return rc;
Osamu Nakamura 0:7cc000799c93 26 }
Osamu Nakamura 0:7cc000799c93 27
Osamu Nakamura 0:7cc000799c93 28 int P4(chdir)(const char* path)
Osamu Nakamura 0:7cc000799c93 29 {
Osamu Nakamura 0:7cc000799c93 30 TRACE(ENTER "chdir(path=%s)", safe_str(path));
Osamu Nakamura 0:7cc000799c93 31 int rc = posix::chdir( path );
Osamu Nakamura 0:7cc000799c93 32 TRACE(LEAVE "chdir(path=%s) = %d(errno:%d)", safe_str(path), rc, errno);
Osamu Nakamura 0:7cc000799c93 33 return rc;
Osamu Nakamura 0:7cc000799c93 34 }
Osamu Nakamura 0:7cc000799c93 35
Osamu Nakamura 0:7cc000799c93 36 int P4(fdatasync)(int fd)
Osamu Nakamura 0:7cc000799c93 37 {
Osamu Nakamura 0:7cc000799c93 38 TRACE(ENTER "fdatasync(fd=%d)", fd);
Osamu Nakamura 0:7cc000799c93 39 int rc = posix::fdatasync( fd );
Osamu Nakamura 0:7cc000799c93 40 TRACE(LEAVE "fdatasync(fd=%d) = %d(errno:%d)", fd, rc, errno);
Osamu Nakamura 0:7cc000799c93 41 return rc;
Osamu Nakamura 0:7cc000799c93 42 }
Osamu Nakamura 0:7cc000799c93 43
Osamu Nakamura 0:7cc000799c93 44 int P4(fsync)(int fd)
Osamu Nakamura 0:7cc000799c93 45 {
Osamu Nakamura 0:7cc000799c93 46 TRACE(ENTER "fsync(fd=%d)", fd);
Osamu Nakamura 0:7cc000799c93 47 int rc = posix::fsync( fd );
Osamu Nakamura 0:7cc000799c93 48 TRACE(LEAVE "fsync(fd=%d) = %d(errno:%d)", fd, rc, errno);
Osamu Nakamura 0:7cc000799c93 49 return rc;
Osamu Nakamura 0:7cc000799c93 50 }
Osamu Nakamura 0:7cc000799c93 51
Osamu Nakamura 0:7cc000799c93 52 int P4(ftruncate)(int fd, P4(off_t) length)
Osamu Nakamura 0:7cc000799c93 53 {
Osamu Nakamura 0:7cc000799c93 54 TRACE(ENTER "ftruncate(fd=%d, length=%ld)", fd, length);
Osamu Nakamura 0:7cc000799c93 55 int rc = posix::ftruncate( fd, length );
Osamu Nakamura 0:7cc000799c93 56 TRACE(LEAVE "ftruncate(fd=%d, length=%ld) = %d(errno:%d)", fd, length, rc, errno);
Osamu Nakamura 0:7cc000799c93 57 return rc;
Osamu Nakamura 0:7cc000799c93 58 }
Osamu Nakamura 0:7cc000799c93 59
Osamu Nakamura 0:7cc000799c93 60 int P4(scandir)(const char* dirp, struct P4(dirent)*** namelist, int (*filter)(const struct P4(dirent)*), int (*compar)(const struct P4(dirent)**, const struct P4(dirent)**))
Osamu Nakamura 0:7cc000799c93 61 {
Osamu Nakamura 0:7cc000799c93 62 TRACE(ENTER "scandir(dirp=%s, namelist=%p, filter=%p, compar=%p)", safe_str(dirp), namelist, filter, compar);
Osamu Nakamura 0:7cc000799c93 63 int rc = posix::scandir( dirp, namelist, filter, compar );
Osamu Nakamura 0:7cc000799c93 64 TRACE(LEAVE "scandir(dirp=%s, namelist=%p, filter=%p, compar=%p) = %d(errno:%d)", safe_str(dirp), namelist, filter, compar, rc, errno);
Osamu Nakamura 0:7cc000799c93 65 return rc;
Osamu Nakamura 0:7cc000799c93 66 }
Osamu Nakamura 0:7cc000799c93 67
Osamu Nakamura 0:7cc000799c93 68 int P4(utime)(const char* filename, const struct P4(utimbuf)* times)
Osamu Nakamura 0:7cc000799c93 69 {
Osamu Nakamura 0:7cc000799c93 70 TRACE(ENTER "utime(filename=%s, times=%p)", safe_str(filename), times);
Osamu Nakamura 0:7cc000799c93 71 int rc = posix::utime( filename, times );
Osamu Nakamura 0:7cc000799c93 72 TRACE(LEAVE "utime(filename=%s, times=%p) = %d(errno:%d)", safe_str(filename), times, rc, errno);
Osamu Nakamura 0:7cc000799c93 73 return rc;
Osamu Nakamura 0:7cc000799c93 74 }
Osamu Nakamura 0:7cc000799c93 75
Osamu Nakamura 0:7cc000799c93 76 int P4(utimes)(const char* filename, const struct P4(timeval) times[2])
Osamu Nakamura 0:7cc000799c93 77 {
Osamu Nakamura 0:7cc000799c93 78 TRACE(ENTER "utimes(filename=%s, times[2]=maybe_later)", safe_str(filename));
Osamu Nakamura 0:7cc000799c93 79 int rc = posix::utimes( filename, times );
Osamu Nakamura 0:7cc000799c93 80 TRACE(LEAVE "utimes(filename=%s, times[2]=maybe_later) = %d(errno:%d)", safe_str(filename), rc, errno);
Osamu Nakamura 0:7cc000799c93 81 return rc;
Osamu Nakamura 0:7cc000799c93 82 }
Osamu Nakamura 0:7cc000799c93 83
Osamu Nakamura 0:7cc000799c93 84 P4(ssize_t) P4(pread)(int fd, void* buf, P4(size_t) count, P4(off_t) offset)
Osamu Nakamura 0:7cc000799c93 85 {
Osamu Nakamura 0:7cc000799c93 86 TRACE(ENTER "pread(fd=%d, buf=%p, count=%d, offset=%ld)", fd, buf, count, offset);
Osamu Nakamura 0:7cc000799c93 87 P4(ssize_t) rc = posix::pread( fd, buf, count, offset );
Osamu Nakamura 0:7cc000799c93 88 TRACE(LEAVE "pread(fd=%d, buf=%p, count=%d, offset=%ld) = %d(errno:%d)", fd, buf, count, offset, rc, errno);
Osamu Nakamura 0:7cc000799c93 89 return rc;
Osamu Nakamura 0:7cc000799c93 90 }
Osamu Nakamura 0:7cc000799c93 91
Osamu Nakamura 0:7cc000799c93 92 P4(ssize_t) P4(pwrite)(int fd, const void* buf, P4(size_t) count, P4(off_t) offset)
Osamu Nakamura 0:7cc000799c93 93 {
Osamu Nakamura 0:7cc000799c93 94 TRACE(ENTER "pwrite(fd=%d, buf=%p, count=%d, offset=%ld)", fd, buf, count, offset);
Osamu Nakamura 0:7cc000799c93 95 P4(ssize_t) rc = posix::pwrite( fd, buf, count, offset );
Osamu Nakamura 0:7cc000799c93 96 TRACE(LEAVE "pwrite(fd=%d, buf=%p, count=%d, offset=%ld) = %d(errno:%d)", fd, buf, count, offset, rc, errno);
Osamu Nakamura 0:7cc000799c93 97 return rc;
Osamu Nakamura 0:7cc000799c93 98 }
Osamu Nakamura 0:7cc000799c93 99
Osamu Nakamura 0:7cc000799c93 100 P4(ssize_t) P4(readv)(int fd, const struct P4(iovec)* iov, int iovcnt)
Osamu Nakamura 0:7cc000799c93 101 {
Osamu Nakamura 0:7cc000799c93 102 TRACE(ENTER "readv(fd=%d, iov=%p, iovcnt=%d)", fd, iov, iovcnt);
Osamu Nakamura 0:7cc000799c93 103 P4(ssize_t) rc = posix::readv( fd, iov, iovcnt );
Osamu Nakamura 0:7cc000799c93 104 TRACE(LEAVE "readv(fd=%d, iov=%p, iovcnt=%d) = %d(errno:%d)", fd, iov, iovcnt, rc, errno);
Osamu Nakamura 0:7cc000799c93 105 return rc;
Osamu Nakamura 0:7cc000799c93 106 }
Osamu Nakamura 0:7cc000799c93 107
Osamu Nakamura 0:7cc000799c93 108 P4(ssize_t) P4(writev)(int fd, const struct P4(iovec)* iov, int iovcnt)
Osamu Nakamura 0:7cc000799c93 109 {
Osamu Nakamura 0:7cc000799c93 110 TRACE(ENTER "writev(fd=%d, iov=%p, iovcnt=%d)", fd, iov, iovcnt);
Osamu Nakamura 0:7cc000799c93 111 P4(ssize_t) rc = posix::writev( fd, iov, iovcnt );
Osamu Nakamura 0:7cc000799c93 112 TRACE(LEAVE "writev(fd=%d, iov=%p, iovcnt=%d) = %d(errno:%d)", fd, iov, iovcnt, rc, errno);
Osamu Nakamura 0:7cc000799c93 113 return rc;
Osamu Nakamura 0:7cc000799c93 114 }
Osamu Nakamura 0:7cc000799c93 115
Osamu Nakamura 0:7cc000799c93 116 int P4(utimensat)(int dirfd, const char* pathname, const struct P4(timespec) times[2], int flags)
Osamu Nakamura 0:7cc000799c93 117 {
Osamu Nakamura 0:7cc000799c93 118 TRACE(ENTER "utimensat(dirfd=%d, pathname=%s, times=%p, flags=%d)", dirfd, safe_str(pathname), times, flags);
Osamu Nakamura 0:7cc000799c93 119 int rc = posix::utimensat( dirfd, pathname, times, flags );
Osamu Nakamura 0:7cc000799c93 120 TRACE(LEAVE "utimensat(dirfd=%d, pathname=%s, times=%p, flags=%d) = %d(errno:%d)", dirfd, safe_str(pathname), times, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 121 return rc;
Osamu Nakamura 0:7cc000799c93 122 }
Osamu Nakamura 0:7cc000799c93 123
Osamu Nakamura 0:7cc000799c93 124 int P4(clock_getres)(P4(clockid_t) clk_id, struct P4(timespec)* res)
Osamu Nakamura 0:7cc000799c93 125 {
Osamu Nakamura 0:7cc000799c93 126 TRACE(ENTER "clock_getres(clk_id=%lu, res=%p)", clk_id, res);
Osamu Nakamura 0:7cc000799c93 127 int rc = posix::clock::getres( clk_id, res );
Osamu Nakamura 0:7cc000799c93 128 TRACE(LEAVE "clock_getres(clk_id=%lu, res={%ld.%09ld}) = %d(errno:%d)", clk_id, res->tv_sec, res->tv_nsec, rc, errno);
Osamu Nakamura 0:7cc000799c93 129 return rc;
Osamu Nakamura 0:7cc000799c93 130 }
Osamu Nakamura 0:7cc000799c93 131
Osamu Nakamura 0:7cc000799c93 132 int P4(clock_gettime)(P4(clockid_t) clk_id, struct P4(timespec)* tp)
Osamu Nakamura 0:7cc000799c93 133 {
Osamu Nakamura 0:7cc000799c93 134 TRACE(ENTER "clock_gettime(clk_id=%lu, tp=%p)", clk_id, tp);
Osamu Nakamura 0:7cc000799c93 135 int rc = posix::clock::gettime( clk_id, tp );
Osamu Nakamura 0:7cc000799c93 136 TRACE(LEAVE "clock_gettime(clk_id=%lu, tp={%ld.%09ld}) = %d(errno:%d)", clk_id, tp->tv_sec, tp->tv_nsec, rc, errno);
Osamu Nakamura 0:7cc000799c93 137 return rc;
Osamu Nakamura 0:7cc000799c93 138 }
Osamu Nakamura 0:7cc000799c93 139
Osamu Nakamura 0:7cc000799c93 140 int P4(pthread_create)(P4(pthread_t)* thread, P4(pthread_attr_t)* attr, void* (*start_routine)(void*), void* arg)
Osamu Nakamura 0:7cc000799c93 141 {
Osamu Nakamura 0:7cc000799c93 142 TRACE(ENTER "pthread_create(thread=%p, attr=%p, start_routine=%p, arg=%p)", thread, attr, start_routine, arg);
Osamu Nakamura 0:7cc000799c93 143 int rc = posix::pthread::create( thread, attr, start_routine, arg );
Osamu Nakamura 0:7cc000799c93 144 TRACE(LEAVE "pthread_create(thread={%p}, attr=%p, start_routine=%p, arg=%p) = %d", *thread, attr, start_routine, arg, rc);
Osamu Nakamura 0:7cc000799c93 145 return rc;
Osamu Nakamura 0:7cc000799c93 146 }
Osamu Nakamura 0:7cc000799c93 147
Osamu Nakamura 0:7cc000799c93 148 int P4(pthread_join)(P4(pthread_t) thread, void** retval)
Osamu Nakamura 0:7cc000799c93 149 {
Osamu Nakamura 0:7cc000799c93 150 TRACE(ENTER "pthread_join(thread=%p, retval=%p)", thread, retval);
Osamu Nakamura 0:7cc000799c93 151 int rc = posix::pthread::join( thread, retval );
Osamu Nakamura 0:7cc000799c93 152 TRACE(LEAVE "pthread_join(thread=%p, retval=%p) = %d", thread, retval, rc);
Osamu Nakamura 0:7cc000799c93 153 return rc;
Osamu Nakamura 0:7cc000799c93 154 }
Osamu Nakamura 0:7cc000799c93 155
Osamu Nakamura 0:7cc000799c93 156 int P4(pthread_once)(P4(pthread_once_t)* once_control, void (*init_routine)(void))
Osamu Nakamura 0:7cc000799c93 157 {
Osamu Nakamura 0:7cc000799c93 158 TRACE(ENTER "pthread_once(once_control={0x%08X}, init_routine=%p)", *once_control, init_routine);
Osamu Nakamura 0:7cc000799c93 159 int rc = posix::pthread::once( once_control, init_routine );
Osamu Nakamura 0:7cc000799c93 160 TRACE(LEAVE "pthread_once(once_control={0x%08X}, init_routine=%p) = %d", *once_control, init_routine, rc);
Osamu Nakamura 0:7cc000799c93 161 return rc;
Osamu Nakamura 0:7cc000799c93 162 }
Osamu Nakamura 0:7cc000799c93 163
Osamu Nakamura 0:7cc000799c93 164 int P4(pthread_sigmask)(int how, const P4(sigset_t)* set, P4(sigset_t)* oldset)
Osamu Nakamura 0:7cc000799c93 165 {
Osamu Nakamura 0:7cc000799c93 166 TRACE(ENTER "pthread_sigmask(how=%d, set=%p, oldset=%p)", how, set, oldset);
Osamu Nakamura 0:7cc000799c93 167 int rc = posix::pthread::sigmask( how, set, oldset );
Osamu Nakamura 0:7cc000799c93 168 TRACE(LEAVE "pthread_sigmask(how=%d, set=%p, oldset=%p) = %d", how, set, oldset, rc);
Osamu Nakamura 0:7cc000799c93 169 return rc;
Osamu Nakamura 0:7cc000799c93 170 }
Osamu Nakamura 0:7cc000799c93 171
Osamu Nakamura 0:7cc000799c93 172 int P4(pthread_attr_destroy)(P4(pthread_attr_t)* attr)
Osamu Nakamura 0:7cc000799c93 173 {
Osamu Nakamura 0:7cc000799c93 174 TRACE(ENTER "pthread_attr_destroy(attr=%p)", attr);
Osamu Nakamura 0:7cc000799c93 175 int rc = posix::pthread::attr::destroy( attr );
Osamu Nakamura 0:7cc000799c93 176 TRACE(LEAVE "pthread_attr_destroy(attr=%p) = %d", attr, rc);
Osamu Nakamura 0:7cc000799c93 177 return rc;
Osamu Nakamura 0:7cc000799c93 178 }
Osamu Nakamura 0:7cc000799c93 179
Osamu Nakamura 0:7cc000799c93 180 int P4(pthread_cond_destroy)(P4(pthread_cond_t)* cond)
Osamu Nakamura 0:7cc000799c93 181 {
Osamu Nakamura 0:7cc000799c93 182 TRACE(ENTER "pthread_cond_destroy(cond=%p)", cond);
Osamu Nakamura 0:7cc000799c93 183 int rc = posix::pthread::cond::destroy( cond );
Osamu Nakamura 0:7cc000799c93 184 TRACE(LEAVE "pthread_cond_destroy(cond=%p) = %d", cond, rc);
Osamu Nakamura 0:7cc000799c93 185 return rc;
Osamu Nakamura 0:7cc000799c93 186 }
Osamu Nakamura 0:7cc000799c93 187
Osamu Nakamura 0:7cc000799c93 188 int P4(pthread_cond_init)(P4(pthread_cond_t)* cond, P4(pthread_condattr_t)* cond_attr)
Osamu Nakamura 0:7cc000799c93 189 {
Osamu Nakamura 0:7cc000799c93 190 TRACE(ENTER "pthread_cond_init(cond=%p, cond_attr=%p)", cond, cond_attr);
Osamu Nakamura 0:7cc000799c93 191 int rc = posix::pthread::cond::init( cond, cond_attr );
Osamu Nakamura 0:7cc000799c93 192 TRACE(LEAVE "pthread_cond_init(cond=%p, cond_attr=%p) = %d", cond, cond_attr, rc);
Osamu Nakamura 0:7cc000799c93 193 return rc;
Osamu Nakamura 0:7cc000799c93 194 }
Osamu Nakamura 0:7cc000799c93 195
Osamu Nakamura 0:7cc000799c93 196 int P4(pthread_cond_signal)(P4(pthread_cond_t)* cond)
Osamu Nakamura 0:7cc000799c93 197 {
Osamu Nakamura 0:7cc000799c93 198 TRACE(ENTER "pthread_cond_signal(cond=%p)", cond);
Osamu Nakamura 0:7cc000799c93 199 int rc = posix::pthread::cond::signal( cond );
Osamu Nakamura 0:7cc000799c93 200 TRACE(LEAVE "pthread_cond_signal(cond=%p) = %d", cond, rc);
Osamu Nakamura 0:7cc000799c93 201 return rc;
Osamu Nakamura 0:7cc000799c93 202 }
Osamu Nakamura 0:7cc000799c93 203
Osamu Nakamura 0:7cc000799c93 204 int P4(pthread_cond_wait)(P4(pthread_cond_t)* cond, P4(pthread_mutex_t)* mutex)
Osamu Nakamura 0:7cc000799c93 205 {
Osamu Nakamura 0:7cc000799c93 206 TRACE(ENTER "pthread_cond_wait(cond=%p, mutex=%p)", cond, mutex);
Osamu Nakamura 0:7cc000799c93 207 int rc = posix::pthread::cond::wait( cond, mutex );
Osamu Nakamura 0:7cc000799c93 208 TRACE(LEAVE "pthread_cond_wait(cond=%p, mutex=%p) = %d", cond, mutex, rc);
Osamu Nakamura 0:7cc000799c93 209 return rc;
Osamu Nakamura 0:7cc000799c93 210 }
Osamu Nakamura 0:7cc000799c93 211
Osamu Nakamura 0:7cc000799c93 212 int P4(pthread_condattr_destroy)(P4(pthread_condattr_t)* attr)
Osamu Nakamura 0:7cc000799c93 213 {
Osamu Nakamura 0:7cc000799c93 214 TRACE(ENTER "pthread_condattr_destroy(attr=%p)", attr);
Osamu Nakamura 0:7cc000799c93 215 int rc = posix::pthread::condattr::destroy( attr );
Osamu Nakamura 0:7cc000799c93 216 TRACE(LEAVE "pthread_condattr_destroy(attr=%p) = %d", attr, rc);
Osamu Nakamura 0:7cc000799c93 217 return rc;
Osamu Nakamura 0:7cc000799c93 218 }
Osamu Nakamura 0:7cc000799c93 219
Osamu Nakamura 0:7cc000799c93 220 int P4(pthread_condattr_init)(P4(pthread_condattr_t)* attr)
Osamu Nakamura 0:7cc000799c93 221 {
Osamu Nakamura 0:7cc000799c93 222 TRACE(ENTER "pthread_condattr_init(attr=%p)", attr);
Osamu Nakamura 0:7cc000799c93 223 int rc = posix::pthread::condattr::init( attr );
Osamu Nakamura 0:7cc000799c93 224 TRACE(LEAVE "pthread_condattr_init(attr=%p) = %d", attr, rc);
Osamu Nakamura 0:7cc000799c93 225 return rc;
Osamu Nakamura 0:7cc000799c93 226 }
Osamu Nakamura 0:7cc000799c93 227
Osamu Nakamura 0:7cc000799c93 228 int P4(pthread_condattr_setclock)(P4(pthread_condattr_t)* attr, P4(clockid_t) clock_id)
Osamu Nakamura 0:7cc000799c93 229 {
Osamu Nakamura 0:7cc000799c93 230 TRACE(ENTER "pthread_condattr_setclock(attr=%p, clock_id=%lu)", attr, clock_id);
Osamu Nakamura 0:7cc000799c93 231 int rc = posix::pthread::condattr::setclock( attr, clock_id );
Osamu Nakamura 0:7cc000799c93 232 TRACE(LEAVE "pthread_condattr_setclock(attr=%p, clock_id=%lu) = %d", attr, clock_id, rc);
Osamu Nakamura 0:7cc000799c93 233 return rc;
Osamu Nakamura 0:7cc000799c93 234 }
Osamu Nakamura 0:7cc000799c93 235
Osamu Nakamura 0:7cc000799c93 236 int P4(pthread_mutex_destroy)(P4(pthread_mutex_t)* mutex)
Osamu Nakamura 0:7cc000799c93 237 {
Osamu Nakamura 0:7cc000799c93 238 TRACE(ENTER "pthread_mutex_destroy(mutex=%p)", mutex);
Osamu Nakamura 0:7cc000799c93 239 int rc = posix::pthread::mutex::destroy( mutex );
Osamu Nakamura 0:7cc000799c93 240 TRACE(LEAVE "pthread_mutex_destroy(mutex=%p) = %d", mutex, rc);
Osamu Nakamura 0:7cc000799c93 241 return rc;
Osamu Nakamura 0:7cc000799c93 242 }
Osamu Nakamura 0:7cc000799c93 243
Osamu Nakamura 0:7cc000799c93 244 int P4(pthread_mutex_init)(P4(pthread_mutex_t)* mutex, const P4(pthread_mutexattr_t)* mutexattr)
Osamu Nakamura 0:7cc000799c93 245 {
Osamu Nakamura 0:7cc000799c93 246 TRACE(ENTER "pthread_mutex_init(mutex=%p, mutexattr=%p)", mutex, mutexattr);
Osamu Nakamura 0:7cc000799c93 247 int rc = posix::pthread::mutex::init( mutex, mutexattr );
Osamu Nakamura 0:7cc000799c93 248 TRACE(LEAVE "pthread_mutex_init(mutex=%p, mutexattr=%p) = %d", mutex, mutexattr, rc);
Osamu Nakamura 0:7cc000799c93 249 return rc;
Osamu Nakamura 0:7cc000799c93 250 }
Osamu Nakamura 0:7cc000799c93 251
Osamu Nakamura 0:7cc000799c93 252 int P4(pthread_mutex_lock)(P4(pthread_mutex_t)* mutex)
Osamu Nakamura 0:7cc000799c93 253 {
Osamu Nakamura 0:7cc000799c93 254 TRACE(ENTER "pthread_mutex_lock(mutex=%p)", mutex);
Osamu Nakamura 0:7cc000799c93 255 int rc = posix::pthread::mutex::lock( mutex );
Osamu Nakamura 0:7cc000799c93 256 TRACE(LEAVE "pthread_mutex_lock(mutex=%p) = %d", mutex, rc);
Osamu Nakamura 0:7cc000799c93 257 return rc;
Osamu Nakamura 0:7cc000799c93 258 }
Osamu Nakamura 0:7cc000799c93 259
Osamu Nakamura 0:7cc000799c93 260 int P4(pthread_mutex_unlock)(P4(pthread_mutex_t)* mutex)
Osamu Nakamura 0:7cc000799c93 261 {
Osamu Nakamura 0:7cc000799c93 262 TRACE(ENTER "pthread_mutex_unlock(mutex=%p)", mutex);
Osamu Nakamura 0:7cc000799c93 263 int rc = posix::pthread::mutex::unlock( mutex );
Osamu Nakamura 0:7cc000799c93 264 TRACE(LEAVE "pthread_mutex_unlock(mutex=%p) = %d", mutex, rc);
Osamu Nakamura 0:7cc000799c93 265 return rc;
Osamu Nakamura 0:7cc000799c93 266 }
Osamu Nakamura 0:7cc000799c93 267
Osamu Nakamura 0:7cc000799c93 268 int P4(pthread_rwlock_destroy)(P4(pthread_rwlock_t)* rwlock)
Osamu Nakamura 0:7cc000799c93 269 {
Osamu Nakamura 0:7cc000799c93 270 TRACE(ENTER "pthread_rwlock_destroy(rwlock=%p)", rwlock);
Osamu Nakamura 0:7cc000799c93 271 int rc = posix::pthread::rwlock::destroy( rwlock );
Osamu Nakamura 0:7cc000799c93 272 TRACE(LEAVE "pthread_rwlock_destroy(rwlock=%p) = %d", rwlock, rc);
Osamu Nakamura 0:7cc000799c93 273 return rc;
Osamu Nakamura 0:7cc000799c93 274 }
Osamu Nakamura 0:7cc000799c93 275
Osamu Nakamura 0:7cc000799c93 276 int P4(pthread_rwlock_init)(P4(pthread_rwlock_t)* rwlock, const P4(pthread_rwlockattr_t)* attr)
Osamu Nakamura 0:7cc000799c93 277 {
Osamu Nakamura 0:7cc000799c93 278 TRACE(ENTER "pthread_rwlock_init(rwlock=%p, attr=%p)", rwlock, attr);
Osamu Nakamura 0:7cc000799c93 279 int rc = posix::pthread::rwlock::init( rwlock, attr );
Osamu Nakamura 0:7cc000799c93 280 TRACE(LEAVE "pthread_rwlock_init(rwlock=%p, attr=%p) = %d", rwlock, attr, rc);
Osamu Nakamura 0:7cc000799c93 281 return rc;
Osamu Nakamura 0:7cc000799c93 282 }
Osamu Nakamura 0:7cc000799c93 283
Osamu Nakamura 0:7cc000799c93 284 int P4(pthread_rwlock_rdlock)(P4(pthread_rwlock_t)* rwlock)
Osamu Nakamura 0:7cc000799c93 285 {
Osamu Nakamura 0:7cc000799c93 286 TRACE(ENTER "pthread_rwlock_rdlock(rwlock=%p)", rwlock);
Osamu Nakamura 0:7cc000799c93 287 int rc = posix::pthread::rwlock::rdlock( rwlock );
Osamu Nakamura 0:7cc000799c93 288 TRACE(LEAVE "pthread_rwlock_rdlock(rwlock=%p) = %d", rwlock, rc);
Osamu Nakamura 0:7cc000799c93 289 return rc;
Osamu Nakamura 0:7cc000799c93 290 }
Osamu Nakamura 0:7cc000799c93 291
Osamu Nakamura 0:7cc000799c93 292 int P4(pthread_rwlock_unlock)(P4(pthread_rwlock_t)* rwlock)
Osamu Nakamura 0:7cc000799c93 293 {
Osamu Nakamura 0:7cc000799c93 294 TRACE(ENTER "pthread_rwlock_unlock(rwlock=%p)", rwlock);
Osamu Nakamura 0:7cc000799c93 295 int rc = posix::pthread::rwlock::unlock( rwlock );
Osamu Nakamura 0:7cc000799c93 296 TRACE(LEAVE "pthread_rwlock_unlock(rwlock=%p) = %d", rwlock, rc);
Osamu Nakamura 0:7cc000799c93 297 return rc;
Osamu Nakamura 0:7cc000799c93 298 }
Osamu Nakamura 0:7cc000799c93 299
Osamu Nakamura 0:7cc000799c93 300 struct P4(cmsghdr)* P4(cmsg_nxthdr)(struct P4(msghdr)* mhdr, struct P4(cmsghdr)* cmsg)
Osamu Nakamura 0:7cc000799c93 301 {
Osamu Nakamura 0:7cc000799c93 302 #define OFFSET(addr, bytes) ((void*)((char*)addr + bytes))
Osamu Nakamura 0:7cc000799c93 303 if((P4(size_t))cmsg->cmsg_len < sizeof( struct P4(cmsghdr) )) {
Osamu Nakamura 0:7cc000799c93 304 return 0;
Osamu Nakamura 0:7cc000799c93 305 }
Osamu Nakamura 0:7cc000799c93 306 cmsg = (struct P4(cmsghdr)*)OFFSET( cmsg, CMSG_ALIGN( cmsg->cmsg_len ) );
Osamu Nakamura 0:7cc000799c93 307 if( cmsg + 1 > OFFSET( mhdr->msg_control, mhdr->msg_controllen ) ) {
Osamu Nakamura 0:7cc000799c93 308 return 0;
Osamu Nakamura 0:7cc000799c93 309 }
Osamu Nakamura 0:7cc000799c93 310 if( OFFSET( cmsg, CMSG_ALIGN( cmsg->cmsg_len ) ) > OFFSET( mhdr->msg_control, mhdr->msg_controllen ) ) {
Osamu Nakamura 0:7cc000799c93 311 return 0;
Osamu Nakamura 0:7cc000799c93 312 }
Osamu Nakamura 0:7cc000799c93 313 #undef OFFSET
Osamu Nakamura 0:7cc000799c93 314 return cmsg;
Osamu Nakamura 0:7cc000799c93 315 }
Osamu Nakamura 0:7cc000799c93 316
Osamu Nakamura 0:7cc000799c93 317 int P4(accept)(int sockfd, struct P4(sockaddr)* addr, P4(socklen_t)* addrlen)
Osamu Nakamura 0:7cc000799c93 318 {
Osamu Nakamura 0:7cc000799c93 319 TRACE(ENTER "accept(sockfd=%d, addr=%p, addrlen=%p)", sockfd, addr, addrlen);
Osamu Nakamura 0:7cc000799c93 320 int rc = posix::sock::accept( sockfd, addr, addrlen );
Osamu Nakamura 0:7cc000799c93 321 TRACE(LEAVE "accept(sockfd=%d, addr=%p, addrlen=%p) = %d(errno:%d)", sockfd, addr, addrlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 322 return rc;
Osamu Nakamura 0:7cc000799c93 323 }
Osamu Nakamura 0:7cc000799c93 324
Osamu Nakamura 0:7cc000799c93 325 int P4(bind)(int sockfd, const struct P4(sockaddr)* addr, P4(socklen_t) addrlen)
Osamu Nakamura 0:7cc000799c93 326 {
Osamu Nakamura 0:7cc000799c93 327 TRACE(ENTER "bind(sockfd=%d, addr=%p, addrlen=%lu)", sockfd, addr, addrlen);
Osamu Nakamura 0:7cc000799c93 328 int rc = posix::sock::bind( sockfd, addr, addrlen );
Osamu Nakamura 0:7cc000799c93 329 TRACE(LEAVE "bind(sockfd=%d, addr=%p, addrlen=%lu) = %d(errno:%d)", sockfd, addr, addrlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 330 return rc;
Osamu Nakamura 0:7cc000799c93 331 }
Osamu Nakamura 0:7cc000799c93 332
Osamu Nakamura 0:7cc000799c93 333 int P4(connect)(int sockfd, const struct P4(sockaddr)* addr, P4(socklen_t) addrlen)
Osamu Nakamura 0:7cc000799c93 334 {
Osamu Nakamura 0:7cc000799c93 335 TRACE(ENTER "connect(sockfd=%d, addr=%p, addrlen=%lu)", sockfd, addr, addrlen);
Osamu Nakamura 0:7cc000799c93 336 int rc = posix::sock::connect( sockfd, addr, addrlen );
Osamu Nakamura 0:7cc000799c93 337 TRACE(LEAVE "connect(sockfd=%d, addr=%p, addrlen=%lu) = %d(errno:%d)", sockfd, addr, addrlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 338 return rc;
Osamu Nakamura 0:7cc000799c93 339 }
Osamu Nakamura 0:7cc000799c93 340
Osamu Nakamura 0:7cc000799c93 341 void P4(freeaddrinfo)(struct P4(addrinfo)* res)
Osamu Nakamura 0:7cc000799c93 342 {
Osamu Nakamura 0:7cc000799c93 343 TRACE(ENTER "freeaddrinfo(res=%p)", res);
Osamu Nakamura 0:7cc000799c93 344 posix::sock::freeaddrinfo( res );
Osamu Nakamura 0:7cc000799c93 345 TRACE(LEAVE "freeaddrinfo(res=%p)", res);
Osamu Nakamura 0:7cc000799c93 346 }
Osamu Nakamura 0:7cc000799c93 347
Osamu Nakamura 0:7cc000799c93 348 int P4(getaddrinfo)(const char* node, const char* service, const struct P4(addrinfo)* hints, struct P4(addrinfo)** res)
Osamu Nakamura 0:7cc000799c93 349 {
Osamu Nakamura 0:7cc000799c93 350 TRACE(ENTER "getaddrinfo(node={%s}, service={%s}, hints=%p, res=%p)", safe_str(node), safe_str(service), hints, res);
Osamu Nakamura 0:7cc000799c93 351 int rc = posix::sock::getaddrinfo( node, service, hints, res );
Osamu Nakamura 0:7cc000799c93 352 TRACE(LEAVE "getaddrinfo(node={%s}, service={%s}, hints=%p, res=%p) = %d", safe_str(node), safe_str(service), hints, res, rc);
Osamu Nakamura 0:7cc000799c93 353 return rc;
Osamu Nakamura 0:7cc000799c93 354 }
Osamu Nakamura 0:7cc000799c93 355
Osamu Nakamura 0:7cc000799c93 356 int P4(getsockname)(int sockfd, struct P4(sockaddr)* addr, P4(socklen_t)* addrlen)
Osamu Nakamura 0:7cc000799c93 357 {
Osamu Nakamura 0:7cc000799c93 358 TRACE(ENTER "getsockname(sockfd=%d, addr=%p, addrlen={%ld})", sockfd, addr, *addrlen);
Osamu Nakamura 0:7cc000799c93 359 int rc = posix::sock::getsockname( sockfd, addr, addrlen );
Osamu Nakamura 0:7cc000799c93 360 TRACE(LEAVE "getsockname(sockfd=%d, addr=%p, addrlen={%ld}) = %d(errno:%d)", sockfd, addr, *addrlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 361 return rc;
Osamu Nakamura 0:7cc000799c93 362 }
Osamu Nakamura 0:7cc000799c93 363
Osamu Nakamura 0:7cc000799c93 364 int P4(getsockopt)(int sockfd, int level, int optname, void* optval, P4(socklen_t)* optlen)
Osamu Nakamura 0:7cc000799c93 365 {
Osamu Nakamura 0:7cc000799c93 366 TRACE(ENTER "getsockopt(sockfd=%d, level=%d, optname=%d, optval=%p, optlen=%p)", sockfd, level, optname, optval, optlen);
Osamu Nakamura 0:7cc000799c93 367 uint32_t rc = posix::sock::getsockopt( sockfd, level, optname, optval, optlen );
Osamu Nakamura 0:7cc000799c93 368 TRACE(LEAVE "getsockopt(sockfd=%d, level=%d, optname=%d, optval=%p, optlen=%p) = %lu(errno:%d)", sockfd, level, optname, optval, optlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 369 return rc;
Osamu Nakamura 0:7cc000799c93 370 }
Osamu Nakamura 0:7cc000799c93 371
Osamu Nakamura 0:7cc000799c93 372 uint32_t P4(htonl)(uint32_t hostlong)
Osamu Nakamura 0:7cc000799c93 373 {
Osamu Nakamura 0:7cc000799c93 374 TRACE(ENTER "htonl(hostlong=0x%08lX)", hostlong);
Osamu Nakamura 0:7cc000799c93 375 uint32_t rc = posix::sock::htonl( hostlong );
Osamu Nakamura 0:7cc000799c93 376 TRACE(LEAVE "htonl(hostlong=0x%08lX) = 0x%08lX", hostlong, rc);
Osamu Nakamura 0:7cc000799c93 377 return rc;
Osamu Nakamura 0:7cc000799c93 378 }
Osamu Nakamura 0:7cc000799c93 379
Osamu Nakamura 0:7cc000799c93 380 uint16_t P4(htons)(uint16_t hostshort)
Osamu Nakamura 0:7cc000799c93 381 {
Osamu Nakamura 0:7cc000799c93 382 TRACE(ENTER "htons(hostshort=0x%04X)", hostshort);
Osamu Nakamura 0:7cc000799c93 383 uint16_t rc = posix::sock::htons( hostshort );
Osamu Nakamura 0:7cc000799c93 384 TRACE(LEAVE "htons(hostshort=0x%04X) = 0x%04X", hostshort, rc);
Osamu Nakamura 0:7cc000799c93 385 return rc;
Osamu Nakamura 0:7cc000799c93 386 }
Osamu Nakamura 0:7cc000799c93 387
Osamu Nakamura 0:7cc000799c93 388 unsigned int P4(if_nametoindex)(const char* ifname)
Osamu Nakamura 0:7cc000799c93 389 {
Osamu Nakamura 0:7cc000799c93 390 TRACE(ENTER "if_nametoindex(ifname={%s})", safe_str(ifname));
Osamu Nakamura 0:7cc000799c93 391 unsigned int rc = posix::sock::if_nametoindex( ifname );
Osamu Nakamura 0:7cc000799c93 392 TRACE(LEAVE "if_nametoindex(ifname={%s}) = %u(errno:%d)", safe_str(ifname), rc, errno);
Osamu Nakamura 0:7cc000799c93 393 return rc;
Osamu Nakamura 0:7cc000799c93 394 }
Osamu Nakamura 0:7cc000799c93 395
Osamu Nakamura 0:7cc000799c93 396 int P4(listen)(int sockfd, int backlog)
Osamu Nakamura 0:7cc000799c93 397 {
Osamu Nakamura 0:7cc000799c93 398 TRACE(ENTER "listen(sockfd=%d, backlog=%d)", sockfd, backlog);
Osamu Nakamura 0:7cc000799c93 399 int rc = posix::sock::listen( sockfd, backlog );
Osamu Nakamura 0:7cc000799c93 400 TRACE(LEAVE "listen(sockfd=%d, backlog=%d) = %d(errno:%d)", sockfd, backlog, rc, errno);
Osamu Nakamura 0:7cc000799c93 401 return rc;
Osamu Nakamura 0:7cc000799c93 402 }
Osamu Nakamura 0:7cc000799c93 403
Osamu Nakamura 0:7cc000799c93 404 uint16_t P4(ntohs)(uint16_t netshort)
Osamu Nakamura 0:7cc000799c93 405 {
Osamu Nakamura 0:7cc000799c93 406 TRACE(ENTER "ntohs(netshort=0x%04X)", netshort);
Osamu Nakamura 0:7cc000799c93 407 uint16_t rc = posix::sock::ntohs( netshort );
Osamu Nakamura 0:7cc000799c93 408 TRACE(LEAVE "ntohs(netshort=0x%04X) = 0x%04X", netshort, rc);
Osamu Nakamura 0:7cc000799c93 409 return rc;
Osamu Nakamura 0:7cc000799c93 410 }
Osamu Nakamura 0:7cc000799c93 411
Osamu Nakamura 0:7cc000799c93 412 P4(ssize_t) P4(recvmsg)(int sockfd, struct P4(msghdr)* msg, int flags)
Osamu Nakamura 0:7cc000799c93 413 {
Osamu Nakamura 0:7cc000799c93 414 TRACE(ENTER "recvmsg(sockfd=%d, msg=%p, flags=%d)", sockfd, msg, flags);
Osamu Nakamura 0:7cc000799c93 415 P4(ssize_t) rc = posix::sock::recvmsg( sockfd, msg, flags );
Osamu Nakamura 0:7cc000799c93 416 TRACE(LEAVE "recvmsg(sockfd=%d, msg=%p, flags=%d) = %d(errno:%d)", sockfd, msg, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 417 return rc;
Osamu Nakamura 0:7cc000799c93 418 }
Osamu Nakamura 0:7cc000799c93 419
Osamu Nakamura 0:7cc000799c93 420 P4(ssize_t) P4(sendmsg)(int sockfd, const struct P4(msghdr)* msg, int flags)
Osamu Nakamura 0:7cc000799c93 421 {
Osamu Nakamura 0:7cc000799c93 422 TRACE(ENTER "sendmsg(sockfd=%d, msg=%p, flags=%d)", sockfd, msg, flags);
Osamu Nakamura 0:7cc000799c93 423 P4(ssize_t) rc = posix::sock::sendmsg( sockfd, msg, flags );
Osamu Nakamura 0:7cc000799c93 424 TRACE(LEAVE "sendmsg(sockfd=%d, msg=%p, flags=%d) = %d(errno:%d)", sockfd, msg, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 425 return rc;
Osamu Nakamura 0:7cc000799c93 426 }
Osamu Nakamura 0:7cc000799c93 427
Osamu Nakamura 0:7cc000799c93 428 int P4(setsockopt)(int sockfd, int level, int optname, const void* optval, P4(socklen_t) optlen)
Osamu Nakamura 0:7cc000799c93 429 {
Osamu Nakamura 0:7cc000799c93 430 TRACE(ENTER "setsockopt(sockfd=%d, level=%d, optname=%d, optval=%p, optlen=%lu)", sockfd, level, optname, optval, optlen);
Osamu Nakamura 0:7cc000799c93 431 int rc = posix::sock::setsockopt( sockfd, level, optname, optval, optlen );
Osamu Nakamura 0:7cc000799c93 432 TRACE(LEAVE "setsockopt(sockfd=%d, level=%d, optname=%d, optval=%p, optlen=%lu) = %d(errno:%d)", sockfd, level, optname, optval, optlen, rc, errno);
Osamu Nakamura 0:7cc000799c93 433 return rc;
Osamu Nakamura 0:7cc000799c93 434 }
Osamu Nakamura 0:7cc000799c93 435
Osamu Nakamura 0:7cc000799c93 436 int P4(shutdown)(int sockfd, int how)
Osamu Nakamura 0:7cc000799c93 437 {
Osamu Nakamura 0:7cc000799c93 438 TRACE(ENTER "shutdown(sockfd=%d, how=%d)", sockfd, how);
Osamu Nakamura 0:7cc000799c93 439 int rc = posix::sock::shutdown( sockfd, how );
Osamu Nakamura 0:7cc000799c93 440 TRACE(LEAVE "shutdown(sockfd=%d, how=%d) = %d(errno:%d)", sockfd, how, rc, errno);
Osamu Nakamura 0:7cc000799c93 441 return rc;
Osamu Nakamura 0:7cc000799c93 442 }
Osamu Nakamura 0:7cc000799c93 443
Osamu Nakamura 0:7cc000799c93 444 int P4(socket)(int domain, int type, int protocol)
Osamu Nakamura 0:7cc000799c93 445 {
Osamu Nakamura 0:7cc000799c93 446 TRACE(ENTER "socket(domain=%d, type=%d, protocol=%d)", domain, type, protocol);
Osamu Nakamura 0:7cc000799c93 447 int rc = posix::sock::socket( domain, type, protocol );
Osamu Nakamura 0:7cc000799c93 448 TRACE(LEAVE "socket(domain=%d, type=%d, protocol=%d) = %d(errno:%d)", domain, type, protocol, rc, errno);
Osamu Nakamura 0:7cc000799c93 449 return rc;
Osamu Nakamura 0:7cc000799c93 450 }
Osamu Nakamura 0:7cc000799c93 451
Osamu Nakamura 0:7cc000799c93 452 int P4(nanosleep)(const struct P4(timespec)* req, struct P4(timespec)* rem)
Osamu Nakamura 0:7cc000799c93 453 {
Osamu Nakamura 0:7cc000799c93 454 return posix::sys::nanosleep( req, rem );
Osamu Nakamura 0:7cc000799c93 455 }
Osamu Nakamura 0:7cc000799c93 456
Osamu Nakamura 0:7cc000799c93 457 int P4(pipe)(int pipefd[2])
Osamu Nakamura 0:7cc000799c93 458 {
Osamu Nakamura 0:7cc000799c93 459 TRACE(ENTER "pipe(pipefd[2]=[%d,%d])", pipefd[0], pipefd[1]);
Osamu Nakamura 0:7cc000799c93 460 int rc = posix::sys::pipe( pipefd );
Osamu Nakamura 0:7cc000799c93 461 TRACE(LEAVE "pipe(pipefd[2]=[%d,%d]) = %d(errno:%d)", pipefd[0], pipefd[1], rc, errno);
Osamu Nakamura 0:7cc000799c93 462 return rc;
Osamu Nakamura 0:7cc000799c93 463 }
Osamu Nakamura 0:7cc000799c93 464
Osamu Nakamura 0:7cc000799c93 465 long P4(sysconf)(int name)
Osamu Nakamura 0:7cc000799c93 466 {
Osamu Nakamura 0:7cc000799c93 467 TRACE(ENTER "sysconf(name=%d)", name);
Osamu Nakamura 0:7cc000799c93 468 long rc = posix::sys::sysconf( name );
Osamu Nakamura 0:7cc000799c93 469 TRACE(LEAVE "sysconf(name=%d) = %ld(errno:%d)", name, rc, errno);
Osamu Nakamura 0:7cc000799c93 470 return rc;
Osamu Nakamura 0:7cc000799c93 471 }
Osamu Nakamura 0:7cc000799c93 472
Osamu Nakamura 0:7cc000799c93 473
Osamu Nakamura 0:7cc000799c93 474 P4(ssize_t) P4(preadv)(int fd, const struct P4(iovec)* iov, int iovcnt, P4(off_t) offset)
Osamu Nakamura 0:7cc000799c93 475 {
Osamu Nakamura 0:7cc000799c93 476 TRACE(ENTER "preadv(fd=%d, iov=%p, iovcnt=%d, offset=%ld)", fd, iov, iovcnt, offset);
Osamu Nakamura 0:7cc000799c93 477 P4(ssize_t) rc = linux::preadv( fd, iov, iovcnt, offset );
Osamu Nakamura 0:7cc000799c93 478 TRACE(LEAVE "preadv(fd=%d, iov=%p, iovcnt=%d, offset=%ld) = %d(errno:%d)", fd, iov, iovcnt, offset, rc, errno);
Osamu Nakamura 0:7cc000799c93 479 return rc;
Osamu Nakamura 0:7cc000799c93 480 }
Osamu Nakamura 0:7cc000799c93 481
Osamu Nakamura 0:7cc000799c93 482 P4(ssize_t) P4(pwritev)(int fd, const struct P4(iovec)* iov, int iovcnt, P4(off_t) offset)
Osamu Nakamura 0:7cc000799c93 483 {
Osamu Nakamura 0:7cc000799c93 484 TRACE(ENTER "pwritev(fd=%d, iov=%p, iovcnt=%d, offset=%ld)", fd, iov, iovcnt, offset);
Osamu Nakamura 0:7cc000799c93 485 P4(ssize_t) rc = linux::pwritev( fd, iov, iovcnt, offset );
Osamu Nakamura 0:7cc000799c93 486 TRACE(LEAVE "pwritev(fd=%d, iov=%p, iovcnt=%d, offset=%ld) = %d(errno:%d)", fd, iov, iovcnt, offset, rc, errno);
Osamu Nakamura 0:7cc000799c93 487 return rc;
Osamu Nakamura 0:7cc000799c93 488 }
Osamu Nakamura 0:7cc000799c93 489
Osamu Nakamura 0:7cc000799c93 490 int P4(epoll_create)(int size)
Osamu Nakamura 0:7cc000799c93 491 {
Osamu Nakamura 0:7cc000799c93 492 TRACE(ENTER "epoll_create(size=%d)", size);
Osamu Nakamura 0:7cc000799c93 493 int rc = linux::epoll::create( size );
Osamu Nakamura 0:7cc000799c93 494 TRACE(LEAVE "epoll_create(size=%d) = %d(errno:%d)", size, rc, errno);
Osamu Nakamura 0:7cc000799c93 495 return rc;
Osamu Nakamura 0:7cc000799c93 496 }
Osamu Nakamura 0:7cc000799c93 497
Osamu Nakamura 0:7cc000799c93 498 int P4(epoll_create1)(int flags)
Osamu Nakamura 0:7cc000799c93 499 {
Osamu Nakamura 0:7cc000799c93 500 TRACE(ENTER "epoll_create1(flags=0x%08X)", flags);
Osamu Nakamura 0:7cc000799c93 501 int rc = linux::epoll::create1( flags );
Osamu Nakamura 0:7cc000799c93 502 TRACE(LEAVE "epoll_create1(flags=0x%08X) = %d(errno:%d)", flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 503 return rc;
Osamu Nakamura 0:7cc000799c93 504 }
Osamu Nakamura 0:7cc000799c93 505
Osamu Nakamura 0:7cc000799c93 506 int P4(epoll_ctl)(int epfd, int op, int fd, struct P4(poll_event)* event)
Osamu Nakamura 0:7cc000799c93 507 {
Osamu Nakamura 0:7cc000799c93 508 TRACE(ENTER "epoll_ctl(epfd=%d, op=%d, fd=%d, event=%p{0x%08lX})", epfd, op, fd, event, event->events);
Osamu Nakamura 0:7cc000799c93 509 int rc = linux::epoll::ctl( epfd, op, fd, event );
Osamu Nakamura 0:7cc000799c93 510 TRACE(LEAVE "epoll_ctl(epfd=%d, op=%d, fd=%d, event=%p) = %d(errno:%d)", epfd, op, fd, event, rc, errno);
Osamu Nakamura 0:7cc000799c93 511 return rc;
Osamu Nakamura 0:7cc000799c93 512 }
Osamu Nakamura 0:7cc000799c93 513
Osamu Nakamura 0:7cc000799c93 514 int P4(epoll_pwait)(int epfd, struct P4(poll_event)* events, int maxevents, int timeout, const P4(sigset_t)* sigmask)
Osamu Nakamura 0:7cc000799c93 515 {
Osamu Nakamura 0:7cc000799c93 516 TRACE(ENTER "epoll_pwait(epfd=%d, events=%p, maxevents=%d, timeout=%d, sigmask=%p)", epfd, events, maxevents, timeout, sigmask);
Osamu Nakamura 0:7cc000799c93 517 int rc = linux::epoll::pwait( epfd, events, maxevents, timeout, sigmask );
Osamu Nakamura 0:7cc000799c93 518 TRACE(LEAVE "epoll_pwait(epfd=%d, events=%p, maxevents=%d, timeout=%d, sigmask=%p) = %d(errno:%d)", epfd, events, maxevents, timeout, sigmask, rc, errno);
Osamu Nakamura 0:7cc000799c93 519 return rc;
Osamu Nakamura 0:7cc000799c93 520 }
Osamu Nakamura 0:7cc000799c93 521
Osamu Nakamura 0:7cc000799c93 522 int P4(epoll_wait)(int epfd, struct P4(poll_event)* events, int maxevents, int timeout)
Osamu Nakamura 0:7cc000799c93 523 {
Osamu Nakamura 0:7cc000799c93 524 TRACE(ENTER "epoll_wait(epfd=%d, events=%p, maxevents=%d, timeout=%d)", epfd, events, maxevents, timeout);
Osamu Nakamura 0:7cc000799c93 525 int rc = linux::epoll::wait( epfd, events, maxevents, timeout );
Osamu Nakamura 0:7cc000799c93 526 TRACE(LEAVE "epoll_wait(epfd=%d, events=%p, maxevents=%d, timeout=%d) = %d(errno:%d)", epfd, events, maxevents, timeout, rc, errno);
Osamu Nakamura 0:7cc000799c93 527 return rc;
Osamu Nakamura 0:7cc000799c93 528 }
Osamu Nakamura 0:7cc000799c93 529
Osamu Nakamura 0:7cc000799c93 530 int P4(eventfd)(unsigned int initval, int flags)
Osamu Nakamura 0:7cc000799c93 531 {
Osamu Nakamura 0:7cc000799c93 532 TRACE(ENTER "eventfd(initval=%u, flags=%d)", initval, flags);
Osamu Nakamura 0:7cc000799c93 533 int rc = linux::epoll::eventfd( initval, flags );
Osamu Nakamura 0:7cc000799c93 534 TRACE(LEAVE "eventfd(initval=%u, flags=%d) = %d(errno:%d)", initval, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 535 return rc;
Osamu Nakamura 0:7cc000799c93 536 }
Osamu Nakamura 0:7cc000799c93 537
Osamu Nakamura 0:7cc000799c93 538 int P4(eventfd2)(unsigned int initval, int flags)
Osamu Nakamura 0:7cc000799c93 539 {
Osamu Nakamura 0:7cc000799c93 540 TRACE(ENTER "eventfd2(initval=%u, flags=0x%08X)", initval, flags);
Osamu Nakamura 0:7cc000799c93 541 int rc = linux::epoll::eventfd2( initval, flags );
Osamu Nakamura 0:7cc000799c93 542 TRACE(LEAVE "eventfd2(initval=%u, flags=0x%08X) = %d(errno:%d)", initval, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 543 return rc;
Osamu Nakamura 0:7cc000799c93 544 }
Osamu Nakamura 0:7cc000799c93 545
Osamu Nakamura 0:7cc000799c93 546 int P4(accept4)(int fd, struct P4(sockaddr)* addr, P4(socklen_t)* addr_len, int flags)
Osamu Nakamura 0:7cc000799c93 547 {
Osamu Nakamura 0:7cc000799c93 548 TRACE(ENTER "accept4(fd=%d, addr=%p, addr_len=%p, flags=%d)", fd, addr, addr_len, flags);
Osamu Nakamura 0:7cc000799c93 549 int rc = linux::sock::accept4( fd, addr, addr_len, flags );
Osamu Nakamura 0:7cc000799c93 550 TRACE(LEAVE "accept4(fd=%d, addr=%p, addr_len=%p, flags=%d) = %d(errno:%d)", fd, addr, addr_len, flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 551 return rc;
Osamu Nakamura 0:7cc000799c93 552 }
Osamu Nakamura 0:7cc000799c93 553
Osamu Nakamura 0:7cc000799c93 554 int P4(socketcall)(int call, unsigned long* args)
Osamu Nakamura 0:7cc000799c93 555 {
Osamu Nakamura 0:7cc000799c93 556 TRACE(ENTER "socketcall(call=%d, args=%p)", call, args);
Osamu Nakamura 0:7cc000799c93 557 int rc = linux::sock::socketcall( call, args );
Osamu Nakamura 0:7cc000799c93 558 TRACE(LEAVE "socketcall(call=%d, args=%p) = %d(errno:%d)", call, args, rc, errno);
Osamu Nakamura 0:7cc000799c93 559 return rc;
Osamu Nakamura 0:7cc000799c93 560 }
Osamu Nakamura 0:7cc000799c93 561
Osamu Nakamura 0:7cc000799c93 562 int P4(ioctl)(int fd, unsigned long request, ...)
Osamu Nakamura 0:7cc000799c93 563 {
Osamu Nakamura 0:7cc000799c93 564 TRACE(ENTER "ioctl(fd=%d, request=0x%08lX, ...)", fd, request);
Osamu Nakamura 0:7cc000799c93 565 va_list args;
Osamu Nakamura 0:7cc000799c93 566 va_start( args, request );
Osamu Nakamura 0:7cc000799c93 567 int rc = linux::sys::ioctl( fd, request, args );
Osamu Nakamura 0:7cc000799c93 568 va_end( args );
Osamu Nakamura 0:7cc000799c93 569 TRACE(LEAVE "ioctl(fd=%d, request=0x%08lX, ...) = %d(errno:%d)", fd, request, rc, errno);
Osamu Nakamura 0:7cc000799c93 570 return rc;
Osamu Nakamura 0:7cc000799c93 571 }
Osamu Nakamura 0:7cc000799c93 572
Osamu Nakamura 0:7cc000799c93 573 long P4(syscall)(long number, ...)
Osamu Nakamura 0:7cc000799c93 574 {
Osamu Nakamura 0:7cc000799c93 575 TRACE(ENTER "syscall(number=%ld, ...)", number);
Osamu Nakamura 0:7cc000799c93 576 va_list args;
Osamu Nakamura 0:7cc000799c93 577 va_start( args, number );
Osamu Nakamura 0:7cc000799c93 578 long rc = linux::sys::syscall( number, args );
Osamu Nakamura 0:7cc000799c93 579 va_end( args );
Osamu Nakamura 0:7cc000799c93 580 TRACE(LEAVE "syscall(number=%ld, ...) = %ld(errno:%d)", number, rc, errno);
Osamu Nakamura 0:7cc000799c93 581 return rc;
Osamu Nakamura 0:7cc000799c93 582 }
Osamu Nakamura 0:7cc000799c93 583
Osamu Nakamura 0:7cc000799c93 584 int P4(pipe2)(int pipefd[2], int flags)
Osamu Nakamura 0:7cc000799c93 585 {
Osamu Nakamura 0:7cc000799c93 586 TRACE(ENTER "pipe2(pipefd[]=[%d, %d], flags=%d)", pipefd[0], pipefd[1], flags);
Osamu Nakamura 0:7cc000799c93 587 int rc = linux::sys::pipe2( pipefd, flags );
Osamu Nakamura 0:7cc000799c93 588 TRACE(LEAVE "pipe2(pipefd[]=[%d, %d], flags=%d) = %d(errno:%d)", pipefd[0], pipefd[1], flags, rc, errno);
Osamu Nakamura 0:7cc000799c93 589 return rc;
Osamu Nakamura 0:7cc000799c93 590 }
Osamu Nakamura 0:7cc000799c93 591
Osamu Nakamura 0:7cc000799c93 592 void* P4(dlopen)(const char* filename, int flag)
Osamu Nakamura 0:7cc000799c93 593 {
Osamu Nakamura 0:7cc000799c93 594 TRACE(ENTER "dlopen(filename=%s, flag=%d)", safe_str(filename), flag);
Osamu Nakamura 0:7cc000799c93 595 void* rc = linux::sys::dlopen( filename, flag );
Osamu Nakamura 0:7cc000799c93 596 TRACE(ENTER "dlopen(filename=%s, flag=%d) = %p", safe_str(filename), flag, rc);
Osamu Nakamura 0:7cc000799c93 597 return rc;
Osamu Nakamura 0:7cc000799c93 598 }
Osamu Nakamura 0:7cc000799c93 599
Osamu Nakamura 0:7cc000799c93 600 void* P4(dlsym)(void* handle, char* symbol)
Osamu Nakamura 0:7cc000799c93 601 {
Osamu Nakamura 0:7cc000799c93 602 TRACE(ENTER "dlsym(handle=%p, symbol=%s)", handle, safe_str(symbol));
Osamu Nakamura 0:7cc000799c93 603 void* rc = linux::sys::dlsym( handle, symbol );
Osamu Nakamura 0:7cc000799c93 604 TRACE(ENTER "dlsym(handle=%p, symbol=%s) = %p", handle, safe_str(symbol), rc);
Osamu Nakamura 0:7cc000799c93 605 return rc;
Osamu Nakamura 0:7cc000799c93 606 }
Osamu Nakamura 0:7cc000799c93 607
Osamu Nakamura 0:7cc000799c93 608 int P4(dlclose)(void* handle)
Osamu Nakamura 0:7cc000799c93 609 {
Osamu Nakamura 0:7cc000799c93 610 TRACE(ENTER "dlclose(handle=%p)", handle);
Osamu Nakamura 0:7cc000799c93 611 int rc = linux::sys::dlclose( handle );
Osamu Nakamura 0:7cc000799c93 612 TRACE(ENTER "dlclose(handle=%p) = %d", handle, rc);
Osamu Nakamura 0:7cc000799c93 613 return rc;
Osamu Nakamura 0:7cc000799c93 614 }
Osamu Nakamura 0:7cc000799c93 615
Osamu Nakamura 0:7cc000799c93 616 char** P4(backtrace_symbols)(void*const* buffer, int size)
Osamu Nakamura 0:7cc000799c93 617 {
Osamu Nakamura 0:7cc000799c93 618 TRACE(ENTER "backtrace_symbols(buffer=%p, size=%d)", buffer, size);
Osamu Nakamura 0:7cc000799c93 619 char** rc = linux::debug::backtrace_symbols( buffer, size );
Osamu Nakamura 0:7cc000799c93 620 TRACE(LEAVE "backtrace_symbols(buffer=%p, size=%d) = %p", buffer, size, rc);
Osamu Nakamura 0:7cc000799c93 621 return rc;
Osamu Nakamura 0:7cc000799c93 622 }
Osamu Nakamura 0:7cc000799c93 623
Osamu Nakamura 0:7cc000799c93 624 int P4(backtrace)(void** buffer, int size)
Osamu Nakamura 0:7cc000799c93 625 {
Osamu Nakamura 0:7cc000799c93 626 TRACE(ENTER "backtrace(buffer=%p, size=%d)", buffer, size);
Osamu Nakamura 0:7cc000799c93 627 int rc = linux::debug::backtrace( buffer, size );
Osamu Nakamura 0:7cc000799c93 628 TRACE(LEAVE "backtrace(buffer=%p, size=%d) = %d", buffer, size, rc);
Osamu Nakamura 0:7cc000799c93 629 return rc;
Osamu Nakamura 0:7cc000799c93 630 }
Osamu Nakamura 0:7cc000799c93 631
Osamu Nakamura 0:7cc000799c93 632
Osamu Nakamura 0:7cc000799c93 633 void P4(abort)(void)
Osamu Nakamura 0:7cc000799c93 634 {
Osamu Nakamura 0:7cc000799c93 635 TRACE(INFO "abort called from [%p]", CALLED_FROM);
Osamu Nakamura 0:7cc000799c93 636 overridden::abort();
Osamu Nakamura 0:7cc000799c93 637 }
Osamu Nakamura 0:7cc000799c93 638
Osamu Nakamura 0:7cc000799c93 639 int P4(gettimeofday)(struct P4(timeval)* tv, void* tz)
Osamu Nakamura 0:7cc000799c93 640 {
Osamu Nakamura 0:7cc000799c93 641 TRACE(ENTER "overridden_gettimeofday(tv=%d, tz=%p)", tv, tz);
Osamu Nakamura 0:7cc000799c93 642 int rc = overridden::gettimeofday( tv, tz );
Osamu Nakamura 0:7cc000799c93 643 TRACE(LEAVE "overridden_gettimeofday(tv=%d, tz=%p) = %d(errno:%d)", tv, tz, rc, errno);
Osamu Nakamura 0:7cc000799c93 644 return rc;
Osamu Nakamura 0:7cc000799c93 645 }
Osamu Nakamura 0:7cc000799c93 646
Osamu Nakamura 0:7cc000799c93 647 P4(ssize_t) P4(read)(int fd, void* buf, P4(size_t) count)
Osamu Nakamura 0:7cc000799c93 648 {
Osamu Nakamura 0:7cc000799c93 649 TRACE(ENTER "overridden_read(fd=%d, buf=%p, count=%u)", fd, buf, count);
Osamu Nakamura 0:7cc000799c93 650 P4(ssize_t) rc = overridden::read( fd, buf, count );
Osamu Nakamura 0:7cc000799c93 651 TRACE(LEAVE "overridden_read(fd=%d, buf=%p, count=%u) = %d(errno:%d)", fd, buf, count, rc, errno);
Osamu Nakamura 0:7cc000799c93 652 return rc;
Osamu Nakamura 0:7cc000799c93 653 }
Osamu Nakamura 0:7cc000799c93 654
Osamu Nakamura 0:7cc000799c93 655 P4(ssize_t) P4(write)(int fd, const void* buf, P4(size_t) count)
Osamu Nakamura 0:7cc000799c93 656 {
Osamu Nakamura 0:7cc000799c93 657 TRACE(ENTER "overridden_write(fd=%d, buf=%p, count=%u)", fd, buf, count);
Osamu Nakamura 0:7cc000799c93 658 P4(ssize_t) rc = overridden::write( fd, buf, count );
Osamu Nakamura 0:7cc000799c93 659 TRACE(LEAVE "overridden_write(fd=%d, buf=%p, count=%u) = %d(errno:%d)", fd, buf, count, rc, errno);
Osamu Nakamura 0:7cc000799c93 660 return rc;
Osamu Nakamura 0:7cc000799c93 661 }
Osamu Nakamura 0:7cc000799c93 662
Osamu Nakamura 0:7cc000799c93 663 int P4(open)(const char* pathname, ...)
Osamu Nakamura 0:7cc000799c93 664 {
Osamu Nakamura 0:7cc000799c93 665 TRACE(ENTER "overridden_open(pathname=%s, ...)", safe_str(pathname));
Osamu Nakamura 0:7cc000799c93 666 va_list args;
Osamu Nakamura 0:7cc000799c93 667 va_start( args, pathname );
Osamu Nakamura 0:7cc000799c93 668 int rc = overridden::open( pathname, args );
Osamu Nakamura 0:7cc000799c93 669 va_end( args );
Osamu Nakamura 0:7cc000799c93 670 TRACE(LEAVE "overridden_open(pathname=%s, ...) = %d(errno:%d)", safe_str(pathname), rc, errno);
Osamu Nakamura 0:7cc000799c93 671 return rc;
Osamu Nakamura 0:7cc000799c93 672 }
Osamu Nakamura 0:7cc000799c93 673
Osamu Nakamura 0:7cc000799c93 674 int P4(close)(int fd)
Osamu Nakamura 0:7cc000799c93 675 {
Osamu Nakamura 0:7cc000799c93 676 TRACE(ENTER "overridden_close(fd=%d)", fd);
Osamu Nakamura 0:7cc000799c93 677 int rc = overridden::close( fd );
Osamu Nakamura 0:7cc000799c93 678 TRACE(LEAVE "overridden_close(fd=%d) = %d(errno:%d)", fd, rc, errno);
Osamu Nakamura 0:7cc000799c93 679 return rc;
Osamu Nakamura 0:7cc000799c93 680 }
Osamu Nakamura 0:7cc000799c93 681
Osamu Nakamura 0:7cc000799c93 682 int P4(unlink)(const char* pathname)
Osamu Nakamura 0:7cc000799c93 683 {
Osamu Nakamura 0:7cc000799c93 684 TRACE(ENTER "overridden_unlink(pathname=%s)", safe_str(pathname));
Osamu Nakamura 0:7cc000799c93 685 int rc = overridden::unlink( pathname );
Osamu Nakamura 0:7cc000799c93 686 TRACE(LEAVE "overridden_unlink(pathname=%s) = %d(errno:%d)", safe_str(pathname), rc, errno);
Osamu Nakamura 0:7cc000799c93 687 return rc;
Osamu Nakamura 0:7cc000799c93 688 }
Osamu Nakamura 0:7cc000799c93 689
Osamu Nakamura 0:7cc000799c93 690 int P4(mkdir)(const char* pathname, P4(mode_t) mode)
Osamu Nakamura 0:7cc000799c93 691 {
Osamu Nakamura 0:7cc000799c93 692 TRACE(ENTER "overridden_mkdir(pathname=%s, mode=0x%04X)", safe_str(pathname), mode);
Osamu Nakamura 0:7cc000799c93 693 int rc = overridden::mkdir( pathname, mode );
Osamu Nakamura 0:7cc000799c93 694 TRACE(LEAVE "overridden_mkdir(pathname=%s, mode=0x%04X) = %d(errno:%d)", safe_str(pathname), mode, rc, errno);
Osamu Nakamura 0:7cc000799c93 695 return rc;
Osamu Nakamura 0:7cc000799c93 696 }
Osamu Nakamura 0:7cc000799c93 697
Osamu Nakamura 0:7cc000799c93 698 int P4(rmdir)(const char* pathname)
Osamu Nakamura 0:7cc000799c93 699 {
Osamu Nakamura 0:7cc000799c93 700 TRACE(ENTER "overridden_rmdir(pathname=%s)", safe_str(pathname));
Osamu Nakamura 0:7cc000799c93 701 int rc = overridden::rmdir( pathname );
Osamu Nakamura 0:7cc000799c93 702 TRACE(LEAVE "overridden_rmdir(pathname=%s) = %d(errno:%d)", safe_str(pathname), rc, errno);
Osamu Nakamura 0:7cc000799c93 703 return rc;
Osamu Nakamura 0:7cc000799c93 704 }
Osamu Nakamura 0:7cc000799c93 705
Osamu Nakamura 0:7cc000799c93 706 int P4(stat)(const char* pathname, P4(stat_t)* buf)
Osamu Nakamura 0:7cc000799c93 707 {
Osamu Nakamura 0:7cc000799c93 708 TRACE(ENTER "overridden_stat(pathname=%s, buf=%p)", safe_str(pathname), buf);
Osamu Nakamura 0:7cc000799c93 709 int rc = overridden::stat( pathname, buf );
Osamu Nakamura 0:7cc000799c93 710 TRACE(LEAVE "overridden_stat(pathname=%s, buf=%p) = %d(errno:%d)", safe_str(pathname), buf, rc, errno);
Osamu Nakamura 0:7cc000799c93 711 return rc;
Osamu Nakamura 0:7cc000799c93 712 }
Osamu Nakamura 0:7cc000799c93 713
Osamu Nakamura 0:7cc000799c93 714 int P4(fstat)(int fd, P4(stat_t)* buf)
Osamu Nakamura 0:7cc000799c93 715 {
Osamu Nakamura 0:7cc000799c93 716 TRACE(ENTER "overridden_fstat(fd=%d, buf=%p)", fd, buf);
Osamu Nakamura 0:7cc000799c93 717 int rc = overridden::fstat( fd, buf );
Osamu Nakamura 0:7cc000799c93 718 TRACE(LEAVE "overridden_fstat(fd=%d, buf=%p) = %d(errno:%d)", fd, buf, rc, errno);
Osamu Nakamura 0:7cc000799c93 719 return rc;
Osamu Nakamura 0:7cc000799c93 720 }
Osamu Nakamura 0:7cc000799c93 721
Osamu Nakamura 0:7cc000799c93 722
Osamu Nakamura 0:7cc000799c93 723 char* P4(nic_enumerate)(void)
Osamu Nakamura 0:7cc000799c93 724 {
Osamu Nakamura 0:7cc000799c93 725 TRACE(ENTER "nic_enumerate()");
Osamu Nakamura 0:7cc000799c93 726 char* rc = nic::enumerate();
Osamu Nakamura 0:7cc000799c93 727 TRACE(LEAVE "nic_enumerate() = {%s}", safe_str(rc));
Osamu Nakamura 0:7cc000799c93 728 return rc;
Osamu Nakamura 0:7cc000799c93 729 }
Osamu Nakamura 0:7cc000799c93 730
Osamu Nakamura 0:7cc000799c93 731 int P4(nic_ifup)(const char* nic, const char* params)
Osamu Nakamura 0:7cc000799c93 732 {
Osamu Nakamura 0:7cc000799c93 733 TRACE(ENTER "nic_ifup(nic={%s}, params={%s})", safe_str(nic), safe_str(params));
Osamu Nakamura 0:7cc000799c93 734 int rc = nic::ifup( nic, params );
Osamu Nakamura 0:7cc000799c93 735 TRACE(LEAVE "nic_ifup(nic={%s}, params={%s}) = %d", safe_str(nic), safe_str(params), rc);
Osamu Nakamura 0:7cc000799c93 736 return rc;
Osamu Nakamura 0:7cc000799c93 737 }
Osamu Nakamura 0:7cc000799c93 738
Osamu Nakamura 0:7cc000799c93 739 int P4(nic_ifdown)(const char* nic)
Osamu Nakamura 0:7cc000799c93 740 {
Osamu Nakamura 0:7cc000799c93 741 TRACE(ENTER "nic_ifdown(nic={%s})", safe_str(nic));
Osamu Nakamura 0:7cc000799c93 742 int rc = nic::ifdown( nic );
Osamu Nakamura 0:7cc000799c93 743 TRACE(LEAVE "nic_ifdown(nic={%s}) = %d", safe_str(nic), rc);
Osamu Nakamura 0:7cc000799c93 744 return rc;
Osamu Nakamura 0:7cc000799c93 745 }
Osamu Nakamura 0:7cc000799c93 746
Osamu Nakamura 0:7cc000799c93 747 char* P4(nic_ifconfig)(const char* nic)
Osamu Nakamura 0:7cc000799c93 748 {
Osamu Nakamura 0:7cc000799c93 749 TRACE(ENTER "nic_ifconfig(nic={%s})", safe_str(nic));
Osamu Nakamura 0:7cc000799c93 750 char* rc = nic::ifconfig( nic );
Osamu Nakamura 0:7cc000799c93 751 TRACE(LEAVE "nic_ifconfig(nic={%s}) = {%s}", safe_str(nic), safe_str(rc));
Osamu Nakamura 0:7cc000799c93 752 return rc;
Osamu Nakamura 0:7cc000799c93 753 }
Osamu Nakamura 0:7cc000799c93 754
Osamu Nakamura 0:7cc000799c93 755 int P4(nic_ntpdate)(const char* nic, const char* server, int port, int timeout)
Osamu Nakamura 0:7cc000799c93 756 {
Osamu Nakamura 0:7cc000799c93 757 TRACE(ENTER "nic_ntpdate(nic={%s}, server={%s}, port=%d, timeout=%d)", safe_str(nic), safe_str(server), port, timeout);
Osamu Nakamura 0:7cc000799c93 758 int rc = nic::ntpdate( nic, server, port, timeout );
Osamu Nakamura 0:7cc000799c93 759 TRACE(LEAVE "nic_ntpdate(nic={%s}, server={%s}, port=%d, timeout=%d) = %d", safe_str(nic), safe_str(server), port, timeout, rc);
Osamu Nakamura 0:7cc000799c93 760 return rc;
Osamu Nakamura 0:7cc000799c93 761 }
Osamu Nakamura 0:7cc000799c93 762