commit 0fb764621e173493d09501b833b23d1e7a1237db
parent ab67954124d3d768e40045c9acadbe4a3802b4ea
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Thu, 22 Oct 2026 22:02:27 +0200
mailbox/taldir: return emtpy string targetUri on lookup 404
Diffstat:
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/packages/taler-util/src/http-client/taldir.ts b/packages/taler-util/src/http-client/taldir.ts
@@ -27,6 +27,7 @@ import {
TalerDirectoryApi,
carefullyParseConfig,
codecForAny,
+ codecForEmptyObject,
codecForTaldirAlreadyPaidResponse,
codecForTalerDirectoryConfigResponse,
opFixedSuccess,
@@ -121,7 +122,7 @@ export class TalerDirectoryInstanceHttpClient {
return opSuccessFromHttp(resp, codecForAny());
}
case HttpStatusCode.NotFound: {
- return opKnownHttpFailure(resp.status, resp);
+ return opFixedSuccess(resp, {target_uri: ''});
}
default:
return opUnknownHttpFailure(resp);
diff --git a/packages/taler-wallet-core/src/taldir.ts b/packages/taler-wallet-core/src/taldir.ts
@@ -157,15 +157,17 @@ async function internalLookupAlias(
);
const hAlias = encodeCrock(sha512(hAliasBuffer));
const res = await runWithProgressRetries(wex, async () =>
- await taldirClient.lookupAlias({ hAlias: hAlias }),
+ await taldirClient.lookupAlias({ hAlias: hAlias }),
);
switch (res.case) {
case "ok":
return {
- targetUri: res.body.target_uri,
+ targetUri: res.body?.target_uri,
};
case HttpStatusCode.NotFound:
- return {};
+ return {
+ targetUri: "",
+ };
default:
throw TalerError.fromDetail(
TalerErrorCode.WALLET_ALIAS_REGISTRATION_FAILED,