Article View: fj.lang.tcl
Article #454[Q] communicate between c & Tcl using socket
From: Kazuma Hirota
Date: Tue, 24 Dec 1996 00:00
Date: Tue, 24 Dec 1996 00:00
74 lines
2539 bytes
2539 bytes
ไปฃ็ๆ็จฟใงใใ
----------------------------------------------------------------
็จฒ่ฆ๏ผ ๏ผ๏ผใจ็ณใใพใใ
ๅฐใฃใๆใฎfj ้ ผใฟใชใฎใงใใใๆ
ใใฃใฆๆ็จฟใงใใพใใใ
ไปฃ็ๆ็จฟใใฆใใใฃใฆใพใใใใใใใ้กใ่ดใใพใใ
fj.lang.tcl ใจ fj.unix ใซใฏใญในใในใใใฆใใใฆใใใฏใใงใใ
Followup-To ใฏใfj.lang.tcl ใซใ้กใใใพใใ
Tcl7.6 ใจ c ใฎใใญใฐใฉใ ใฎ้ใงใ
inet ใใกใคใณใฎใฝใฑใใใไฝฟใฃใฆใ
ใใผใฟใฎใใๅใใใใใใจ่ใใฆใใพใใ
c ใฎๆนใงใ
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/time.h>
main(){
int fd1, fd2;
struct sockaddr_in saddr, caddr;
int len;
fd1 = socket(PF_INET, SOCK_STREAM, 0);
bzero( (char *)&saddr, sizeof(saddr) );
saddr.sin_family = AF_INET;
saddr.sin_addr.s_addr = INADDR_ANY;
saddr.sin_port = 8888;
bind(fd1, (struct sockaddr *)&saddr,sizeof(saddr));
listen(fd1, 5);
len = sizeof(caddr);
fd2 = accept(fd1, (struct sockaddr *)&caddr, &len);
sleep(10);
exit(0);
}
ใฎๆงใชไบใใใฆใใตใผใๅดใ็จๆใใ
tclsh ใ็ซใกไธใใฆใ
ๆฌกใฎใใใซใใใจใ
% socket localhost 8888
couldn't open socket: connection refused
ใจใใชใฃใฆใใพใใพใใ
ใใกใใใใฏใฉใคใขใณใๅดใ c ใงๆธใใฐใ
ใกใใใจ้ไฟกใงใใพใใใ
ใตใผใใ Tcl ใงใ
% socket -server accept 8888
sock3
ใจใใฆ็จๆใใฆใใใฐใใฏใฉใคใขใณใๅดใ
% socket localhost 8888
sock3
ใจใใคใชใใใพใใ
ไฝฟ็จใใ OS ใฏใFreeBSD 2.1.5 Release ใงใใ
c ใจ Tcl ใง้ไฟกใใใซใฏใใฉใใใใฐใใใฎใงใใใใ๏ผ
ใใใใใใฎใ่ชญใใฐใใใ
ใใฎ่พบใซ hint ใใใใจใใฃใใใจใง็ตๆงใงใใฎใง
ใใใใใ้กใ่ดใใพใใ
-----------------------------------------------------------
Technical Details
Message-ID:
<hirota-2412961133100001@kiritsubo.phys.tohoku.ac.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 15a83d,945129da71c5807f,start X-Google-Attributes: gid15a83d,public X-Google-Thread: fdef0,945129da71c5807f,start X-Google-Attributes: gidfdef0,public From: hirota@iiyo.phys.tohoku.ac.jp (Kazuma Hirota) Subject: [Q] communicate between c & Tcl using socket Date: 1996/12/24 Message-ID: <hirota-2412961133100001@kiritsubo.phys.tohoku.ac.jp> X-Deja-AN: 205690714 distribution: world content-type: text/plain; charset=iso-2022-jp organization: Tohoku University mime-version: 1.0 newsgroups: fj.lang.tcl,fj.unix