[Armadillo:02977] Re: アルマジロ−220でソケット通信をしたい。

國井 email@hidden
2008年 6月 13日 (金) 14:12:46 JST


國井と申します
早速のご指摘ありがとうございます。
htonsを追加してうまくいきました。ありがとうございました
。
助かりました。

--- Yoshimitsu Yamada <email@hidden> wrote:

> 山田です。
> 
> > address.sin_port = 8023;
> 
> もしかすると、ポート8023へ通信したいのであれば、
> address.sin_port = htons(8023);
> でうまくいきませんか?
> 
> # Armadillo-220では、デフォルトでCPUのバイトオーダ
> # はリトルエンディアンですよね?
> 
> 國井 様 wrote:
> > 國井と申します。
> >
> アルマジロ-220と計測機器をソケット通信を使い接続したい
の
> > ですがうまくいきません。
> > ご存知の方アドバイス宜しくお願いします。
> >
> ソケット作成まではいいのですがコネクションがうまくいき
ま
> > せん。
> > 
> > 実行結果
> > 
> > socket?=3
> > connect?=-1
> > 
> > 
> > 
> > ソース
> > 
> > #include <stdio.h>
> > #include <stdlib.h>
> > #include <string.h>
> > #include <strings.h>
> > #include "simple-cgi.h"
> > #include <time.h>
> > #include <sys/time.h>
> > #include <sys/times.h>
> > #include <sys/types.h>
> > #include <sys/socket.h>
> > #include <stdlib.h>
> > #include <unistd.h>
> > #include <ctype.h>
> > #include <netinet/in.h>
> > #include <netdb.h>
> > #include <sys/fcntl.h>
> > 
> > //
> > 
> > void
> > main(void)
> > {
> > 
> >   char ans[66];
> >   int sockfd, len, result;
> >   struct sockaddr_in address;
> >   /*クライアント用*ソケット作成*/
> >    sockfd = socket(AF_INET,SOCK_STREAM,0);
> > 	printf("socket?=%d\n",sockfd);
> > 
> >   /*サーバと同じ名前でソケットの名前指定*/
> >    bzero((char *)&address, sizeof(address));
> >    address.sin_family = AF_INET;
> >    address.sin_addr.s_addr =
> inet_addr("169.254.220.30");
> >    address.sin_port = 8023;
> >    len = sizeof(address);
> > 
> >  
> /*クライアントのソケットとサーバのソケットの接続*/
> >    result = connect(sockfd, (struct sockaddr
> > *)&address,len);
> >    printf("connect?=%d\n",result);
> >   if(result == -1) printf("errorng \n");
> > 
> >   /*sockfd を介して読み書きこみできるようにする*/
> >    write(sockfd,":MEAS:OUTP:ONE?\n",16);
> >    read(sockfd,ans,62);
> >    printf("anser==%s\n",ans);
> > 
> >   close(sockfd);
> >   return;
> > }
> > 
> > 
> > [email@hidden (ttyp1) /etc/config]# iptables -L
> > Chain INPUT (policy DROP)
> > target     prot opt source              
> destination
> > ACCEPT     all  --  anywhere             anywhere
> > ACCEPT     icmp --  anywhere             anywhere
> > ACCEPT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpt:http
> > ACCEPT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpt:ftp
> > ACCEPT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpt:ssh
> > ACCEPT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpt:ftp-data
> > REJECT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpt:auth reject-with icmp-port-unreachable
> > DROP       tcp  --  anywhere             anywhere 
>        
> >   tcp dpts:x11:6010
> > ACCEPT     tcp  --  anywhere             anywhere 
>        
> >   tcp dpts:1024:65535
> > ACCEPT     udp  --  anywhere             anywhere 
>        
> >   udp dpt:ssh
> > ACCEPT     udp  --  anywhere             anywhere 
>        
> >   udp dpts:1024:65535
> > 
> > Chain FORWARD (policy ACCEPT)
> > target     prot opt source              
> destination
> > 
> > Chain OUTPUT (policy DROP)
> > target     prot opt source              
> destination
> > ACCEPT     all  --  anywhere             anywhere
> > ACCEPT     all  --  anywhere             anywhere
> > 
> > --------------------------------------
> > GANBARE! NIPPON! Chance to win 50,000 Yahoo!
> Points!
> > http://pr.mail.yahoo.co.jp/ganbare-nippon/
> > _______________________________________________
> > armadillo mailing list
> > email@hidden
> >
>
http://lists.atmark-techno.com/mailman/listinfo/armadillo
> _______________________________________________
> armadillo mailing list
> email@hidden
>
http://lists.atmark-techno.com/mailman/listinfo/armadillo
> 


--------------------------------------
GANBARE! NIPPON! Chance to win 50,000 Yahoo! Points!
http://pr.mail.yahoo.co.jp/ganbare-nippon/



armadillo メーリングリストの案内