I'm trying to run an oracle database in virtual box under oracle linux I'm trying to run a oracle DB in VirtualBox and access it from my host mac OSX , i am using port forwarding to access my guest, I can telnet my guest on the port, however when i try to connect from SQL developer i get IO error got minus one from a read call. 

have googled around, one potential gotcha was specific ips allowed in the sqlnet.ora config - not the problem,  any idea this is really annoying me now
Had the same issue. Turned out to be a firewall issue. Here is how I turned it off:

As root in terminal:
chkconfig iptables off
chkconfig ip6tables off
service iptables stop
service ip6tables stop

Then modify /etc/selinux/config and set SELINUX=enforcing to SELINUX=disabled.

A more elegant solution is to open the 1521 port in the firewall. You can do that in the System -> Administration -> Firewall menu. Add 1521 (tcp) under "Other ports".