Skip to content

Commit ce2d745

Browse files
committed
Merge rust-bitcoin/rust-bitcoin#1031: refactor: remove SchnorrSignatureHash::Reserved variant
69707b0 refactor: remove SchnorrSignatureHash::Reserved variant (eunoia_1729) Pull request description: Resolves #1030 ACKs for top commit: sanket1729: utACK 69707b0. For reference to other reviewers: tcharding: ACK 69707b0 apoelstra: ACK 69707b0 Tree-SHA512: d5afe9217e15db8dfd7d712e2fa69d22acda0f93fd7efbc80cf9459303a135a69c8ddf43842584769accb8cffba722ec202dc51f100e0f50262b2561a2fb1699
2 parents 392465c + 4f8db65 commit ce2d745

File tree

2 files changed

+1
-24
lines changed

2 files changed

+1
-24
lines changed

src/util/psbt/map/input.rs

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ pub struct PsbtSighashType {
162162
impl fmt::Display for PsbtSighashType {
163163
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
164164
match self.schnorr_hash_ty() {
165-
Ok(SchnorrSighashType::Reserved) | Err(_) => write!(f, "{:#x}", self.inner),
165+
Err(_) => write!(f, "{:#x}", self.inner),
166166
Ok(schnorr_hash_ty) => fmt::Display::fmt(&schnorr_hash_ty, f),
167167
}
168168
}
@@ -179,7 +179,6 @@ impl FromStr for PsbtSighashType {
179179
// inputs. We also do not support SIGHASH_RESERVED in verbatim form
180180
// ("0xFF" string should be used instead).
181181
match SchnorrSighashType::from_str(s) {
182-
Ok(SchnorrSighashType::Reserved) => return Err(SighashTypeParseError{ unrecognized: s.to_owned() }),
183182
Ok(ty) => return Ok(ty.into()),
184183
Err(_) => {}
185184
}
@@ -579,20 +578,6 @@ mod test {
579578
}
580579
}
581580

582-
#[test]
583-
fn psbt_sighash_type_schnorr_notstd() {
584-
for (schnorr, schnorr_str) in &[
585-
(SchnorrSighashType::Reserved, "0xff"),
586-
] {
587-
let sighash = PsbtSighashType::from(*schnorr);
588-
let s = format!("{}", sighash);
589-
assert_eq!(&s, schnorr_str);
590-
let back = PsbtSighashType::from_str(&s).unwrap();
591-
assert_eq!(back, sighash);
592-
assert_eq!(back.schnorr_hash_ty().unwrap(), *schnorr);
593-
}
594-
}
595-
596581
#[test]
597582
fn psbt_sighash_type_notstd() {
598583
let nonstd = 0xdddddddd;

src/util/sighash.rs

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -125,9 +125,6 @@ pub enum SchnorrSighashType {
125125
NonePlusAnyoneCanPay = 0x82,
126126
/// 0x83: Sign one output and only this input (see `Single` for what "one output" means).
127127
SinglePlusAnyoneCanPay = 0x83,
128-
129-
/// Reserved for future use, `#[non_exhaustive]` is not available with MSRV 1.29.0
130-
Reserved = 0xFF,
131128
}
132129
serde_string_impl!(SchnorrSighashType, "a SchnorrSighashType data");
133130

@@ -141,7 +138,6 @@ impl fmt::Display for SchnorrSighashType {
141138
SchnorrSighashType::AllPlusAnyoneCanPay => "SIGHASH_ALL|SIGHASH_ANYONECANPAY",
142139
SchnorrSighashType::NonePlusAnyoneCanPay => "SIGHASH_NONE|SIGHASH_ANYONECANPAY",
143140
SchnorrSighashType::SinglePlusAnyoneCanPay => "SIGHASH_SINGLE|SIGHASH_ANYONECANPAY",
144-
SchnorrSighashType::Reserved => "SIGHASH_RESERVED",
145141
};
146142
f.write_str(s)
147143
}
@@ -159,7 +155,6 @@ impl str::FromStr for SchnorrSighashType {
159155
"SIGHASH_ALL|SIGHASH_ANYONECANPAY" => Ok(SchnorrSighashType::AllPlusAnyoneCanPay),
160156
"SIGHASH_NONE|SIGHASH_ANYONECANPAY" => Ok(SchnorrSighashType::NonePlusAnyoneCanPay),
161157
"SIGHASH_SINGLE|SIGHASH_ANYONECANPAY" => Ok(SchnorrSighashType::SinglePlusAnyoneCanPay),
162-
"SIGHASH_RESERVED" => Ok(SchnorrSighashType::Reserved),
163158
_ => Err(SighashTypeParseError{ unrecognized: s.to_owned() }),
164159
}
165160
}
@@ -330,7 +325,6 @@ impl SchnorrSighashType {
330325
SchnorrSighashType::AllPlusAnyoneCanPay => (SchnorrSighashType::All, true),
331326
SchnorrSighashType::NonePlusAnyoneCanPay => (SchnorrSighashType::None, true),
332327
SchnorrSighashType::SinglePlusAnyoneCanPay => (SchnorrSighashType::Single, true),
333-
SchnorrSighashType::Reserved => (SchnorrSighashType::Reserved, false),
334328
}
335329
}
336330

@@ -344,7 +338,6 @@ impl SchnorrSighashType {
344338
0x81 => Ok(SchnorrSighashType::AllPlusAnyoneCanPay),
345339
0x82 => Ok(SchnorrSighashType::NonePlusAnyoneCanPay),
346340
0x83 => Ok(SchnorrSighashType::SinglePlusAnyoneCanPay),
347-
0xFF => Ok(SchnorrSighashType::Reserved),
348341
x => Err(Error::InvalidSighashType(x as u32)),
349342
}
350343
}
@@ -1174,7 +1167,6 @@ mod tests {
11741167
("SIGHASH_ALL|SIGHASH_ANYONECANPAY", SchnorrSighashType::AllPlusAnyoneCanPay),
11751168
("SIGHASH_NONE|SIGHASH_ANYONECANPAY", SchnorrSighashType::NonePlusAnyoneCanPay),
11761169
("SIGHASH_SINGLE|SIGHASH_ANYONECANPAY", SchnorrSighashType::SinglePlusAnyoneCanPay),
1177-
("SIGHASH_RESERVED", SchnorrSighashType::Reserved),
11781170
];
11791171
for (s, sht) in sighashtypes {
11801172
assert_eq!(sht.to_string(), s);

0 commit comments

Comments
 (0)