Merge change 6045 into donut

* changes:
  Remove the null-termination for Java string compatibility.
This commit is contained in:
Android (Google) Code Review
2009-07-02 08:34:35 -07:00
3 changed files with 13 additions and 5 deletions

View File

@@ -142,7 +142,7 @@ static void do_get_state(LPC_MARSHAL *cmd, LPC_MARSHAL *reply)
static void do_listkeys(LPC_MARSHAL *cmd, LPC_MARSHAL *reply)
{
reply->retcode = list_keys((const char*)cmd->data, (char*)reply->data);
if (!reply->retcode) reply->len = strlen((char*)reply->data) + 1;
if (!reply->retcode) reply->len = strlen((char*)reply->data);
}
// args of get():

View File

@@ -51,7 +51,7 @@ public class CertTool {
private static final String USER_CERTIFICATE = "USRCERT";
private static final String USER_KEY = "USRKEY";
private static final String KEYNAME_DELIMITER = " ";
private static final String KEYNAME_DELIMITER = "_";
private static final Keystore keystore = Keystore.getInstance();
private native String generateCertificateRequest(int bits, String subject);

View File

@@ -25,6 +25,12 @@ public abstract class Keystore {
private static final String TAG = "Keystore";
private static final String[] NOTFOUND = new String[0];
// Keystore States
public static final int BOOTUP = 0;
public static final int UNINITIALIZED = 1;
public static final int LOCKED = 2;
public static final int UNLOCKED = 3;
/**
*/
public static Keystore getInstance() {
@@ -195,9 +201,11 @@ public abstract class Keystore {
public String[] listKeys(String namespace) {
Reply result = mServiceCommand.execute(ServiceCommand.LIST_KEYS,
namespace);
return (result != null) ? ((result.returnCode != 0) ? NOTFOUND :
new String(result.data, 0, result.len).split("\\s+"))
: NOTFOUND;
if ((result == null) || (result.returnCode != 0) ||
(result.len == 0)) {
return NOTFOUND;
}
return new String(result.data, 0, result.len).split("\\s+");
}
@Override