- /* Initialize and build the IPv6 address to broadcast to */
- sap_ipv6_addr = (char *)malloc(28*sizeof(char));
- if ( !sap_ipv6_addr )
- {
- msg_Err( p_sout, "No memory left" );
- return NULL;
- }
- sprintf(sap_ipv6_addr,"%s%c%s",
- SAP_IPV6_ADDR_1,
- psz_v6_scope[0],
- SAP_IPV6_ADDR_2);
-
- /* Fill the socket descriptor */
- socket_desc.i_type = NETWORK_UDP;
- socket_desc.psz_bind_addr = "";
- socket_desc.i_bind_port = 0;
- socket_desc.psz_server_addr = sap_ipv6_addr;
- socket_desc.i_server_port = SAP_PORT;
- socket_desc.i_handle = 0;
-
- sprintf ( psz_network, "ipv6" );
-
- /* Call the network module */
- p_sout->p_private=(void*) &socket_desc;
- if( !( p_network = module_Need( p_sout, "network", psz_network ) ) )
- {
- msg_Warn( p_sout, "failed to open a connection (udp)" );
- return NULL;
- }
- module_Unneed( p_sout, p_network );
+ p_session = malloc( sizeof( *p_session ) );
+ memset( p_session, 0, sizeof( *p_session ) );
+ p_session->psz_sdp = strdup( psz_sdp );