IP_MULTICAST_IF

In order to control which interface multicast datagrams will be sent on, the API provides the IP_MULTICAST_IF socket option. This option can be used to set the interface for sending outbound multicast datagrams from the sockets application. Multicast datagrams can be transmitted on only one interface at a time. You can determine the interface being used by the way of the GETSOCKOPT API with IP_MULTICAST_IF as the OPTNAME. Figure 1 illustrates the use of IP_MULTICAST_IF by the use of the SETSOCKOPT and GETSOCKOPT APIs.

Figure 1. IP_MULTICAST_IF
***********************************************************************  
*                                                                     *  
*        Issue SETSOCKOPT/GETSOCKOPT - IP_MULTICAST_IF                *  
*                                                                     *  
***********************************************************************  
         EZASMI TYPE=SETSOCKOPT,  ISSUE SETSOCKOPT                     X 
               S=S,               SOCKET DESCRIPTOR                    X 
               OPTLEN=OPTLEN4,    OPTION LENGTH                        X 
               OPTNAME='IP_MULTICAST_IF', OPTION NAME                  X 
               OPTVAL=MULTIF,     OPTION VALUE                         X 
               RETCODE=RETCODE,   (SPECIFY RETCODE FIELD)              X 
               ERROR=ERROR        ABEND IF MACRO ERROR 
         BAL   R14,RCCHECK         --> CHECK IT          
         XC    MULTIFO,MULTIFO 
         EZASMI TYPE=GETSOCKOPT,  ISSUE GETSOCKOPT                     X 
               S=S,               SOCKET DESCRIPTOR                    X 
               OPTLEN=OPTLEN4,    OPTION LENGTH                        X 
               OPTNAME='IP_MULTICAST_IF', OPTION NAME                  X 
               OPTVAL=MULTIFO,    OPTION VALUE                         X 
               RETCODE=RETCODE,   (SPECIFY RETCODE FIELD)              X 
               ERROR=ERROR        ABEND IF MACRO ERROR
         BAL   R14,RCCHECK         --> CHECK IT