Okay, so if I telnet in with a valid /.bashrc file, it doesn't get sourced, but when I run bash manually, it does. I'm guessing this is a limitation of our stripped-down telnetd?
Here's the strace of the shell I started after I telnetted in (as evidenced by the default shell prompt instead of the one in my bashrc, this wasn't sourced for the shell given to me by telnetd.
sh-2.03# /usr/local/bin/strace -e open bash
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/lib/libncurses.so.5", O_RDONLY) = 3
open("/lib/libdl.so.2", O_RDONLY) = 3
open("/lib/libc.so.6", O_RDONLY) = 3
open("/dev/tty", O_RDWR|O_NONBLOCK) = 3
open("/etc/nsswitch.conf", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/lib/libnss_compat.so.2", O_RDONLY) = 3
open("/usr/lib/libnsl.so.1", O_RDONLY) = 3
open("/etc/nsswitch.conf", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/passwd", O_RDONLY) = 3
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/lib/libnss_files.so.2", O_RDONLY) = 3
open("/etc/bash.bashrc", O_RDONLY) = -1 ENOENT (No such file or directory)
open("//.bashrc", O_RDONLY) = 3
open("/etc/terminfo/v/vt100", O_RDONLY) = 3
open("//.bash_history", O_RDONLY) = 3
open("//.bash_history", O_RDONLY) = 3
--- SIGCHLD (Child exited) @ 0 (0) ---
--- SIGCHLD (Child exited) @ 0 (0) ---
open("/etc/terminfo/v/vt100", O_RDONLY) = 3
.