added keyserver/proxy support to certify operation

This commit is contained in:
Adithya Abraham Philip
2015-06-12 23:06:35 +05:30
parent ec8c57b780
commit f8da3d784b
3 changed files with 14 additions and 1 deletions

View File

@@ -46,6 +46,7 @@ import org.sufficientlysecure.keychain.service.input.RequiredInputParcel;
import org.sufficientlysecure.keychain.service.input.RequiredInputParcel.NfcSignOperationsBuilder;
import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils;
import org.sufficientlysecure.keychain.util.Log;
import org.sufficientlysecure.keychain.util.ParcelableProxy;
import org.sufficientlysecure.keychain.util.Passphrase;
import java.net.Proxy;
@@ -213,7 +214,8 @@ public class CertifyOperation extends BaseOperation<CertifyActionsParcel> {
SaveKeyringResult result = mProviderHelper.savePublicKeyRing(certifiedKey);
if (exportOperation != null) {
ExportResult uploadResult = importExportOperation.uploadKeyRingToServer(keyServer, certifiedKey, proxy);
ExportResult uploadResult = importExportOperation.uploadKeyRingToServer(keyServer, certifiedKey,
parcelableProxy.getProxy());
log.add(uploadResult, 2);
if (uploadResult.success()) {

View File

@@ -29,6 +29,7 @@ import java.util.Map;
import org.sufficientlysecure.keychain.pgp.WrappedUserAttribute;
import org.sufficientlysecure.keychain.service.input.CryptoInputParcel;
import org.sufficientlysecure.keychain.util.ParcelableProxy;
/**
@@ -44,6 +45,7 @@ public class CertifyActionsParcel implements Parcelable {
public ArrayList<CertifyAction> mCertifyActions = new ArrayList<>();
public String keyServerUri;
public ParcelableProxy parcelableProxy;
public CertifyActionsParcel(long masterKeyId) {
mMasterKeyId = masterKeyId;
@@ -54,6 +56,8 @@ public class CertifyActionsParcel implements Parcelable {
mMasterKeyId = source.readLong();
// just like parcelables, this is meant for ad-hoc IPC only and is NOT portable!
mLevel = CertifyLevel.values()[source.readInt()];
keyServerUri = source.readString();
parcelableProxy = source.readParcelable(ParcelableProxy.class.getClassLoader());
mCertifyActions = (ArrayList<CertifyAction>) source.readSerializable();
}
@@ -66,6 +70,8 @@ public class CertifyActionsParcel implements Parcelable {
public void writeToParcel(Parcel destination, int flags) {
destination.writeLong(mMasterKeyId);
destination.writeInt(mLevel.ordinal());
destination.writeString(keyServerUri);
destination.writeParcelable(parcelableProxy, flags);
destination.writeSerializable(mCertifyActions);
}

View File

@@ -311,6 +311,11 @@ public class CertifyKeyFragment
CertifyActionsParcel actionsParcel = new CertifyActionsParcel(selectedKeyId);
actionsParcel.mCertifyActions.addAll(certifyActions);
if (mUploadKeyCheckbox.isChecked()) {
actionsParcel.keyServerUri = Preferences.getPreferences(getActivity()).getPreferredKeyserver();
actionsParcel.parcelableProxy = mProxyPrefs.parcelableProxy;
}
// cached for next cryptoOperation loop
cacheActionsParcel(actionsParcel);