frank3427 wrote
2021-07-24T13:44:19+0000 [stdout#info] "error loading post_auth script: Missing parentheses in call to 'print'. Did you mean print(\"********** POST_AUTH\", authcred, attributes, authret, info)? (<string>, line 165): svc/svc:675,sagent/authsvc:114,sagent/authsvc:103 (SyntaxError)"
This is the part to focus on.
Python v2 allowed print to be a keyword instead of a function. As such this is valid in v2 but not v3:
print "Hello World"
Instead, this is valid in both Python v2.7 and v3:
print("Hello World")
This is just one issue with using your existing post_auth script with 2.9.x, there may be others.
Some of these can be fixed using Python's automated "2to3" code translation as explained here:
https://docs.python.org/3/library/2to3.html
This however does not always fix everything and sometimes additional changes by hand need to be made.
Until the post_auth script is updated to follow the requirements of Python v3, you will have to remain on 2.8.8 since that is still Python v2 based.
If you are willing to share your post_auth script, we can make suggestions on how to modify it.
If the post_auth script is considered confidential then you should provide the script to OpenVPN AS support and they can try to provide guidance on modifying it to Python v3. Given the amount of Python v2 code they must have just modified to make AS v2.9 a reality, I can imagine they have some of the developers that have gotten really good at spotting v2 to v3 changes that need to be made.