Hi Eddy,

Thanks for sending the output.  It looks like Barry is expecting an ACK
response, but is receiving the data right away instead.  Perhaps this
is a change in the 9800 protocol behaviour.

Could you post the tail end of a 'dir' command with verbose turned on
with the -v option?

If you feel like compiling (again?), you might try this patch to see if
this makes any difference in how far it gets.

Thanks,
- Chris


diff --git a/src/m_javaloader.cc b/src/m_javaloader.cc
index ce354c8..df2439f 100644
--- a/src/m_javaloader.cc
+++ b/src/m_javaloader.cc
@@ -596,20 +596,15 @@ void JavaLoader::GetDir(JLPacket &packet,
                        bool include_subdirs)
 {
        m_socket->Packet(packet);
-       if( packet.Command() != SB_COMMAND_JL_ACK ) {
-               ThrowJLError("JavaLoader::GetDir", packet.Command());
-       }
-
-       // ack response will contain length of module ID array in next packet
-       unsigned int expect = packet.Size();
+       Data &response = packet.GetReceive();
 
-       if( expect > 0 ) {
-               Data &response = packet.GetReceive();
+       if( packet.Command() == SB_COMMAND_JL_ACK ) {
                m_socket->Receive(response);
-               Protocol::CheckSize(response, 4);
-               dir.ParseTable(Data(response.GetData() + 4, response.GetSize() 
- 4));
-               GetDirectoryEntries(packet, entry_cmd, dir, include_subdirs);
        }
+
+       Protocol::CheckSize(response, 4);
+       dir.ParseTable(Data(response.GetData() + 4, response.GetSize() - 4));
+       GetDirectoryEntries(packet, entry_cmd, dir, include_subdirs);
 }
 
 void JavaLoader::GetDirectory(JLDirectory &dir, bool include_subdirs)




On Thu, May 16, 2013 at 11:27:54AM -0500, Eddy Castillo wrote:
> Hi all,
> 
> I'am trying to get the list of installed modules on a Blackberry 9800 using
> bjavaloader with the "dir" command, but the response I get from bjavaloader
> is the following:
> 
> =============================================================
> Packet command: 110Expected: 100Packet:
>     00000000: 03 00 08 00 64 00 6c 02                          ....d.l.
> 
> 
> Barry::Error caught: JavaLoader::GetDir: unexpected packet command code:
> 0x6e
> =============================================================
> 
> The phone model is 9800 with OS 6.0 Bundle 2949.
> 
> I tried using barry 0.18.2 and barry 0.18.4 on Ubuntu 12.04.
> 
> All other commands in javaloader seem to be working ok. I don't know if
> this is a bug with barry or I am missing something here. Any comment will
> be appreciated .
> 
> 
> Best Regards,
> 
> 
> 
> 
> 
> -- 
> Eddy Castillo
> Statistics, Process Reengineering and Sofware Development Consultant
> Mobile:             +52 (899) 214 5631

> ------------------------------------------------------------------------------
> AlienVault Unified Security Management (USM) platform delivers complete
> security visibility with the essential security capabilities. Easily and
> efficiently configure, manage, and operate all of your security controls
> from a single console and one unified framework. Download a free trial.
> http://p.sf.net/sfu/alienvault_d2d
> _______________________________________________
> Barry-devel mailing list
> Barry-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/barry-devel


------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Barry-devel mailing list
Barry-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/barry-devel

Reply via email to