#!/usr/bin/perl ################################################################ # send_sstp.pl Vr.0.01 Shift_JIS 2001 6/9版 # EUC_JPには各自適当に変えてね。 # KAIN (http://tech-web.net/) # 配布元 http://tech-web.net/download/ # 「何か。(仮)」と通信により話させるPerlスクリプト # 【使い方】コマンドで %perl send_sstp.pl # 【終わり方】メッセージ:exit ################################################################ $|=1; use Socket; use FileHandle; my ($con_host, $con_port); my ($port, $url, $path, $ip, $sockaddr); my ($arg, $buf, $data, $host, $data); # ------------------------------------------------------------------ my $port='9801'; # SSTP Port # ------------------------------------------------------------------ print "\n"; print '相手のIP(なにも指定しないとlocalhost):'; chomp($host=<>); while(1){ my $host||= 'localhost'; print 'メッセージ:'; chomp($data=<>); exit if($data eq 'exit'); $port||=getservbyname('http', 'tcp'); $path||= '/'; $con_host = $host; $con_port = $port; $ip = inet_aton($con_host) || die "host($con_host) not found.\n"; $sockaddr = pack_sockaddr_in($con_port, $ip); socket(SOCKET, PF_INET, SOCK_STREAM, 0) || die "socket error.\n"; connect(SOCKET, $sockaddr) || die "connect $con_host $con_port error.\n"; SOCKET->autoflush(1); print SOCKET "SEND SSTP/1.1\r\n"; print SOCKET "Sender: Team TECH-WEB\r\n"; print SOCKET "Script: \\h\\s[0]$data\\e\r\n"; # print SOCKET "Script: \\h\\s[0]$data\\u$udata\\e\r\n"; print SOCKET "Option: nodescript,notranslate\r\n"; print SOCKET "Charset: Shift_JIS\r\n\r\n\r\n"; # Shift_JISの場合 # print SOCKET "Charset: EUC-JP\r\n\r\n\r\n"; # EUCの場合 close(SOCKET); } __END__