[#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:6991] Re: win32 版 ruby の getc について

From: WATANABE Hirofumi <watanabe@...>
Date: 1998-03-06 05:40:41 UTC
List: ruby-list #6991
わたなべです.

ARIMA Yasuhiro <fit0298@fitec.co.jp> writes:

:Win95 で作成しているのですが、getc が改行まで待ちになっているようでパスワードが
:丸見えというなさけない状態です。これはどのあたりが問題なのでしょうか?

getc は C の getc と同じなので, それで正常です.

Win32 の場合は Win32API module があるので, いろいろ方法はあ
ります. たとえば
 o crtdll.dll や msvcdll.dll の _getch を呼び出す.
 o coolview の cygwin.dll の getpass を呼ぶ
   (これが一番簡単. でも coolview 自体が beta 19 になっちゃったから…).
   Win32API.new('cygwin', 'getpass', ['P'], 'P').Call('Password: ')
 o cygwin32 をインストールして system('stty -echo'),
   system('stty echo') を使う. 酒本さんの minesweeper を参照.
 o cygwin.dll の tcgetattr, tcsetattr を使い gets する.
などなど. とりあえず 4 番目の方法を.

#こういう生の構造体が Struct とかで管理できると便利だなあ.

-- 
わたなべひろふみ

require 'Win32API'

Tcgetattr = Win32API.new('cygwin', 'tcgetattr', %w(L P), 'V')
Tcsetattr = Win32API.new('cygwin', 'tcsetattr', %w(L L P), 'V')

ECHO = 4
TCSANOW = 2
C_LFLAG = 3
STRUCT_TERMIOS = 'SSSS C C18 CC'

def tcgetattr fd, termios
  Tcgetattr.Call fd, termios
end

def tcsetattr fd, command, termios
  Tcsetattr.Call fd, command, termios
end

def getpass prompt
  ti = ([0]*25).pack(STRUCT_TERMIOS)
  tcgetattr 0, ti
  uti = ti.unpack(STRUCT_TERMIOS)
  uti[C_LFLAG] &= ~ECHO
  tcsetattr 0, TCSANOW, uti.pack(STRUCT_TERMIOS)
  $stderr.print prompt
  pass = $stdin.gets.chomp
  $stderr.puts
  tcsetattr 0, TCSANOW, ti
  pass
end

p = getpass('Password: ')
puts p

In This Thread