| Index: net/cert/internal/parse_name.cc
|
| diff --git a/net/cert/internal/parse_name.cc b/net/cert/internal/parse_name.cc
|
| index 2e7a8e705657b49bcb56fc21910d913cd74e1d2b..d9eaaeed7c86f25de361e8d5f5804f892294a879 100644
|
| --- a/net/cert/internal/parse_name.cc
|
| +++ b/net/cert/internal/parse_name.cc
|
| @@ -134,6 +134,12 @@ der::Input TypeStateOrProvinceNameOid() {
|
| return der::Input(oid);
|
| }
|
|
|
| +der::Input TypeStreetAddressOid() {
|
| + // street (streetAddress): 2.5.4.9 (RFC 4519)
|
| + static const uint8_t oid[] = {0x55, 0x04, 0x09};
|
| + return der::Input(oid);
|
| +}
|
| +
|
| der::Input TypeOrganizationNameOid() {
|
| // id-at-organizationName: 2.5.4.10 (RFC 5280)
|
| static const uint8_t oid[] = {0x55, 0x04, 0x0a};
|
| @@ -176,6 +182,13 @@ der::Input TypeGenerationQualifierOid() {
|
| return der::Input(oid);
|
| }
|
|
|
| +der::Input TypeDomainComponentOid() {
|
| + // dc (domainComponent): 0.9.2342.19200300.100.1.25 (RFC 4519)
|
| + static const uint8_t oid[] = {0x09, 0x92, 0x26, 0x89, 0x93,
|
| + 0xF2, 0x2C, 0x64, 0x01, 0x19};
|
| + return der::Input(oid);
|
| +}
|
| +
|
| bool X509NameAttribute::ValueAsString(std::string* out) const {
|
| switch (value_tag) {
|
| case der::kTeletexString:
|
| @@ -234,6 +247,7 @@ bool X509NameAttribute::ValueAsStringUnsafe(std::string* out) const {
|
| bool X509NameAttribute::AsRFC2253String(std::string* out) const {
|
| std::string type_string;
|
| std::string value_string;
|
| + // TODO(mattm): Add streetAddress and domainComponent here?
|
| if (type == TypeCommonNameOid()) {
|
| type_string = "CN";
|
| } else if (type == TypeSurnameOid()) {
|
|
|