Not sure if this is important but you should probably match the case in the oratab file to that of the listener defintion.

Also have you tried defining the GLOBAL_DBNAME in the listener eg.
Code:
(SID_DESC =
   (GLOBAL_DBNAME = TESTDB)
   (ORACLE_HOME = /oracle/app/oracle/product/9.2.0.1)
   (SID_NAME = TESTDB)
)
Intelligent Agent is not so 'intelligent' me thinks

Regards