ライブラリ
クラス
- Addrinfo (33)
- BasicSocket (22)
-
Etc
:: Passwd (11) - File (11)
-
Net
:: FTP (18) -
Net
:: FTP :: MLSxEntry (9) - Pathname (11)
- Socket (33)
- String (22)
- UNIXSocket (66)
モジュール
- Etc (176)
- FileUtils (11)
- Kernel (33)
-
OpenSSL
:: Random (22) - Readline (11)
キーワード
-
$ -I (11) -
$ : (11) -
$ LOAD _ PATH (11) -
SC
_ 2 _ PBS _ TRACK (11) -
SC
_ BC _ STRING _ MAX (11) -
SC
_ JOB _ CONTROL (11) -
SC
_ STREAM _ MAX (11) -
SC
_ THREAD _ ATTR _ STACKADDR (11) -
SC
_ THREAD _ ATTR _ STACKSIZE (11) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (11) -
SC
_ TRACE (11) -
SC
_ TRACE _ EVENT _ FILTER (11) -
SC
_ TRACE _ EVENT _ NAME _ MAX (11) -
SC
_ TRACE _ INHERIT (11) -
SC
_ TRACE _ LOG (11) -
SC
_ TRACE _ NAME _ MAX (11) -
SC
_ TRACE _ SYS _ MAX (11) -
SC
_ TRACE _ USER _ EVENT _ MAX (11) -
SC
_ XOPEN _ STREAMS (11) - addr (11)
- children (11)
- crypt (11)
- egd (11)
-
egd
_ bytes (11) - facts (9)
- ftype (11)
- gecos (11)
-
inspect
_ sockaddr (11) - mlsd (18)
-
pack
_ sockaddr _ un (11) - pair (11)
- path (11)
- peeraddr (11)
- readline (11)
- recvfrom (11)
- recvmsg (11)
-
remove
_ entry _ secure (11) -
ruby 1
. 6 feature (11) - sendmsg (11)
-
sockaddr
_ un (11) - socketpair (11)
- sum (11)
-
unix
_ path (11) -
unpack
_ sockaddr _ un (11) - はじめに (11)
検索結果
先頭5件
- Addrinfo
. unix(path , socktype=Socket :: SOCK _ STREAM) -> Addrinfo - FileUtils
. # remove _ entry _ secure(path , force = false) -> () - UNIXSocket
. pair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] - UNIXSocket
. socketpair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] - UNIXSocket
# recvfrom(maxlen , flags = 0) -> [String [String , String]]
-
Addrinfo
. unix(path , socktype=Socket :: SOCK _ STREAM) -> Addrinfo (21435.0) -
Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。
...
Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。
socktype でソケットタイプを指定します。
require 'socket'
Addrinfo.unix("/tmp/sock") #=> #<Addrinfo: /tmp/sock SOCK_STREAM>
Addrinfo.unix("/tmp/sock", :DGRAM) #=> #<Addrinfo: /t......mp/sock SOCK_DGRAM>
@param path Unix ソケットのアドレス文字列
@param socktype ソケットタイプ(整数、文字列、シンボル)
@see Addrinfo.new... -
FileUtils
. # remove _ entry _ secure(path , force = false) -> () (18442.0) -
ファイル path を削除します。path がディレクトリなら再帰的に削除します。
...に削除します。
FileUtils.#rm_r および FileUtils.#remove_entry には
TOCTTOU (time-of-check to time-of-use)脆弱性が存在します。
このメソッドはそれを防ぐために新設されました。
FileUtils.#rm_r および FileUtils.#remove_entry は以下の条件が
満たさ......め、remove_entry_secure は削除前に path 以下の
ディレクトリのオーナーとパーミッションを変更し、上記の条件を回避します。
ただし remove_entry_secure は親ディレクトリが以下の条件を満たすことを
仮定しています。
* UNIX シ......ば、/var/tmp のパーミッションが 1777 であるのは問題ありませんが、
その場合 / や /var が全ユーザから書き込み可能であってはなりません。
この条件が満たされない場合 remove_entry_secure は安全ではありません。
@param path... -
UNIXSocket
. pair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (9522.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
... UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
pro......tocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", 0
s1.send "b", 0
p s2.recv(10) #=> "ab"
@param type ソケットタイプ
@param protocol プトロコル... -
UNIXSocket
. socketpair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (9522.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
... UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
pro......tocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", 0
s1.send "b", 0
p s2.recv(10) #=> "ab"
@param type ソケットタイプ
@param protocol プトロコル... -
UNIXSocket
# recvfrom(maxlen , flags = 0) -> [String [String , String]] (9500.0) -
recvfrom(2) を用いてソケットからメッセージを受け取ります。
...recvfrom(2) を用いてソケットからメッセージを受け取ります。
maxlen で受け取るメッセージの最大長をバイト数で指定します。
flags には Socket::MSG_* という名前の定数の bitwise OR を渡します。
戻り値は文字列と相手ソケット......のパスのペアです。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.send "a", 0
p c.recvfrom(10)[0] #=> "a"
}
@param maxlen 受け取るメッセージの最大長
@param flags フラグ... -
Addrinfo
# unix _ path -> String (9435.0) -
Unix domain socket の path を文字列で返します。
...Unix domain socket の path を文字列で返します。
require 'socket'
Addrinfo.unix("/tmp/sock").unix_path #=> "/tmp/sock"
@raise SocketError アドレスが Unix domain socket のものでない場合に発生します... -
UNIXSocket
# addr -> [String , String] (9434.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
..._UNIX"、第2要素がパスを表す文字列です。
クライアント側はパスを持たないため空文字列となります。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.addr #=> ["AF_UNIX", "/tmp/s"]
}
UNIXServer.open("/tmp/s") {|serv|
c = UNIX......Socket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#peeraddr... -
UNIXSocket
# peeraddr -> [String , String] (9428.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
...各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#addr... -
Kernel
$ $ -I -> [String] (9360.0) -
Rubyライブラリをロードするときの検索パスです。
...Rubyライブラリをロードするときの検索パスです。
Kernel.#load や Kernel.#require
がファイルをロードする時に検索するディレクトリのリストを含む配列です。
起動時にはコマンドラインオプション -I で指定したディレクトリ、......境変数 RUBYLIB の値、
コンパイル時に指定したデフォルト値
をこの順番で含みます。
以下に典型的な UNIX システム上でのロードパスを示します。
-I で指定したパス
環境変数 RUBYLIB の値
/usr/local/lib/ruby/site_ruby/VERSION......リ
/usr/local/lib/ruby/site_ruby/VERSION/ARCH サイト固有、システム依存、拡張ライブラリ
/usr/local/lib/ruby/site_ruby サイト固有ライブラリ
/usr/local/lib/ruby/VERSION 標準ライブラリ
/usr/local/lib/ruby/VERSION/ARCH... -
String
# crypt(salt) -> String (9342.0) -
self と salt から暗号化された文字列を生成して返します。 salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、 2 バイト以上の文字列を指定します。
...などがあります。
注意:
* Ruby 2.6 から非推奨になったため、引き続き必要な場合は
string-crypt gem の使用を検討してください。
* crypt の処理は crypt(3) の実装に依存しています。
従って、crypt で処理される内容の詳細......用環境の crypt(3) 等を見て確認してください。
* crypt の結果は利用環境が異なると変わる場合があります。
crypt の結果を、異なる利用環境間で使用する場合には注意して下さい。
* 典型的な DES を使用した crypt(3) の場......][ruby]{
# パスワードの暗号化
salt = [rand(64),rand(64)].pack("C*").tr("\x00-\x3f","A-Za-z0-9./")
passwd.crypt(salt)
# UNIX のログイン認証
require 'etc'
def valid_login?(user, password)
ent = Etc.getpwnam(user)
password.crypt(ent.passwd) == ent.passwd
end
p valid_login?("taro"...