Strict vCard parsing (#1607)
This commit is contained in:
@@ -19,7 +19,7 @@ mail-auth = { version = "0.7" }
|
||||
mail-send = { version = "0.5", default-features = false, features = ["cram-md5", "ring", "tls12"] }
|
||||
smtp-proto = { version = "0.1", features = ["rkyv"] }
|
||||
dns-update = { version = "0.1" }
|
||||
calcard = { version = "0.1.1", features = ["rkyv"] }
|
||||
calcard = { version = "0.1.2", features = ["rkyv"] }
|
||||
ahash = { version = "0.8.2", features = ["serde"] }
|
||||
parking_lot = "0.12.1"
|
||||
regex = "1.7.0"
|
||||
|
||||
@@ -7,7 +7,7 @@ edition = "2021"
|
||||
trc = { path = "../trc" }
|
||||
hashify = "0.2.6"
|
||||
quick-xml = "0.37.2"
|
||||
calcard = { version = "0.1.1", features = ["rkyv"] }
|
||||
calcard = { version = "0.1.2", features = ["rkyv"] }
|
||||
mail-parser = { version = "0.11", features = ["full_encoding", "rkyv"] }
|
||||
hyper = "1.6.0"
|
||||
rkyv = { version = "0.8.10", features = ["little_endian"] }
|
||||
@@ -15,7 +15,7 @@ chrono = { version = "0.4.40", features = ["serde"], optional = true }
|
||||
compact_str = "0.9.0"
|
||||
|
||||
[dev-dependencies]
|
||||
calcard = { version = "0.1.1", features = ["serde", "rkyv"] }
|
||||
calcard = { version = "0.1.2", features = ["serde", "rkyv"] }
|
||||
serde = { version = "1.0.217", features = ["derive"] }
|
||||
serde_json = "1.0.138"
|
||||
chrono = { version = "0.4.40", features = ["serde"] }
|
||||
|
||||
@@ -14,7 +14,7 @@ directory = { path = "../directory" }
|
||||
http_proto = { path = "../http-proto" }
|
||||
jmap_proto = { path = "../jmap-proto" }
|
||||
trc = { path = "../trc" }
|
||||
calcard = { version = "0.1.1", features = ["rkyv"] }
|
||||
calcard = { version = "0.1.2", features = ["rkyv"] }
|
||||
hashify = { version = "0.2" }
|
||||
hyper = { version = "1.0.1", features = ["server", "http1", "http2"] }
|
||||
percent-encoding = "2.3.1"
|
||||
|
||||
@@ -77,7 +77,7 @@ impl CardUpdateRequestHandler for Server {
|
||||
))
|
||||
})?;
|
||||
|
||||
let vcard = match Parser::new(vcard_raw).entry() {
|
||||
let vcard = match Parser::new(vcard_raw).strict().entry() {
|
||||
Entry::VCard(vcard) => vcard,
|
||||
_ => {
|
||||
return Err(DavError::Condition(DavErrorCondition::new(
|
||||
|
||||
@@ -12,7 +12,7 @@ jmap_proto = { path = "../jmap-proto" }
|
||||
trc = { path = "../trc" }
|
||||
directory = { path = "../directory" }
|
||||
dav-proto = { path = "../dav-proto" }
|
||||
calcard = { version = "0.1.1", features = ["rkyv"] }
|
||||
calcard = { version = "0.1.2", features = ["rkyv"] }
|
||||
hashify = "0.2"
|
||||
tokio = { version = "1.45", features = ["net", "macros"] }
|
||||
rkyv = { version = "0.8.10", features = ["little_endian"] }
|
||||
|
||||
Reference in New Issue
Block a user