Jump to content

Discord   |   Play games and chat with our PC gaming community in Discord.
Launch Discord  
Photo

Paronicon 2 API Error 408

paronicon2 api

  • Please log in to reply
8 replies to this topic

#1
stephan48

stephan48
  • Forum Member
  • 2 posts
Operating System: Windows 10
App/Game Name: Paronicon 2
Error Code/Message: xxauthUserxxxx1482784945Insufficient PrivilegesYour account does not have the proper level of access to run that method!

Hi,

 

Currently i got a Problem getting Paronicon 2's API to work nicely(or at all) with any Client i want to connect.

 

I tested this on two different Paronicon 2 Instances(one fresh - no servers no data; one older with a full database and one BO1 Server). I configured a random port and some Users in the Paronicon 2 API Dialogs. All of them got the correct set of permissions including authUser and several others.

 

But on every authUser call i get just an error 408 complaing that that user has no permissions to access the command.

 

It does not matter if i add all Commands or remove them all.

 

I crosschecked the SQLite db api.pnc and it checks out okey according to what i can tell from my research.

 

Any idea what could cause this Problem?

 

*cough* After glimpsing at the code with JetBrains dotPeerk i can just imagine the check "if (this.userHasAccessToCommand(token, request.QueryString["method"]))"(apiListener -> authuser) is always failing because by definition there is no other command which is able to even add users there. So the cache Structure must always be empty thus no user can ever auth*cough*

 

-- Stephan

 

 



#2
Paronity

Paronity

  • Forum Member
  • var Paronity = new Guru();

  • 16,885 posts

I stopped working on all the API stuff, but I did have it working. If it got broken, it must have been inadvertent. 

 

 

Your logic by poking around the code seems like it could be, but as with any Reflection tools, it's not a 1 to 1  code view. There is specific checks for it to be an auth (If I recall correctly anyway). I'll have to take a peek at the code to see for sure though. I should warn you that the API is going to return a lot of commands that aren't fully functional just yet. 

 

I should be able to take a look tomorrow when I'm working. 



#3
stephan48

stephan48
  • Forum Member
  • 2 posts

Hello Paronity,

 

Thank you for replying so fast!

 

Yea i am suspecting a regression would be the most likely cause if any! The issue with reflection tools is known to me and quite visible in other code party where there are f.e. constants in use(which are now only numbers). Also you can never fully grasp someone elses code in just a few minutes and on a cursory glance.

 

I would appreciate you looking at the code but i will also gladly offer to look into this myself if you would find it acceptable to give me access to the sourcode(if needed i can also offer private repository hosting). I am not proefficient in .Net languages but usually can adapt well enough.

 

Basically i am just too lazy to implement the rcon protocol by myself for a few little helpers for our Black Ops 1 Server. One of then is supposed to check the GUID(steam3 ID as i found out) against the ban check Web API from Steam for auto banning any players having a vac ban in any game.

 

For this i just need a playerlist/ban command.

 

I thank you very much for taking this effort! Are you still actively working on Paronicon 2?

 

(I added you on steam btw.)

 

-- Stephan



#4
Paronity

Paronity

  • Forum Member
  • var Paronity = new Guru();

  • 16,885 posts
Well, the code is in a private repo already (I have premium for my jobs). Thanks for the offer though. I wouldn't mind having someone peak over the code with me here or there, but you have to realize that I used Paronicon to learn object oriented programming and therefore the code is quite terrible Things like best practices, classes, custom objects, polymorphism, threading, inheritance, simplified flow, agile development, ect....were all new to me. Granted it worked and now I'm much more seasoned, but I don't have time/money to refactor it right now.

As to working on it actively, no. I haven't for a while. If someone reaches out to me with an issue that I can fix simply, I'll throw a build together. Other than that, it just sits idle and I doubt that will change since hosted servers are a thing if the past. If I picked it up again, I probably would start from scratch since this is a lot of hack coding.

We will talk more sometime when I'm at a pc. I'll add you later and we can chat sometime soon.

#5
VictorV

VictorV
  • Forum Member
  • 2 posts

Hi,

 

Did you found a solution for this? can we get access to the source code to fix the error?



#6
Paronity

Paronity

  • Forum Member
  • var Paronity = new Guru();

  • 16,885 posts

Hi,

 

Did you found a solution for this? can we get access to the source code to fix the error?

 

Sorry for the delayed repose. I got your message on twitter. I'm building an EXE for now. 



#7
Paronity

Paronity

  • Forum Member
  • var Paronity = new Guru();

  • 16,885 posts

Ok - This is the latest build. I don't have my primary machine setup, which has the installer and stuff on it at this time. Thus, I did not increase the version number so that it will still pick up when I officially push it.  Just drop this EXE in and give it a whirl:

 

https://paronity.com/i/Paronicon.exe



#8
VictorV

VictorV
  • Forum Member
  • 2 posts

Thanks.

 

Had you think to put the project as an open source? you can find a lot of contributors.


Edited by VictorV, March 31, 2017.


#9
Paronity

Paronity

  • Forum Member
  • var Paronity = new Guru();

  • 16,885 posts

Thanks.

 

Had you think to put the project as an open source? you can find a lot of contributors.

 

I support open-source wholeheartedly, however, due to the nature of Paronicon, as well as some flaws that were made in its development, I'm afraid it can never be open source.

 

Paronicon started as a mere concept and for me to learn how to code from the ground up and to do while I was bored. Due to that, there are several pieces of code that simply can not be trusted in the hands of some people, and unfortunately, it is those people that will prevent it from being open in the near future as well.

 

There are a couple people that have access to the code repository and I'm not above letting people into it, but It has to be done very selectively, and in a way that still allows me to have control of who sees it (to some extent).  






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users