import org.bouncycastle.crypto.Mac;
import org.bouncycastle.crypto.macs.I2PHMac;
public class HMAC256Generator extends HMACGenerator {
public HMAC256Generator(I2PAppContext context) { super(context); }
@Override
<BUG>protected I2PHMac acquire() {
synchronized (_available) {
if (!_available.isEmpty())
return (I2PHMac)_available.remove(0);
}</BUG>
return new I2PHMac(new Sha256ForMAC());

import org.bouncycastle.crypto.Mac;
import org.bouncycastle.crypto.macs.I2PHMac;
public class HMAC256Generator extends HMACGenerator {
public HMAC256Generator(I2PAppContext context) { super(context); }
@Override
protected I2PHMac acquire() {
I2PHMac rv = _available.poll();
if (rv != null)
return rv;
return new I2PHMac(new Sha256ForMAC());
