[#6862] Re: http_get.rb — 青山 和光 <PXN11625@...>

In-Reply-To: [ruby-list:6844] Re: http_get.rb

15 messages 1998/03/01

[#6906] ruby's Icon ? — 藤本尚邦 / FUJIMOTO Hisakuni <hisa@...>

藤本です、こんにちは。

25 messages 1998/03/03
[#6907] Re: ruby's Icon ? — matz@... (Yukihiro Matsumoto) 1998/03/03

まつもと ゆきひろです

[#6908] Re: ruby's Icon ? — 藤本尚邦 / FUJIMOTO Hisakuni <hisa@...> 1998/03/03

藤本です、こんにちは。

[#6911] Re: ruby's Icon ? — OZAWA Sakuro <ozawa@...> 1998/03/03

小澤さくです。

[#6912] Re: ruby's Icon ? — 藤本尚邦 / FUJIMOTO Hisakuni <hisa@...> 1998/03/03

藤本です、こんにちは。

[#6914] Re: ruby's Icon ? — 藤本尚邦 / FUJIMOTO Hisakuni <hisa@...> 1998/03/03

藤本です、こんばんは。

[#6918] manual 1.18b index — WATANABE Tetsuya <tetsu@...>

ruby-man-1.1b8 で、name タグがついているものを拾い集めて

17 messages 1998/03/04
[#6921] Re: manual 1.18b index — matz@... (Yukihiro Matsumoto) 1998/03/04

まつもと ゆきひろです

[#6954] Re: ruby's Icon ? — nosuzuki@... (Norio Suzuki)

こんばんは。鈴木教郎です。

18 messages 1998/03/04
[#6964] Re: ruby's Icon ? — matz@... (Yukihiro Matsumoto) 1998/03/05

まつもと ゆきひろです

[#7023] infinity — Tadayoshi Funaba <tadf@...>

ふなばです。

41 messages 1998/03/09
[#7029] Re: infinity — shugo@... (Shugo Maeda) 1998/03/09

前田です。

[#7033] Re: infinity — keiju@... (石塚圭樹 ) 1998/03/09

けいじゅ@日本ラショナルソフトウェアです.

[#7041] Re: infinity — Kazuhisa YANAGAWA <katze@...> 1998/03/10

In message <199803091741.CAA05774.keiju@cupmail0.rational.com>

[#7048] Re: infinity — keiju@... (Keiju ISHITSUKA) 1998/03/10

けいじゅ@日本ラショナルソフトウェアです.

[#7049] Re: infinity — matz@... (Yukihiro Matsumoto) 1998/03/10

まつもと ゆきひろです

[#7051] Re: infinity — keiju@... (石塚圭樹 ) 1998/03/10

けいじゅ@日本ラショナルソフトウェアです.

[#7054] Re: infinity — matz@... (Yukihiro Matsumoto) 1998/03/10

まつもと ゆきひろです

[#7050] Re: infinity — Kazuhisa YANAGAWA <katze@...> 1998/03/10

In message <199803100359.MAA08628.keiju@cupmail0.rational.com>

[#7259] Socket#shutdown — keiju@... (Keiju ISHITSUKA)

けいじゅ@日本ラショナルソフトウェアです.

16 messages 1998/03/28
[#7260] Re: Socket#shutdown — matz@... (Yukihiro Matsumoto) 1998/03/28

まつもと ゆきひろです

[#7265] Re: Socket#shutdown — keiju@... (石塚圭樹 ) 1998/03/29

けいじゅ@日本ラショナルソフトウェアです.

[ruby-list:6983] ext POSIX.setsid

From: WATANABE Tetsuya <tetsu@...>
Date: 1998-03-06 04:38:42 UTC
List: ruby-list #6983
拡張ライブラリの作り方はこんな感じでいいでしょうか?

■ お題

デーモンを作りたくて、コントロールターミナルを切ろうと
思ったのですが、使っている HP-UX の事情でちょっと困っ
ています(Linux なら困らないのですけど)。

HP-UX は、BSD 互換の setpgrp2(2) と System V 互換の 
setpgrp(2) の二つを持っています。Ruby の configure は、
BSD 互換の setpgrp2(2) をみつけてしまうので(手で修正す
るのも方法ですが)、setpgrp2(2) を使ってしまいます。

BSD ならこのときは、ioctl(2) で TIOCNOTTY するのですが、
HP-UX では動作しません。

ということで、POSIX が使えるので、setsid(2) を使い
setpgrp(2) のこの問題を回避してみました。

# 個人で使う場合はこれでいいのですが...

■ POSIX の setsid(2) だけ

一応動いているようですが。エラー処理とか、こんな感じでい
いでしょうか?

------------------------------
#include <unistd.h>
#include "ruby.h"

static VALUE
POSIX_setsid()
{
  int ret;
  ret = setsid();

  if (ret == -1) {
    Fail("POSIX setsid(2) failed");
  }

  return INT2FIX(ret);
}

void
Init_POSIX()
{
  VALUE mPOSIX = rb_define_module("POSIX");

  rb_define_module_function(mPOSIX, "setsid", POSIX_setsid, 0);
}
------------------------------

■ お試し用スクリプト

------------------------------
require "POSIX"

exit if fork

POSIX.setsid

sleep 10

exit
------------------------------

二度 POSIX.setsid を実行すると、エラーを確認できます。

■ 余談

かなり拡張ライブラリを作るのが楽になっていますね。この
他にもテスト的に kconv があるのに ack(漢字変換コンバー
タ) を組み込んでみたりしたのですが、ちょっとしたことを
試すのにもすごくいいです。

--
WATANABE Tetsuya HP Japan PSO
e-mail  tetsu@jpn.hp.com

In This Thread

Prev Next