mirrored from https://www.bouncycastle.org/repositories/bc-java
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch '1750-preferredkeysever-signature-subpacket' into 'main'
#1750 Implement PreferredKeyServer signature subpacket See merge request root/bc-java!24
- Loading branch information
Showing
4 changed files
with
69 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
46 changes: 46 additions & 0 deletions
46
pg/src/main/java/org/bouncycastle/bcpg/sig/PreferredKeyServer.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
package org.bouncycastle.bcpg.sig; | ||
|
||
import org.bouncycastle.bcpg.SignatureSubpacket; | ||
import org.bouncycastle.bcpg.SignatureSubpacketTags; | ||
import org.bouncycastle.util.Arrays; | ||
import org.bouncycastle.util.Strings; | ||
|
||
/** | ||
* Signature Subpacket containing the URI of the users preferred key server. | ||
* This is a URI of a key server that the key holder prefers be used for updates. | ||
* Note that keys with multiple User IDs can have a preferred key server for each User ID. | ||
* Note also that since this is a URI, the key server can actually be a copy of the key | ||
* retrieved by ftp, http, finger, etc. | ||
* | ||
* @see <a href="https://datatracker.ietf.org/doc/html/rfc4880#section-5.2.3.18"> | ||
* RFC4880 - Preferred Key Server</a> | ||
* @see <a href="https://www.rfc-editor.org/rfc/rfc9580.html#name-preferred-key-server"> | ||
* RFC9580 - Preferred Key Server</a> | ||
*/ | ||
public class PreferredKeyServer | ||
extends SignatureSubpacket | ||
{ | ||
public PreferredKeyServer(boolean critical, boolean isLongLength, byte[] data) | ||
{ | ||
super(SignatureSubpacketTags.PREFERRED_KEY_SERV, critical, isLongLength, data); | ||
} | ||
|
||
public PreferredKeyServer(boolean critical, String uri) | ||
{ | ||
this(critical, false, Strings.toUTF8ByteArray(uri)); | ||
} | ||
|
||
/** | ||
* Return the URI of the users preferred key server. | ||
* @return key server uri | ||
*/ | ||
public String getURI() | ||
{ | ||
return Strings.fromUTF8ByteArray(data); | ||
} | ||
|
||
public byte[] getRawURI() | ||
{ | ||
return Arrays.clone(data); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters