マルチキャスト送信
【機能】
指定されたマルチキャストアドレスにデータを送信します。
【関数】
int MullicasetSend( int sck, char *data, int size, int *to )
|
{
|
return trapa_svc( 0xa3, pid, sck, data, size, to );
|
}
|
【入力】
sck
| ソケット番号(UDP)
| 「ソケット」ファンクションで取得した識別番号
|
data
| 送信データ
| 送信データを格納した領域の先頭アドレス
|
size
| サイズ
| 送信データバイト数
|
to
| 宛先情報(マルチキャストアドレス+ポート番号)
| 宛先情報を格納した領域の先頭アドレス
|
| +0
+1
+2
+3
| | | |
to+00
送信先のマルチキャストグループアドレス
| |
to+04
送信先のポート番号
|
x
| |
【出力】
リターンコード
| 0以上
| 送信バイト数
|
| ERR_PARAM
| パラメータエラー
|
| ERR_MEMOVER
| メモリ不足
|
| ERR_LANCLOSED
| LAN未オープン
|
| ERR_NOSOCKET
| ソケット番号が無効
|
| ERR_NOTUDP
| UDPソケットでない
|
| ERR_NOTBOUND
| ソケットはバインドされていない
|
| ERR_MULTIADDR
| マルチキャストアドレスエラー
|
| ERR_MULTINOREG
| マルチキャスト登録なし
|
【解説】
指定された送信データを、UDPパケットに組み立てて送信します。
送信可能なデータの最大サイズは5094バイトです。
システムは指定された送信データを含むUDPパケットを送信します。
送信データの先頭アドレスがNULLの場合、または送信データ数が0の場合、送信先のアドレス情報の先頭アドレスがNULLの場合、パラメータエラーを返します。
「マルチキャスト登録」ファンクションが登録されていない場合、マルチキャスト登録無しを返します。また、送信先のマルチキャストグループアドレスがマルチキャストアドレスの範囲外の場合、アドレスエラーを返します。
【関連項目】
マルチキャスト登録 マルチキャスト受信 IPマルチキャスト送信
【注意】
「IPマルチキャスト送信」ファンクションでも同様なことはできますが、MACアドレスを作成する必要があります。
本ファンクションでは宛先がマルチキャストグループアドレス範囲に制限されます。