"Undocumented" client settings?

There have been discussions on this and many settings give very fine control and often should be used with the guidance of someone who knows the ramifications.

The settings you mention are Relay specific settings (the client ignores them)

For the priority setting the best description is: All relays of priority 0 are selected before all relays of priority 1, etc.

For the RelayWeight, I’m not even sure the document I can see makes sense so I’ll have to find a better way of explaining it when I know what it does…

1 Like

Any client settings that are potentially problematic could be documented as such, possibly even in a completely different document.

This is purely a guess, but I think this is what RelayWeight does:

If the RelayWeight is the same for all relays, which it should be by default, then when the client performs relay selection, all other things being equal, it will pick one of the relays at random.

If the RelayWeight is not the same for all relays and all other things being equal when the client does relay selection, then it will tend to pick the relay with the higher weight more often and those with lower weight less often.

Example:

If you have multiple relays in the same building, and some are desktop computers, while others are proper servers, the servers can handle more clients than the desktops, so giving the servers more weight would automatically cause them to take a larger load of clients.

Brother Google was able to find these when I searched for “BESRelaySelection_RelayWeight”

1 Like

Nope.

I find the lack of documentation of client settings quite annoying. A while back I thought of checking all of the strings in the BES Client executable for possible client settings, and then I just moved on and forget about doing that.

Well today, I finally stumbled on this: https://malwr.com/analysis/ZWFhZjgzYTdiZGEyNDMyN2JhMTJmMjdkZjcyMDE4NjU/

It has all of the strings in the EXE in the static analysis navigation item under the strings tab.

I then dumped them all into a file and filtered them to only contain the strings starting with an underscore with this relevance:

unique values of (it as trimmed string) whose(it starts with "_") of lines of files "C:\temp\BES_Client_Strings.txt"

Here is the resulting set of strings: (some removed that didn’t appear to be client settings)

https://gist.github.com/jgstew/3a0874e940350efb000f

3 Likes

Ironic enough, I just emailed our platform agent developer regarding this, literally 15 minutes ago. I am waiting for a response on updated internal documentation for newer releases and a time line for these updates. I may just proceed forward on releasing existing internal client setting documentation we have this week after reviewing and sanitizing it a little. Will keep the community here posted.

There has always been a fear that customers will start messing around with some of the more impacting settings and shoot their deployments in the foot. I think we already give our customers enough to shoot themselves in the foot with so I think some of the fear is misplaced. Disclaimers and best practices to follow on the release will be prominent.

1 Like

Looks to be a difference of about 80 settings (that I can see) not published to the external wiki page (https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Tivoli%20Endpoint%20Manager/page/Configuration%20Settings).

For “BESRelaySelection_RelayWeight” & “BESRelaySelection_RelayPriority”:

These one’s, I do not see, so maybe they are hidden internally as well (maybe they were published around the time older version of the agents and are now deprecated and untested in current agent versions, don’t know).

Will work on it… :smile:

1 Like

I posted a subset of strings of the BES Client. My guess is that the other settings are in the Root & Relay EXEs. I haven’t gotten that far yet to get those as well.

I would guess that the BES Client only contains the strings that it reads, not ones that it doesn’t. Even so it is possible that you are correct and they are just missing.

Curious, did you somehow decompile the EXE to get the settings information?

1 Like

I believe he posted a link to the utility he used to extract the Static Strings from the EXE file.

2 Likes

Ah thank you. Missed the link to the tool.

1 Like

That looks like output from good old strings.

1 Like

Not decompile, just got the strings out of it using this:

Probably something similar that runs on *nix or Wine or it could use a temporary windows host for some of the analysis.

http://www-01.ibm.com/support/docview.wss?uid=swg21976373

Someone who isn’t me also just opened the executable with notepad++ and searched for combinations of “__” “__bes” etc

2 Likes

Here is one I just discovered: _BESRelay_Comm_KeyExchangePassword

The documentation seems to suggest that this doesn’t have to be a onetime password and can instead be a static password that any client could use to get going.

Yeah, waiting for release from dev for list of current client settings as of 9.2 and upcoming 9.5. Hopefully soon.

@BigFixNinja The link you posted previously seems to be “dead” or at least “not available”.

2 Likes

Yeah, it was killed. Development is working on releasing a revised revision of it. @steve

1 Like

Well that is not cool. :frowning: