モジュール
- FileTest (24)
- JSON (12)
- Kernel (152)
-
OpenSSL
:: ASN1 (12) -
OpenSSL
:: Random (48) - Syslog (48)
- Timeout (21)
キーワード
- decode (12)
- directory? (12)
- dump (12)
- egd (12)
-
egd
_ bytes (12) - fail (36)
- identical? (12)
-
load
_ random _ file (12) - mask (12)
- mask= (12)
- open! (12)
- raise (36)
- reopen (12)
- spawn (48)
- timeout (21)
-
write
_ random _ file (12)
検索結果
先頭5件
-
FileTest
. # directory?(file) -> bool (3126.0) -
ファイルがディレクトリの時に真を返します。そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
...します。
@param file ファイル名を表す文字列か IO オブジェクトを指定します。
@raise IOError 指定された IO オブジェクト file が既に close されていた場合に発生します。
例:
FileTest.directory?('/etc') # => true
FileTest.directory?('/etc/pa......sswd') # => false
f = File.open('/etc')
FileTest.directory?(f) # => true
f.close
FileTest.directory?(f) # => IOError: closed stream... -
OpenSSL
:: ASN1 . # decode(der) -> OpenSSL :: ASN1 :: ASN1Data (3107.0) -
DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスとして返します。
...DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を
OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスとして返します。
複数の ASN.1 の値が含まれている場合、先頭の値だけを返します。
ASN.1 オブジェクトが......y -e '
require "openssl"
require "pp"
pem = File.read(ARGV[0])
cert = OpenSSL::X509::Certificate.new(pem)
pp OpenSSL::ASN1.decode(cert.to_der)
' mycert.pem
#<OpenSSL::ASN1::Sequence:0x814e9fc
@tag=16,
@tag_class=:UNIVERSAL,
@tagging=nil,
@value=
[#<OpenSSL::ASN1::Sequen......@tag=16,
@tag_class=:UNIVERSAL,
@tagging=nil,
@value=
[#<OpenSSL::ASN1::ASN1Data:0x814f690
@tag=0,
@tag_class=:CONTEXT_SPECIFIC,
@value=
[#<OpenSSL::ASN1::Integer:0x814f6a4
@tag=2,
@tag_class=:UNIVERSAL,... -
OpenSSL
:: Random . # egd(filename) -> true (3101.0) -
EGD(Entropy Gathering Daemon) からエントロピーを得、 乱数生成器に追加します。
...追加します。
filename で指定した Unix domain socket から EGD に問い合わせ、
255 バイト分のエントロピーを取得します。
OpenSSL::Random.egd_bytes(filename, 255) と同じです。
@param filename EGD のソケットのファイル名
@raise OpenSSL::Random::Rando... -
OpenSSL
:: Random . # egd _ bytes(filename , length) -> true (3101.0) -
EGD(Entropy Gathering Daemon) から length バイト分のエントロピーを得ます。
...を得ます。
filename で指定した Unix domain socket から EGD に問い合わせ、
指定した大きさのエントロピーを乱数生成器に追加します。
@param filename EGD のソケットのファイル名
@param length 読み込むバイト数
@raise OpenSSL::Random::Random......Error
@raise OpenSSL::Random::RandomError... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (97.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...のファイル名文字列]、配列の要素にすることで
File::Constants::RDONLY でファイルを開いてリダイレクトします。
* [リダイレクト先のファイル名文字列, モード文字列]
open(ファイル名, モード, 0644) でファイルを開いてリ......ダイレクト
します。
* [リダイレクト先のファイル名文字列, モード文字列, パーミション(整数)]
open(ファイル名, モード, パーミッション) でファイルを
開いてリダイレクトします。
* [:child, ファイルデスクリプ......タ1
* :err 標準エラー出力, ファイルデスクリプタ2
* 整数 指定した整数が表すファイルデスクリプタ
* IO IO#fileno で表されるファイルデスクリプタ
=== option引数の詳細および例
「:unsetenv_others」を使うと、envで指定したも... -
Kernel
. # spawn(program , *args) -> Integer (97.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...のファイル名文字列]、配列の要素にすることで
File::Constants::RDONLY でファイルを開いてリダイレクトします。
* [リダイレクト先のファイル名文字列, モード文字列]
open(ファイル名, モード, 0644) でファイルを開いてリ......ダイレクト
します。
* [リダイレクト先のファイル名文字列, モード文字列, パーミション(整数)]
open(ファイル名, モード, パーミッション) でファイルを
開いてリダイレクトします。
* [:child, ファイルデスクリプ......タ1
* :err 標準エラー出力, ファイルデスクリプタ2
* 整数 指定した整数が表すファイルデスクリプタ
* IO IO#fileno で表されるファイルデスクリプタ
=== option引数の詳細および例
「:unsetenv_others」を使うと、envで指定したも... -
Syslog
. # mask -> Integer | nil (29.0) -
ログの優先度のマスクを取得または設定します。 マスクは永続的であり、 Syslog.openやSyslog.close ではリセットされません。
...ログの優先度のマスクを取得または設定します。
マスクは永続的であり、
Syslog.openやSyslog.close
ではリセットされません。
@param mask ログの優先度のマスクを設定します。
@raise RuntimeError syslog がオープンされていない場合......ftp.log'
Syslog.open('ftpd', LOG_PID | LOG_NDELAY, LOG_FTP)
Syslog.mask = Syslog::LOG_UPTO(LOG_ERR)
[ LOG_CRIT, LOG_ERR, LOG_WARNING,
LOG_NOTICE, LOG_INFO, LOG_DEBUG ].each_with_index { |c, i|
Syslog.log(c, "test for syslog FTP #{c}, #{i}")
}
Syslog.close
File.foreach(log){|lin... -
Syslog
. # mask=(mask) (29.0) -
ログの優先度のマスクを取得または設定します。 マスクは永続的であり、 Syslog.openやSyslog.close ではリセットされません。
...ログの優先度のマスクを取得または設定します。
マスクは永続的であり、
Syslog.openやSyslog.close
ではリセットされません。
@param mask ログの優先度のマスクを設定します。
@raise RuntimeError syslog がオープンされていない場合......ftp.log'
Syslog.open('ftpd', LOG_PID | LOG_NDELAY, LOG_FTP)
Syslog.mask = Syslog::LOG_UPTO(LOG_ERR)
[ LOG_CRIT, LOG_ERR, LOG_WARNING,
LOG_NOTICE, LOG_INFO, LOG_DEBUG ].each_with_index { |c, i|
Syslog.log(c, "test for syslog FTP #{c}, #{i}")
}
Syslog.close
File.foreach(log){|lin... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (25.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...イムアウトさせる事はできないので、IO.popen、Kernel.#openを使用するなどの工夫が必要です。
例 外部コマンドのタイムアウト
require 'timeout'
# テスト用のシェルをつくる。
File.open("loop.sh", "w"){|fp|
fp.print <<SHELL_EOT
#!/bin/......let m2++
fi
done
SHELL_EOT
}
File.chmod(0755, "loop.sh")
t = 10 # 10 秒でタイムアウト
begin
pid = nil
com = nil
Timeout.timeout(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid = com.pid
w...