linagora / tmail-flutter

A multi-platform (Flutter) application for reading your emails, with your favorite devices, using the JMAP protocol!
GNU Affero General Public License v3.0
299 stars 65 forks source link

[Dev] Support SMime signature validation #3031

Closed dab246 closed 1 week ago

dab246 commented 1 month ago

Descriptions

DoD

Technical

enum SMimeSigantureStatus {
   goodSignature,
   badSignature,
   notSigned
}
static const String smimeSignatureStatusHeaderName = 'X-SMIME-Status';

SMimeSigantureStatus get smimeSignatureStatus {
    final smimeStatus = headers?.firstWhereOrNull((header) => header.name == smimeSignatureStatusHeaderName);
    if (smimeStatus == 'Good signature') {
       return SMimeSigantureStatus.goodSignature;
    } else  if (smimeStatus == 'Bad signature') {
       return SMimeSigantureStatus.badSignature;
    } else {
      return SMimeSigantureStatus.notSigned;
    }
}
hoangdat commented 1 month ago