Forum

Results 1 to 4 of 4
  1. #1
    Join Date
    December 2009
    Location
    Germany
    Posts
    118

    Question Too high credentials on Query-Port?!?!

    Hello TS3-Team,

    I'm currently writing a library in C# which will later be used in a Silverlight front-end to provide a Remote Control Panel of TS3 that can be used in web-pages and within the windows sidebar.

    During testing the Server-Query port of my TS3 server I've noticed that the default credentials of a non authenticated user (using the query port) are too high. (That's my opinion)

    Pre-Conditions:
    - 1 Virtual Server running, which is password protected

    Here are my reasons: (Tested without authentication just used telnet, no usage of "login"!!!)
    - Poke Message to a user works (why the hell can I send messages to users of a password-protected server?)
    - ComplainList can be retrieved
    - BanList can be retrieved
    - SendTextMessage to Channel and User works (wahhhhhhh, remember the server is password protected!)
    - ClientList --> IP of QuerySession-Users is listed with port (Why the hell can every other query session user see my IP address?)


    Just my 2 cents to the query syntax:

    So far it's good, there are a few mistakes in the documentation but thats not the problem, the only thing that I think isn't perfect is the pipe-operator. Parsing the results of a query that contains pipes isn't bullet proof, because sometimes the pipes covers multiple key-value-pairs (list items) and sometimes not.

    Example from the docs:


    Query: servergroupclientlist sgid=16
    Result: cldbid=7|cldbid=8|cldbid=9|cldbid=11|cldbid=13|cld bid=16|cldbid=18|cldbid=29|cldbid=32|cldbid=34|cld bid=37|cldbid=4
    0|cldbid=47|cldbid=53
    My Comment: In this case the result is a list of single key-value-pairs


    Query: channellist -topic
    Result: cid=15 pid=0 channel_order=0 channel_name=Default\sChannel channel_topic=Default\sChannel\shas\sno\s[b]topic[\/b]
    total_clients=2|cid=16
    error id=0 msg=ok
    My Comment: In this case the pipe is used to seperate listitems where each listitem contains multiple key-value-pairs


    Query: channelpermlist cid=2
    Result: cid=2 permid=4353 permvalue=1 permnegated=0 permskip=0|permid=17276 permvalue=50
    error id=0 msg=ok
    My Comment: In this case the pipe is again used to seperate listitems where each listitem contains multiple key-value-pairs, but this time there is a single key-value-pair in the front of the listitems.


    What did you guys thought about parsing this? I have a few ideas on how to do it, but in your docs you dont tell us which other special cases may appear. I'de like to write a generic logic to parse results but this doesn't seemed to be as easy as expected :-D. Am I missing something?

    There is no hint when the pipe operator is used to separate multiple key-value-pairs or single key-value-pairs and so on.

    Anyway nice work!
    SCO

  2. #2
    Join Date
    September 2005
    Location
    Germany / Dortmund
    Posts
    1,376
    Always, a command returns a list, the items will be separated by pipes.
    The different keys are separated by whitespaces.
    Key and value are separated by equals.

    So first, you can split by pipes, than by whitespaces and then by equals.

    All your examples are lists, so what's the problem?

  3. #3
    Join Date
    December 2009
    Location
    Germany
    Posts
    118
    That's my Problem:

    cid=2 permid=4353 permvalue=1 permnegated=0 permskip=0|permid=17276 permvalue=50


    I think the red one shouldn't be part of the first listitem and in a well parsable output there should be separation between unique elements and list elements.

    The ClientId is related to both listitems and shouldn't be part of the first list item, not be part of the result, be included in both listitems or be strictly separated from list elements.

    Ok, maybe I'm too spoiled but that's my opinion.
    But what about the rights?

    Thanks,
    SCO

  4. #4
    Join Date
    September 2005
    Location
    Germany / Dortmund
    Posts
    1,376
    Yes, I agree with that example

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Query IP, Query Port Binding
    By Molar1 in forum Windows
    Replies: 1
    Last Post: March 13th, 2012, 06:08 PM
  2. Find Query port by Query Command?
    By charlie in forum General Questions
    Replies: 5
    Last Post: March 6th, 2010, 04:12 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •