![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_13.png?8acaa2e)
VxWorks 6.4ソケット接続について。
connectWithTimeout()でサーバへの接続ができません。戻り値が常にERROR。connect() だとうまくいくのですが、何が原因なのでしょうか?
下記にソースコードを提示します
#include "vxWorks.h"
#include "stdio.h"
#include "stdlib.h"
#include "types.h"
#include "net/mbuf.h"
#include "socket.h"
#include "net/socketvar.h"
#include "socklib.h"
#include "inetLib.h"
void tmain( void )
{
#define IP_ADDRS_SERVER "193.9.200.2"
struct timeval TimeOut;
struct sockaddr_in Srv;
static int nSock;
int ret=0;
int status=0;
do{
nSock = socket(AF_INET, SOCK_STREAM, 0);
TimeOut.tv_sec = 10L ;
TimeOut.tv_usec = 0L ;
Srv.sin_family = AF_INET ;
Srv.sin_port = htons(12000) ;
Srv.sin_addr.s_addr = inet_addr(IP_ADDRS_SERVER) ;
//↓これだとうまくいく↓
// if ( connect(nSock, (struct sockaddr *)&Srv, sizeof(Srv) ) == ERROR ) {
//↓これだとうまくいかない↓
if ( connectWithTimeout(nSock, (struct sockaddr *)&Srv, sizeof(Srv), &TimeOut ) == ERROR ) {
ret = close(nSock);
} else {
status=1;
}
}while(status==0);
}
No.1ベストアンサー
- 回答日時:
質問のVxWorks 6.4に該当するかはよく分からないのですが、以下のマニュアルにこういう文があります。
http://www.akae.cn/study/ebook/wrs/workbench/pla …
「4.9.2 API Mapping
connectWithTimeout is carried forward, but is not supported for AF_INET and AF_INET6 address families. Use select( ) to specify the timeout value for the socket descriptor.」
つまり、AF_INETでは使えない、select()で対処せよ、ということみたいですね。
参考URL:http://www.akae.cn/study/ebook/wrs/workbench/pla …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- C言語・C++・C# 並列プログラミングのπ計算について 1 2022/07/16 22:30
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
- C言語・C++・C# C言語で再起関数とポインタを用いて文字列反転をする方法がわかりません。 4 2023/04/29 20:32
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
iostream インクルード時に発生...
-
string型の固定長文字列を配列...
-
C++でUNDOを実装しようとしてい...
-
コンパイルできません
-
std::wstringのメモリリークに...
-
c++のvirtual関数および継承に...
-
指定した文字を削除したい
-
VHDLのsignedとunsignedの違いは?
-
修正箇所の指摘のお願い(文字列...
-
#include "fstream.h"
-
string型からint型への型変換
-
std::lower_boundについて
-
リモートデスクトップの接続元I...
-
構造体配列のvectorへの変換と...
-
C++でのeの近似値の求め方
-
C++のエラー
-
Pythonでのmmapの使い方
-
VS2019でofstreamが未定義になる
-
C++のifstreamの使い方
-
セグメンテーションフォルトが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
switch文のエラーについて
-
構文エラーが出ているのですが...
-
VC++で文字列から任意の文字を...
-
enumの値から定義名を文字列化...
-
空ENTERの判別
-
C++でShowCursorを使いたい。
-
なぜ、C++の標準ヘッダをインク...
-
#define中の#のエスケープ
-
C++で、テキストファイルを一行...
-
gccでコンパイル時のエラー
-
C言語のエラーを修正したい
-
C言語のポインターで詰まっている
-
#include "fstream.h"
-
リモートデスクトップの接続元I...
-
VS2019でofstreamが未定義になる
-
構造体配列のvectorへの変換と...
-
JPEGやPNGが読めるLoadImage関数
-
構造体に決められた文字列を入...
-
VHDLのsignedとunsignedの違いは?
-
std::wstringのメモリリークに...
おすすめ情報