aws-lambda-ses-forwarder
aws-lambda-ses-forwarder copied to clipboard
sendRawEmail() returned error.', error: { InvalidParameterValue: Extra route-addr
I get this error while receiving message from some sender. Here is the full log:
2018-08-18T13:06:55.144Z 710b21e6-a2e7-11e8-bb16-6fd06275919c { level: 'error',
message: 'sendRawEmail() returned error.',
error:
{ InvalidParameterValue: Extra route-addr
at Request.extractError (/var/task/node_modules/aws-sdk/lib/protocol/query.js:40:29)
at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:105:20)
at Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:77:10)
at Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:615:14)
at Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)
at AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)
at /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10
at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:38:9)
at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:617:12)
at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:115:18)
message: 'Extra route-addr',
code: 'InvalidParameterValue',
time: 2018-08-18T13:06:55.144Z,
requestId: '94b1695e-a2e7-11e8-9a2c-2d01d30858be',
statusCode: 400,
retryable: false,
retryDelay: 82.07819726055612 },
stack: 'InvalidParameterValue: Extra route-addr\n at Request.extractError (/var/task/node_modules/aws-sdk/lib/protocol/query.js:40:29)\n at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:105:20)\n at Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:77:10)\n at Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:615:14)\n at Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)\n at AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)\n at /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10\n at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:38:9)\n at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:617:12)\n at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:115:18)' }
What could be the reason?
Multi-lines To:
, Reply-to:
or Return-Path:
headers will cause this error.
I applied the same fix seen here for multi-lines From:
headers to all those headers, in the RegExp used in header.match()
and header.replace()
and it fixed the InvalidParameterValue: Extra route-addr
I had.
I had this error for the Sender header.
I changed this line:
header = header.replace(/^Sender: (.*)\r?\n/mg, '');
To be:
header = header.replace(/^Sender: (.*(?:\r?\n\s+.*)*)\r?\n/mg, '');
I opened the problem message in atom and did a regular expression search to test all the header replacements until I found the problem one.