Here is the scenario:
- An user have access to two machines 
- These machines can't communicate with network sockets because of firewall restrictions 
- But, both have access to a common network share with read/write permissions on a third machine 
My question is: is it possible to write a small application executed on both machines that allows to establishes a communication channel between the two by using only files on the network share? Ideally it would emulates streams and sockets behaviour.
I imagine that:
1) it would involve to have two files used for communication, one for each direction
2) and having the possibility to read a file while another process is writing it... over the network.
But I'm not sure if it is feasible, mainly because I doubt about the point 2). Maybe it is possible in Unix-like environements with NFS, though.
Is it possible? Is it already existing?