commit 08b551624ca625a95a5d16af00ec49ea1cbc1439
parent 6822bb28a00b81e14d905c63df5a50ddd34e928a
Author: Miroslav Prasil <miroslav@prasil.info>
Date: Tue, 28 Aug 2018 14:06:54 +0100
Merge branch 'master' into alpine
Diffstat:
7 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/Dockerfile b/Dockerfile
@@ -4,7 +4,7 @@
####################### VAULT BUILD IMAGE #######################
FROM node:8-alpine as vault
-ENV VAULT_VERSION "v2.1.1"
+ENV VAULT_VERSION "v2.2.0"
ENV URL "https://github.com/bitwarden/web.git"
diff --git a/docker/set-vault-baseurl.patch b/docker/set-vault-baseurl.patch
@@ -1,7 +1,7 @@
--- a/src/app/services/services.module.ts
+++ b/src/app/services/services.module.ts
-@@ -116,17 +116,15 @@ const exportService = new ExportService(folderService, cipherService, apiService
- const importService = new ImportService(cipherService, folderService, apiService, i18nService, collectionService);
+@@ -120,20 +120,17 @@ const notificationsService = new NotificationsService(userService, syncService,
+ const environmentService = new EnvironmentService(apiService, storageService, notificationsService);
const auditService = new AuditService(cryptoFunctionService, apiService);
-const analytics = new Analytics(window, () => platformUtilsService.isDev() || platformUtilsService.isSelfHost(),
@@ -15,9 +15,14 @@
- const isDev = platformUtilsService.isDev();
- if (!isDev && platformUtilsService.isSelfHost()) {
- environmentService.baseUrl = window.location.origin;
+- } else {
+- environmentService.notificationsUrl = isDev ? 'http://localhost:61840' :
+- 'https://notifications.bitwarden.com'; // window.location.origin + '/notifications';
- }
+ const isDev = false;
+ environmentService.baseUrl = window.location.origin;
++ environmentService.notificationsUrl = window.location.origin + '/notifications';
++
await apiService.setUrls({
base: isDev ? null : window.location.origin,
api: isDev ? 'http://localhost:4000' : null,
diff --git a/migrations/2018-08-27-172114_update_ciphers/down.sql b/migrations/2018-08-27-172114_update_ciphers/down.sql
diff --git a/migrations/2018-08-27-172114_update_ciphers/up.sql b/migrations/2018-08-27-172114_update_ciphers/up.sql
@@ -0,0 +1,3 @@
+ALTER TABLE ciphers
+ ADD COLUMN
+ password_history TEXT;
+\ No newline at end of file
diff --git a/src/api/core/ciphers.rs b/src/api/core/ciphers.rs
@@ -112,6 +112,8 @@ struct CipherData {
Identity: Option<Value>,
Favorite: Option<bool>,
+
+ PasswordHistory: Option<Value>,
}
#[post("/ciphers/admin", data = "<data>")]
@@ -177,6 +179,7 @@ fn update_cipher_from_data(cipher: &mut Cipher, data: CipherData, headers: &Head
type_data["Name"] = Value::String(data.Name.clone());
type_data["Notes"] = data.Notes.clone().map(Value::String).unwrap_or(Value::Null);
type_data["Fields"] = data.Fields.clone().unwrap_or(Value::Null);
+ type_data["PasswordHistory"] = data.PasswordHistory.clone().unwrap_or(Value::Null);
// TODO: ******* Backwards compat end **********
cipher.favorite = data.Favorite.unwrap_or(false);
@@ -184,6 +187,7 @@ fn update_cipher_from_data(cipher: &mut Cipher, data: CipherData, headers: &Head
cipher.notes = data.Notes;
cipher.fields = data.Fields.map(|f| f.to_string());
cipher.data = type_data.to_string();
+ cipher.password_history = data.PasswordHistory.map(|f| f.to_string());
cipher.save(&conn);
diff --git a/src/db/models/cipher.rs b/src/db/models/cipher.rs
@@ -32,6 +32,7 @@ pub struct Cipher {
pub data: String,
pub favorite: bool,
+ pub password_history: Option<String>,
}
/// Local methods
@@ -55,6 +56,7 @@ impl Cipher {
fields: None,
data: String::new(),
+ password_history: None,
}
}
}
@@ -77,6 +79,10 @@ impl Cipher {
let fields_json: JsonValue = if let Some(ref fields) = self.fields {
serde_json::from_str(fields).unwrap()
} else { JsonValue::Null };
+
+ let password_history_json: JsonValue = if let Some(ref password_history) = self.password_history {
+ serde_json::from_str(password_history).unwrap()
+ } else { JsonValue::Null };
let mut data_json: JsonValue = serde_json::from_str(&self.data).unwrap();
@@ -108,6 +114,8 @@ impl Cipher {
"Object": "cipher",
"Edit": true,
+
+ "PasswordHistory": password_history_json,
});
let key = match self.type_ {
diff --git a/src/db/schema.rs b/src/db/schema.rs
@@ -21,6 +21,7 @@ table! {
fields -> Nullable<Text>,
data -> Text,
favorite -> Bool,
+ password_history -> Nullable<Text>,
}
}