Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge-core.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge-core.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge-core.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge-core.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,116 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:lang="http://www.springframework.org/schema/lang" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.5.xsd"> + <!-- This context holds all the networking: mina --> + + <bean id="customEditorConfigurer" + class="org.springframework.beans.factory.config.CustomEditorConfigurer"> + <property name="customEditors"> + <map> + <entry key="java.net.SocketAddress"> + <bean + class="org.apache.mina.integration.spring.InetSocketAddressEditor" /> + </entry> + </map> + </property> + </bean> + + <bean id="placeholderConfig" + class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="location" value="classpath:/red5.properties" /> + </bean> + + <!-- RTMP Handler --> + <bean id="rtmpHandler" + class="org.red5.server.net.rtmp.EdgeRTMPHandler"> + <property name="server" ref="red5.server" /> + <property name="statusObjectService" ref="statusObjectService" /> + <property name="MRTMPManager" ref="mrtmpEdgeManager" /> + </bean> + + <bean id="rtmpMinaConnManager" + class="org.red5.server.net.rtmp.RTMPConnManager"> + </bean> + + <!-- RTMP Mina IO Handler --> + <bean id="rtmpMinaIoHandler" + class="org.red5.server.net.rtmp.EdgeRTMPMinaIoHandler"> + <property name="handler" ref="rtmpHandler" /> + <property name="codecFactory" ref="rtmpCodecFactory" /> + <property name="rtmpConnManager" ref="rtmpMinaConnManager" /> + </bean> + + <!-- RTMP Mina Transport --> + <bean id="rtmpTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop"> + <property name="ioHandler" ref="rtmpMinaIoHandler" /> + <property name="address" value="${rtmp.host}" /> + <property name="port" value="${rtmp.port}" /> + <property name="receiveBufferSize" value="${rtmp.receive_buffer_size}" /> + <property name="sendBufferSize" value="${rtmp.send_buffer_size}" /> + <property name="eventThreadsCore" value="${rtmp.event_threads_core}" /> + <property name="eventThreadsMax" value="${rtmp.event_threads_max}" /> + <property name="eventThreadsQueue" value="${rtmp.event_threads_queue}" /> + <property name="eventThreadsKeepalive" value="${rtmp.event_threads_keepalive}" /> + <!-- This is the interval at which the sessions are polled for stats. If mina monitoring is not + enabled, polling will not occur. --> + <property name="jmxPollInterval" value="1000" /> + <property name="tcpNoDelay" value="${rtmp.tcp_nodelay}" /> + </bean> + + <!-- RTMP Mina Connection --> + <bean id="rtmpEdgeMinaConnection" scope="prototype" + class="org.red5.server.net.rtmp.EdgeRTMPMinaConnection"> + <!-- Ping clients every X ms. Set to 0 to disable ghost detection code. --> + <property name="pingInterval" value="${rtmp.ping_interval}" /> + <!-- Disconnect client after X ms of not responding. --> + <property name="maxInactivity" value="${rtmp.max_inactivity}" /> + <!-- Max. time in milliseconds to wait for a valid handshake. --> + <property name="maxHandshakeTimeout" value="5000" /> + <property name="mrtmpManager" ref="mrtmpEdgeManager" /> + </bean> + + <bean id="mrtmpCodecFactory" + class="org.red5.server.net.mrtmp.codec.MRTMPCodecFactory" /> + + <bean id="mrtmpHandler" class="org.red5.server.net.mrtmp.EdgeMRTMPHandler"> + <property name="mrtmpManager" ref="mrtmpEdgeManager"/> + <property name="codecFactory" ref="mrtmpCodecFactory" /> + <property name="rtmpConnManager" ref="rtmpMinaConnManager" /> + </bean> + + <bean id="mrtmpClient" + class="org.red5.server.net.mrtmp.MRTMPClient" init-method="start" > + <property name="ioHandler" ref="mrtmpHandler" /> + <property name="server" value="${mrtmp.server}" /> + <property name="port" value="${mrtmp.port}" /> + </bean> + + <bean id="mrtmpEdgeManager" + class="org.red5.server.net.mrtmp.SimpleMRTMPEdgeManager"> + <property name="rtmpConnManager" ref="rtmpMinaConnManager" /> + </bean> + + <!-- Enable when you need it. + <bean id="rtmpProxyTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop"> + <property name="ioHandler" ref="debugProxyIoHandler" /> + <property name="address" value="${proxy.source_host}" /> + <property name="port" value="${proxy.source_port}" /> + <property name="receiveBufferSize" value="${rtmp.receive_buffer_size}" /> + <property name="sendBufferSize" value="${rtmp.send_buffer_size}" /> + <property name="eventThreadsCore" value="${rtmp.event_threads_core}" /> + <property name="eventThreadsMax" value="${rtmp.event_threads_max}" /> + <property name="eventThreadsQueue" value="${rtmp.event_threads_queue}" /> + <property name="eventThreadsKeepalive" value="${rtmp.event_threads_keepalive}" /> + </bean> + + <bean id="debugProxyIoHandler" + class="org.red5.server.net.proxy.DebugProxyHandler"> + <property name="codecFactory" ref="rtmpCodecFactory" /> + <property name="forward" value="${proxy.destination_host}:${proxy.destination_port}" /> + <property name="dumpTo" value="./webapps/dump/" /> + </bean> + --> +</beans>
Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-edge.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:lang="http://www.springframework.org/schema/lang" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.5.xsd"> + + <!-- This file just wires together the context tree. Its accessed by ContextSingletonBeanFactoryLocator --> + + <bean id="placeholderConfig" + class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="location" value="classpath:/red5.properties" /> + </bean> + + <!-- First we load the common context, its shared between all the other contexts --> + <!-- Global context serves are the parent to all child contexts. --> + <bean id="red5.common" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-common.xml</value></list></constructor-arg> + </bean> + + <!-- Then we load the core context, with the common as parent --> + <!-- Context holding all the networking, users should need to edit. --> + <bean id="red5.core" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-edge-core.xml</value></list></constructor-arg> + <constructor-arg><ref bean="red5.common" /></constructor-arg> + </bean> + + <!-- Then we load the global contexts, note its important this happens before app container loads --> + <bean id="context.loader" + class="org.red5.server.ContextLoader" + init-method="init"> + <property name="parentContext" ref="red5.common" /> + <property name="contextsConfig" value="red5.globals" /> + </bean> +</beans> \ No newline at end of file Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin-core.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin-core.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin-core.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin-core.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,303 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:lang="http://www.springframework.org/schema/lang" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.5.xsd"> + <!-- This context holds all the networking: mina --> + + <bean id="customEditorConfigurer" + class="org.springframework.beans.factory.config.CustomEditorConfigurer"> + <property name="customEditors"> + <map> + <entry key="java.net.SocketAddress"> + <bean + class="org.apache.mina.integration.spring.InetSocketAddressEditor" /> + </entry> + </map> + </property> + </bean> + + <bean id="placeholderConfig" + class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="location" value="classpath:/red5.properties" /> + </bean> + + <!-- RTMP Handler --> + <bean id="rtmpHandler" + class="org.red5.server.net.rtmp.RTMPHandler"> + <property name="server" ref="red5.server" /> + <property name="statusObjectService" ref="statusObjectService" /> + </bean> + + <bean id="mrtmpManager" + class="org.red5.server.net.mrtmp.SimpleMRTMPOriginManager" > + <property name="originMRTMPHandler" ref="mrtmpMinaIoHandler" /> + </bean> + + <bean id="mrtmpCodecFactory" + class="org.red5.server.net.mrtmp.codec.MRTMPCodecFactory" /> + + <!-- MRTMP Mina IO Handler --> + <bean id="mrtmpMinaIoHandler" + class="org.red5.server.net.mrtmp.OriginMRTMPHandler"> + <property name="handler" ref="rtmpHandler" /> + <property name="mrtmpManager" ref="mrtmpManager" /> + <property name="codecFactory" ref="mrtmpCodecFactory" /> + </bean> + + <!-- MRTMP Mina Transport --> + <bean id="mrtmpTransport" class="org.red5.server.net.mrtmp.MRTMPMinaTransport" init-method="start" destroy-method="stop"> + <property name="ioHandler" ref="mrtmpMinaIoHandler" /> + <property name="address" value="${mrtmp.host}" /> + <property name="port" value="${mrtmp.port}" /> + <property name="receiveBufferSize" value="${mrtmp.receive_buffer_size}" /> + <property name="sendBufferSize" value="${mrtmp.send_buffer_size}" /> + <property name="eventThreadsCore" value="${mrtmp.event_threads_core}" /> + <property name="eventThreadsMax" value="${mrtmp.event_threads_max}" /> + <property name="eventThreadsQueue" value="${mrtmp.event_threads_queue}" /> + <property name="eventThreadsKeepalive" value="${mrtmp.event_threads_keepalive}" /> + <property name="tcpNoDelay" value="${mrtmp.tcp_nodelay}" /> + </bean> + + <!-- Uncomment this if you run Origin on a different server from Edge + and still want to use RTMP + <bean id="rtmpConnManager" + class="org.red5.server.net.rtmp.RTMPConnManager"> + </bean> + + <bean id="rtmpMinaIoHandler" + class="org.red5.server.net.rtmp.RTMPMinaIoHandler"> + <property name="handler" ref="rtmpHandler" /> + <property name="codecFactory" ref="rtmpCodecFactory" /> + <property name="rtmpConnManager" ref="rtmpConnManager" /> + </bean> + + <bean id="rtmpTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop"> + <property name="ioHandler" ref="rtmpMinaIoHandler" /> + <property name="address" value="${rtmp.host}" /> + <property name="port" value="${rtmp.port}" /> + <property name="receiveBufferSize" value="${rtmp.receive_buffer_size}" /> + <property name="sendBufferSize" value="${rtmp.send_buffer_size}" /> + <property name="eventThreadsCore" value="${rtmp.event_threads_core}" /> + <property name="eventThreadsMax" value="${rtmp.event_threads_max}" /> + <property name="eventThreadsQueue" value="${rtmp.event_threads_queue}" /> + <property name="eventThreadsKeepalive" value="${rtmp.event_threads_keepalive}" /> + <property name="jmxPollInterval" value="1000" /> + <property name="tcpNoDelay" value="${rtmp.tcp_nodelay}" /> + </bean> + + <bean id="rtmpMinaConnection" scope="prototype" + class="org.red5.server.net.rtmp.RTMPMinaConnection"> + <property name="pingInterval" value="${rtmp.ping_interval}" /> + <property name="maxInactivity" value="${rtmp.max_inactivity}" /> + <property name="maxHandshakeTimeout" value="5000" /> + </bean> + --> + + <!-- + + The following configuration is for RTMPT. + --> + <bean id="rtmptConnManager" + class="org.red5.server.net.rtmp.RTMPConnManager"> + </bean> + + <!-- RTMPT Handler --> + <bean id="rtmptHandler" + class="org.red5.server.net.rtmpt.RTMPTHandler" autowire="byType"> + <property name="codecFactory" ref="rtmpCodecFactory" /> + </bean> + + <!-- Use injection to store RTMPT handler in servlet --> + <bean id="rtmptServlet" + class="org.red5.server.net.rtmpt.RTMPTServlet"> + <property name="handler" ref="rtmptHandler" /> + <property name="rtmpConnManager" ref="rtmptConnManager" /> + </bean> + + <!-- RTMPT Connection --> + <bean id="rtmptConnection" scope="prototype" + class="org.red5.server.net.rtmpt.RTMPTConnection"> + <!-- Ping clients every X ms. Set to 0 to disable ghost detection code. --> + <property name="pingInterval" value="${rtmp.ping_interval}" /> + <!-- Disconnect client after X ms of not responding. --> + <property name="maxInactivity" value="${rtmp.max_inactivity}" /> + <!-- Max. time in milliseconds to wait for a valid handshake. --> + <property name="maxHandshakeTimeout" value="5000" /> + </bean> + + <!-- Jetty RTMPT Container --> + <!-- + <bean id="rtmpt.server" + class="org.red5.server.net.rtmpt.RTMPTLoader" init-method="init" + autowire="byType" /> + --> + <!-- Tomcat Container --> + <bean id="rtmpt.server" class="org.red5.server.net.rtmpt.TomcatRTMPTLoader" init-method="init" lazy-init="true"> + + <property name="webappFolder" value="${red5.root}/webapps" /> + + <property name="connector"> + <bean class="org.apache.catalina.connector.Connector"> + <constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" /> + <property name="port"><value>${rtmpt.port}</value></property> + <property name="enableLookups"><value>false</value></property> + </bean> + </property> + + <property name="host"> + <bean class="org.apache.catalina.core.StandardHost"> + <property name="name" value="${rtmpt.host}" /> + <property name="unpackWARs" value="false" /> + <property name="autoDeploy" value="false" /> + <property name="xmlValidation" value="false" /> + <property name="xmlNamespaceAware" value="false" /> + </bean> + </property> + + </bean> + <!-- + <bean id="rtmpt.server" class="org.red5.server.net.rtmpt.TomcatRTMPTLoader" init-method="init" autowire="byType"> + <property name="embedded"> + <bean class="org.apache.catalina.startup.Embedded" /> + </property> + + <property name="engine"> + <bean class="org.apache.catalina.core.StandardEngine"> + <property name="name" value="rtmptServletHandler" /> + <property name="defaultHost" value="localhost" /> + </bean> + </property> + + <property name="connector"> + <bean class="org.apache.catalina.connector.Connector"> + <property name="port"><value>8088</value></property> + <property name="enableLookups"><value>false</value></property> + </bean> + </property> + + <property name="host"> + <bean class="org.apache.catalina.core.StandardHost"> + <property name="name" value="localhost" /> + <property name="unpackWARs" value="false" /> + <property name="autoDeploy" value="false" /> + <property name="xmlValidation" value="false" /> + <property name="xmlNamespaceAware" value="false" /> + </bean> + </property> + + <property name="context"> + <map> + <entry> + <key><value>name</value></key> + <value>rtmptContext</value> + </entry> + <entry> + <key><value>path</value></key> + <value></value> + </entry> + <entry> + <key><value>docBase</value></key> + <value>/</value> + </entry> + </map> + </property> + + <property name="wrapper"> + <bean class="org.apache.catalina.core.StandardWrapper"> + <property name="servletName" value="RTMPTServlet" /> + <property name="servletClass" value="org.red5.server.net.servlet.RTMPTServlet" /> + </bean> + </property> + + <property name="mappings"> + <map> + <entry> + <key><value>RTMPTServlet</value></key> + <value>/open/*</value> + </entry> + <entry> + <key><value>RTMPTServlet</value></key> + <value>/close/*</value> + </entry> + <entry> + <key><value>RTMPTServlet</value></key> + <value>/send/*</value> + </entry> + <entry> + <key><value>RTMPTServlet</value></key> + <value>/idle/*</value> + </entry> + </map> + </property> + </bean> + --> + + <!-- RTMPS --> + <bean id="rtmps.server" class="org.red5.server.net.rtmps.TomcatRTMPSLoader" init-method="init" lazy-init="true"> + + <property name="webappFolder" value="${red5.root}/webapps" /> + + <property name="connector"> + <bean class="org.apache.catalina.connector.Connector"> + <constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" /> + <property name="port" value="${rtmps.port}" /> + <property name="redirectPort" value="${rtmp.port}" /> + </bean> + </property> + + <property name="host"> + <bean class="org.apache.catalina.core.StandardHost"> + <property name="name" value="${rtmps.host}" /> + <property name="unpackWARs" value="false" /> + <property name="autoDeploy" value="false" /> + <property name="xmlValidation" value="false" /> + <property name="xmlNamespaceAware" value="false" /> + </bean> + </property> + + <property name="connectionProperties"> + <map> + <entry> + <key><value>SSLEnabled</value></key> + <value>true</value> + </entry> + <entry> + <key><value>sslProtocol</value></key> + <value>TLS</value> + </entry> + <entry> + <key><value>clientAuth</value></key> + <value>false</value> + </entry> + <entry> + <key><value>keystoreFile</value></key> + <value>conf/keystore</value> + </entry> + <entry> + <key><value>keystorePass</value></key> + <value>${rtmps.keystorepass}</value> + </entry> + <entry> + <key><value>keystoreType</value></key> + <value>JKS</value> + </entry> + </map> + </property> + + <property name="valves"> + <list> + <bean id="valve.access" class="org.apache.catalina.valves.AccessLogValve"> + <property name="directory" value="log" /> + <property name="prefix" value="${rtmps.host}_rtmps_access." /> + <property name="suffix" value=".log" /> + <property name="pattern" value="common" /> + <property name="resolveHosts" value="false" /> + <property name="rotatable" value="true" /> + </bean> + </list> + </property> + + </bean> + +</beans> Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5-origin.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,155 @@ +<?xml version="1.0" encoding="UTF-8"?> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:lang="http://www.springframework.org/schema/lang" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.5.xsd"> + + <!-- This file just wires together the context tree. Its accessed by ContextSingletonBeanFactoryLocator --> + + <bean id="placeholderConfig" + class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="location" value="classpath:/red5.properties" /> + </bean> + + <!-- First we load the common context, its shared between all the other contexts --> + <!-- Global context serves are the parent to all child contexts. --> + <bean id="red5.common" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-common.xml</value></list></constructor-arg> + </bean> + + <!-- Then we load the core context, with the common as parent --> + <!-- Context holding all the networking, users should need to edit. --> + <bean id="red5.core" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-origin-core.xml</value></list></constructor-arg> + <constructor-arg><ref bean="red5.common" /></constructor-arg> + </bean> + + <!-- Then we load the global contexts, note its important this happens before app container loads --> + <bean id="context.loader" + class="org.red5.server.ContextLoader" + init-method="init"> + <property name="parentContext" ref="red5.common" /> + <property name="contextsConfig" value="red5.globals" /> + </bean> + + <!-- Now we can load the servlet engine, this has to happen after the context are loaded --> +<!-- + <bean id="jetty6.server" class="org.red5.server.jetty.JettyLoader" init-method="init" autowire="byType" depends-on="context.loader"> + <property name="webappFolder" value="${red5.root}/webapps" /> + </bean> +--> + <!-- Tomcat servlet engine / http server --> + <bean id="tomcat.server" class="org.red5.server.tomcat.TomcatLoader" init-method="init" destroy-method="shutdown" depends-on="context.loader"> + + <property name="webappFolder" value="${red5.root}/webapps" /> + + <property name="connector"> + <bean class="org.apache.catalina.connector.Connector"> + <constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11Protocol" /> + <property name="port"><value>${http.port}</value></property> + <property name="redirectPort"><value>${https.port}</value></property> + <property name="enableLookups"><value>false</value></property> + <property name="URIEncoding"><value>${http.URIEncoding}</value></property> + </bean> + </property> + + <property name="baseHost"> + <bean class="org.apache.catalina.core.StandardHost"> + <property name="name" value="${http.host}" /> + <property name="unpackWARs" value="true" /> + <property name="autoDeploy" value="true" /> + <property name="xmlValidation" value="false" /> + <property name="xmlNamespaceAware" value="false" /> + </bean> + </property> + + <property name="valves"> + <list> + <bean id="valve.access" class="org.apache.catalina.valves.AccessLogValve"> + <property name="directory" value="log" /> + <property name="prefix" value="${http.host}_access." /> + <property name="suffix" value=".log" /> + <property name="pattern" value="common" /> + <property name="resolveHosts" value="false" /> + <property name="rotatable" value="true" /> + </bean> + </list> + </property> + + </bean> + +<!-- + <bean id="tomcat.server" class="org.red5.server.tomcat.TomcatLoader" init-method="init" destroy-method="shutdown" autowire="byType" depends-on="context.loader"> + <!- - Note: the webapp root folder must be specified before the "contexts" property - -> + <property name="webappFolder" value="${red5.root}/webapps" /> + + <property name="embedded"> + <bean class="org.apache.catalina.startup.Embedded" /> + </property> + + <property name="engine"> + <bean class="org.apache.catalina.core.StandardEngine"> + <property name="name" value="red5Engine" /> + <property name="defaultHost" value="localhost" /> + </bean> + </property> + + <property name="realm"> + <bean class="org.apache.catalina.realm.MemoryRealm" /> + </property> + + <property name="connector"> + <bean class="org.apache.catalina.connector.Connector"> + <property name="port"><value>5080</value></property> + <property name="redirectPort"><value>8443</value></property> + <property name="enableLookups"><value>false</value></property> + </bean> + </property> + + <property name="baseHost"> + <bean class="org.apache.catalina.core.StandardHost"> + <property name="name" value="localhost" /> + <property name="unpackWARs" value="true" /> + <property name="autoDeploy" value="true" /> + <property name="xmlValidation" value="false" /> + <property name="xmlNamespaceAware" value="false" /> + </bean> + </property> + + <property name="valves"> + <list> + <bean id="valve.access" class="org.apache.catalina.valves.AccessLogValve"> + <property name="directory" value="." /> + <property name="prefix" value="localhost_access." /> + <property name="suffix" value=".log" /> + <property name="pattern" value="common" /> + <property name="resolveHosts" value="false" /> + <property name="rotatable" value="true" /> + </bean> + </list> + </property> + + <property name="contexts"> + <map> + <entry> + <key><value>/</value></key> + <value>/root</value> + </entry> + </map> + </property> + </bean> +--> + <!-- Default context. This can be shared between web app contexts --> + <!-- + <bean id="default.context" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><value>/webapps/red5-default.xml</value></constructor-arg> + <constructor-arg><ref bean="red5.common" /></constructor-arg> + </bean> + --> + <!-- You can add further contexts here. This allows for multiple separate global scopes --> + +</beans> \ No newline at end of file Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.globals URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.globals?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.globals (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.globals Thu Feb 16 17:00:06 2012 @@ -0,0 +1 @@ +default.context=${red5.root}/webapps/red5-default.xml Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.policy URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.policy?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.policy (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.policy Thu Feb 16 17:00:06 2012 @@ -0,0 +1,261 @@ +// ============================================================================ +// red5.policy - Security Policy Permissions for Red5 +// +// This file contains a default set of security policies to be enforced (by the +// JVM) In addition to the permissions granted here, the following additional permissions are +// granted to the codebase specific to each web application: +// +// ============================================================================ + + +// ========== SYSTEM CODE PERMISSIONS ========================================= + +// These permissions apply to javac +grant codeBase "file:${java.home}/lib/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to all shared system extensions +grant codeBase "file:${java.home}/jre/lib/ext/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to javac when ${java.home] points at $JAVA_HOME/jre +grant codeBase "file:${java.home}/../lib/-" { + permission java.security.AllPermission; +}; + +// These permissions apply to all shared system extensions when +// ${java.home} points at $JAVA_HOME/jre +grant codeBase "file:${java.home}/lib/ext/-" { + permission java.security.AllPermission; +}; + + +// ========== RED5 CODE PERMISSIONS ======================================= + + +// These permissions apply to the main code +grant codeBase "file:boot.jar" { + permission java.security.AllPermission; +}; + +grant codeBase "file:red5.jar" { + permission java.security.AllPermission; +}; + +// These permissions apply to the classes +// and those that are shared across all class loaders +// located in the "common" directory +grant codeBase "file:lib/-" { + permission java.security.AllPermission; +}; + +grant codeBase "file:plugins/-" { + permission java.security.AllPermission; +}; + +grant principal javax.management.remote.JMXPrincipal "red5user" { + permission java.security.AllPermission; +}; + +grant principal javax.management.remote.JMXPrincipal "guest" { + permission javax.management.MBeanPermission "*", "queryNames"; + permission javax.management.remote.SubjectDelegationPermission "javax.management.remote.JMXPrincipal.*"; +}; + +//required for the Admin plugin +grant codeBase "file:plugins/adminplugin.jar" { + permission java.lang.RuntimePermission "getenv.DERBY_HOME"; + permission java.util.PropertyPermission "derby.*", "read"; + permission java.io.FilePermission "${derby.system.home}","read"; + permission java.io.FilePermission "${derby.system.home}${/}*", "read,write,delete"; + permission java.io.FilePermission "${user.dir}${/}-", "read,write,delete"; + permission java.io.FilePermission "${derby.system.home}${/}Admin${/}-", "read,write,delete"; +}; + +//required for the Admin plugin when using derby db +grant codeBase "file:plugins/derby-10.5.3.0.jar" { + permission java.lang.RuntimePermission "createClassLoader"; + permission java.util.PropertyPermission "derby.*", "read"; + permission java.io.FilePermission "${derby.system.home}","read"; + permission java.io.FilePermission "${derby.system.home}${/}*", "read,write,delete"; + permission java.io.FilePermission "${user.dir}${/}-", "read,write,delete"; + permission java.io.FilePermission "${derby.system.home}${/}Admin${/}-", "read,write,delete"; + permission java.util.PropertyPermission "derby.storage.jvmInstanceId", "write"; +}; + +// ========== APPLICATION PERMISSIONS ===================================== + +// These permissions are granted by default to all applications +// In addition, an application will be given a read FilePermission +// and JndiPermission for all files and directories in its document root. +grant { + + //Red5 specific properties + permission java.util.PropertyPermission "red5.root", "read,write"; + permission java.util.PropertyPermission "red5.lib_root", "read,write"; + permission java.util.PropertyPermission "red5.config_root", "read,write"; + permission java.util.PropertyPermission "red5.plugins_root", "read,write"; + permission java.util.PropertyPermission "red5.deployment.type", "read,write"; + permission java.util.PropertyPermission "logback.ContextSelector", "read"; + permission java.util.PropertyPermission "sun.lang.ClassLoader.allowArraySyntax", "write"; + permission java.util.PropertyPermission "user.dir", "read"; + permission java.util.PropertyPermission "user.home", "read"; + permission java.io.FilePermission "${user.home}", "read"; + + permission javax.management.MBeanPermission "*", "invoke"; + permission javax.management.MBeanPermission "*", "removeNotificationListener"; + permission javax.management.MBeanPermission "*", "registerMBean"; + permission javax.management.MBeanPermission "*", "unregisterMBean"; + permission javax.management.MBeanPermission "*", "queryNames"; + + permission java.lang.RuntimePermission "getenv.RED5_HOME"; + permission java.lang.RuntimePermission "exitVM"; + permission java.lang.RuntimePermission "loadLibrary"; + permission java.lang.RuntimePermission "getClassLoader"; + permission java.lang.RuntimePermission "setContextClassLoader"; + + //specifically so that tomcat can be shutdown + permission java.lang.RuntimePermission "modifyThread"; + + permission java.util.PropertyPermission "java.io.tmpdir", "read,write"; + permission java.io.FilePermission "${java.io.tmpdir}", "read,write,delete"; + + permission javax.security.auth.AuthPermission "doAsPrivileged"; + + permission java.net.SocketPermission "127.0.0.1:9999", "connect,resolve"; + permission java.net.SocketPermission "red5.googlecode.com:80", "connect,resolve"; + permission java.net.SocketPermission "www.springframework.org:80", "connect,resolve"; + + permission java.io.FilePermission "file:red5.jar", "read"; + permission java.io.FilePermission "file:conf/red5.properties", "read"; + + permission java.io.FilePermission "file:webapps/installer/WEB-INF/cache", "read,write"; + + //permission java.io.FilePermission "file:C:/red5/work/red5Engine/0.0.0.0/oflaDemo/loader", "read,write"; + + // Required for JNDI lookup of named JDBC DataSource's and + // javamail named MimePart DataSource used to send mail + permission java.util.PropertyPermission "java.home", "read"; + permission java.util.PropertyPermission "java.naming.*", "read"; + permission java.util.PropertyPermission "javax.sql.*", "read"; + + // OS Specific properties to allow read access + permission java.util.PropertyPermission "os.name", "read"; + permission java.util.PropertyPermission "os.version", "read"; + permission java.util.PropertyPermission "os.arch", "read"; + permission java.util.PropertyPermission "file.separator", "read"; + permission java.util.PropertyPermission "path.separator", "read"; + permission java.util.PropertyPermission "line.separator", "read"; + + // JVM properties to allow read access + permission java.util.PropertyPermission "java.version", "read"; + permission java.util.PropertyPermission "java.vendor", "read"; + permission java.util.PropertyPermission "java.vendor.url", "read"; + permission java.util.PropertyPermission "java.class.version", "read"; + permission java.util.PropertyPermission "java.specification.version", "read"; + permission java.util.PropertyPermission "java.specification.vendor", "read"; + permission java.util.PropertyPermission "java.specification.name", "read"; + + permission java.util.PropertyPermission "java.vm.specification.version", "read"; + permission java.util.PropertyPermission "java.vm.specification.vendor", "read"; + permission java.util.PropertyPermission "java.vm.specification.name", "read"; + permission java.util.PropertyPermission "java.vm.version", "read"; + permission java.util.PropertyPermission "java.vm.vendor", "read"; + permission java.util.PropertyPermission "java.vm.name", "read"; + + permission java.util.PropertyPermission "java.security.debug", "read"; + permission java.util.PropertyPermission "java.security.policy", "read"; + + // Required for OpenJMX + permission java.lang.RuntimePermission "getAttribute"; + // Required by MX4J implementation + permission javax.security.auth.AuthPermission "doAsPrivileged"; + + // Allow read of JAXP compliant XML parser debug + permission java.util.PropertyPermission "jaxp.debug", "read"; + + // Precompiled JSPs need access to this package. + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.jasper.runtime.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.startup"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.startup.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.core"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.core.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.connector"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.connector.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.security"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.security.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.session"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.session.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.loader"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.catalina.loader.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.util.modeler"; + permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.util.modeler.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.misc"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.misc.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.registry"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.registry.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.server"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.server.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.transport"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.transport.*"; + + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.transport.tcp"; + permission java.lang.RuntimePermission "accessClassInPackage.sun.rmi.transport.tcp.*"; + +}; + +// The permissions granted to the balancer WEB-INF/classes directory +//grant codeBase "file:${catalina.home}/webapps/balancer/WEB-INF/classes/-" { +// permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.util.digester"; +// permission java.lang.RuntimePermission "accessClassInPackage.org.apache.tomcat.util.digester.*"; +//}; + +// You can assign additional permissions to particular web applications by +// adding additional "grant" entries here, based on the code base for that +// application, /WEB-INF/classes/, or /WEB-INF/lib/ jar files. +// +// Different permissions can be granted to JSP pages, classes loaded from +// the /WEB-INF/classes/ directory, all jar files in the /WEB-INF/lib/ +// directory, or even to individual jar files in the /WEB-INF/lib/ directory. +// +// For instance, assume that the standard "examples" application +// included a JDBC driver that needed to establish a network connection to the +// corresponding database and used the scrape taglib to get the weather from +// the NOAA web server. You might create a "grant" entries like this: +// +// The permissions granted to the context root directory apply to JSP pages. +// grant codeBase "file:${red5.home}/webapps/examples/-" { +// permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; +// permission java.net.SocketPermission "*.noaa.gov:80", "connect"; +// }; +// +// The permissions granted to the context WEB-INF/classes directory +// grant codeBase "file:${red5.home}/webapps/examples/WEB-INF/classes/-" { +// }; +// +// The permission granted to your JDBC driver +// grant codeBase "jar:file:${red5.home}/webapps/examples/WEB-INF/lib/driver.jar!/-" { +// permission java.net.SocketPermission "dbhost.mycompany.com:5432", "connect"; +// }; +// The permission granted to the scrape taglib +// grant codeBase "jar:file:${red5.home}/webapps/examples/WEB-INF/lib/scrape.jar!/-" { +// permission java.net.SocketPermission "*.noaa.gov:80", "connect"; +// }; + Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.properties URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.properties?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.properties (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.properties Thu Feb 16 17:00:06 2012 @@ -0,0 +1,75 @@ +# Socket policy +policy.host=0.0.0.0 +policy.port=843 + +# HTTP +http.host=0.0.0.0 +http.port=5080 +https.port=8443 +http.URIEncoding=UTF-8 + +# RTMP +rtmp.host=0.0.0.0 +rtmp.port=1935 +rtmp.io_threads=16 +rtmp.send_buffer_size=271360 +rtmp.receive_buffer_size=65536 +rtmp.ping_interval=1000 +rtmp.max_inactivity=60000 +rtmp.tcp_nodelay=true +rtmp.default_server_bandwidth=10000000 +rtmp.default_client_bandwidth=10000000 +rtmp.client_bandwidth_limit_type=2 +rtmp.bandwidth_detection=true + +# RTMPS +rtmps.host=0.0.0.0 +rtmps.port=8443 +rtmps.ping_interval=5000 +rtmps.max_inactivity=60000 +rtmps.max_keep_alive_requests=-1 +rtmps.max_threads=20 +rtmps.acceptor_thread_count=2 +rtmps.processor_cache=20 +# RTMPS Keystore Password +rtmps.keystorepass=password + +# RTMPT +rtmpt.host=0.0.0.0 +rtmpt.port=8088 +rtmpt.ping_interval=5000 +rtmpt.max_inactivity=60000 +rtmpt.max_keep_alive_requests=-1 +rtmpt.max_threads=20 +rtmpt.acceptor_thread_count=2 +rtmpt.processor_cache=20 + +# MRTMP +mrtmp.host=0.0.0.0 +mrtmp.server=localhost +mrtmp.port=9035 +mrtmp.event_threads_core=4 +mrtmp.event_threads_max=32 +# event threads queue: -1 unbounded, 0 direct (no queue), n bounded queue +mrtmp.event_threads_queue=0 +mrtmp.event_threads_keepalive=60 +mrtmp.send_buffer_size=271360 +mrtmp.receive_buffer_size=65536 +mrtmp.ping_interval=5000 +mrtmp.max_inactivity=60000 +mrtmp.tcp_nodelay=true + +# Debug proxy (needs to be activated in red5-core.xml) +proxy.source_host=127.0.0.1 +proxy.source_port=1936 +proxy.destination_host=127.0.0.1 +proxy.destination_port=1935 + +# JMX +jmx.rmi.port.registry=9999 +jmx.rmi.port.remoteobjects= +jmx.rmi.host=0.0.0.0 +jmx.rmi.ssl=false + + + Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/red5.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:lang="http://www.springframework.org/schema/lang" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd + http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd"> + + <!-- This file just wires together the context tree. Its accessed by ContextSingletonBeanFactoryLocator --> + + <bean id="placeholderConfig" + class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="location" value="classpath:/red5.properties" /> + </bean> + + <!-- First we load the common context, its shared between all the other contexts --> + <!-- Global context serves as the parent to all child contexts. --> + <bean id="red5.common" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-common.xml</value></list></constructor-arg> + </bean> + + <!-- Then we load the core context, with the common as parent --> + <!-- Context holding all the networking, users should need to edit. --> + <bean id="red5.core" + class="org.springframework.context.support.FileSystemXmlApplicationContext"> + <constructor-arg><list><value>classpath:/red5-core.xml</value></list></constructor-arg> + <constructor-arg><ref bean="red5.common" /></constructor-arg> + </bean> + + <!-- Then we load the global contexts, note its important this happens before app container loads --> + <bean id="context.loader" + class="org.red5.server.ContextLoader" + init-method="init" destroy-method="uninit"> + <property name="parentContext" ref="red5.common" /> + <property name="contextsConfig" value="classpath:/red5.globals" /> + <property name="useShutdownHook" value="false" /> + </bean> + + <bean id="pluginLauncher" class="org.red5.server.plugin.PluginLauncher" /> + + <!-- Now we can load the JEE container / servlet engine --> + <import resource="classpath:/jee-container.xml"/> + +</beans> Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/tomcat-users.xml URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/tomcat-users.xml?rev=1245080&view=auto ============================================================================== --- incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/tomcat-users.xml (added) +++ incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/tomcat-users.xml Thu Feb 16 17:00:06 2012 @@ -0,0 +1,11 @@ +<!-- + NOTE: By default, no user is included in the "manager" role required + to operate the "/manager" web application. If you wish to use this app, + you must define such a user - the username and password are arbitrary. +--> +<tomcat-users> + <user name="admin" password="admin" roles="admin" /> + <user name="tomcat" password="tomcat" roles="tomcat" /> + <user name="role1" password="tomcat" roles="role1" /> + <user name="both" password="tomcat" roles="tomcat,role1" /> +</tomcat-users> Added: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/truststore.jmx URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/truststore.jmx?rev=1245080&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/openmeetings/trunk/singlewebapp/red5-1.0.0-r4315/dist/conf/truststore.jmx ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream
