From c320caec99abacb41e87b5d353e887cf54d50ea5 Mon Sep 17 00:00:00 2001 From: Krishna Acondy Date: Mon, 14 Jun 2021 09:10:26 +0100 Subject: [PATCH] fix(sas9): force webout output when executing arbitrary code on SAS9 --- src/SAS9ApiClient.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/SAS9ApiClient.ts b/src/SAS9ApiClient.ts index cd76e91..83c4c7f 100644 --- a/src/SAS9ApiClient.ts +++ b/src/SAS9ApiClient.ts @@ -45,7 +45,9 @@ export class SAS9ApiClient { ) { await this.requestClient.login(userName, password, this.jobsPath) - const formData = generateFileUploadForm(linesOfCode.join('\n')) + // This piece of code forces a webout to prevent Stored Process Errors. + const forceOutputCode = ['data _null_;', 'file _webout;', `put 'Executed sasjs run';`, 'run;'] + const formData = generateFileUploadForm([...linesOfCode, ...forceOutputCode].join('\n')) const codeInjectorPath = `/User Folders/${userName}/My Folder/sasjs/runner` const contentType =