Silverlight needs access policy server to use socket. Access policy server should bind 943 port on same host address. Then silverlight sends following request:
<policy-file-request/>
Access policy server receives policy file request and sends access policy file like this:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*" />
</allow-from>
<grant-to>
<socket-resource port="4502" protocol="tcp" />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
This policy means silverlight allowed to connect to tcp 4502 port of any host.
I attached sample decoder, encoder, codec factory source files for MINA 2.0.0-M6.
SilverlightPolicyCodecFactory.java
SilverlightPolicyHandler.java
SilverlightPolicyProtocolDecoder.java
SilverlightPolicyProtocolEncoder.java
Use at your own risk.
<policy-file-request/>
Access policy server receives policy file request and sends access policy file like this:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*" />
</allow-from>
<grant-to>
<socket-resource port="4502" protocol="tcp" />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
This policy means silverlight allowed to connect to tcp 4502 port of any host.
I attached sample decoder, encoder, codec factory source files for MINA 2.0.0-M6.
SilverlightPolicyCodecFactory.java
SilverlightPolicyHandler.java
SilverlightPolicyProtocolDecoder.java
SilverlightPolicyProtocolEncoder.java
Use at your own risk.




