On 12/18/13 19:10, Paul Reeves wrote:
> On Wednesday 18 December 2013 15:44:58 Mark Rotteveel wrote:
>> I don't think they should. Most of the isc_info_ items without svc in
>> their name are part of the information request or response block (eg using
>> isc_database_info()).
>>
> Mark,
>
> these all work...
>
>    fbsvcmgr service_mgr user sysdba password masterkey info_get_env
>    fbsvcmgr service_mgr user sysdba password masterkey info_get_env_lock
>    fbsvcmgr service_mgr user sysdba password masterkey info_get_env_msg
>    fbsvcmgr service_mgr user sysdba password masterkey info_version
>    fbsvcmgr service_mgr user sysdba password masterkey info_server_version
>    fbsvcmgr service_mgr user sysdba password masterkey info_implementation
>    fbsvcmgr service_mgr user sysdba password masterkey info_user_dbpath
>    fbsvcmgr service_mgr user sysdba password masterkey info_svr_db_info
>
> These ought to work in exactly the same way...

Most of following items actually work, but in a hidden form. First of 
all let's take into an account that info items often behave very 
different one from other. Some info items make sense only when service 
is started and sends data to the user. Others may be used always. Most 
deliver additional info from server, but some may work in other direction.

>    fbsvcmgr service_mgr user sysdba password masterkey info_get_config

This is not supported by our engine and therefore is missing in 
fbsvcmgr. I see the following strange comment:
         case isc_info_svc_get_config:
             // TODO: iterate through all integer-based config values
             //       and return them to the client
Why only integer? It's not a big problem to type firebird.conf as a 
reply to this call, but traditionally this item was supported for 
anonymous services, and currently we do not like an idea to show our 
config files to any anonymous - due to security issues. I.e. I see no 
big reasons implementing it, though for SYSDBA it's possible.

>    fbsvcmgr service_mgr user sysdba password masterkey info_limbo_trans

It's used when you ask to rpr_list_limbo_trans. There is no other way to 
deal with rpr_list_limbo_trans output, and there is no other use for 
info_limbo_trans. Therefore it's chosen for rpr_list_limbo_trans 
automatically.

>    fbsvcmgr service_mgr user sysdba password masterkey info_running

It's used for all actions. It's used to detect a moment when service 
thread is complete, i.e. action is executed, i.e. it's time to close 
fbsvcmgr.

>    fbsvcmgr service_mgr user sysdba password masterkey info_capabilities

OK - it's possible to add support for this item.

>    fbsvcmgr service_mgr user sysdba password masterkey info_get_users

It works when you ask to action_display_user. Same logic as for 
info_limbo_trans.

>    fbsvcmgr service_mgr user sysdba password masterkey info_timeout

One of funny items. Most of the are sent to the server as bytes (i.e. we 
want implementation, user_db_path, etc.) and returned with data, 
provided by server. This item is sent to the server with integer value 
providing timeout for svc manager. When we see that item in returned by 
server data we know that timeout happened, but know additional info is 
returned with it. Timeout in fbsvcmgr is always one second, I see no 
sense to let user change it.
> This should return something even if it is not very useful:
>
>    fbsvcmgr service_mgr user sysdba password masterkey info_get_license

All licensing coded was dropped from published ib6.0 sources by Borland. 
Comments say that it  "Retrieves all license keys and IDs from the 
license file". And what to return?

>
> This I accept should NOT work on its own:
>
>    fbsvcmgr service_mgr user sysdba password masterkey info_line

Yes, it's used to receive response from most of actions. Same for 
info_to_eof.
And there is one more use of info_line - see below.
>
> This I'm not sure about:
>
>    fbsvcmgr service_mgr user sysdba password masterkey info_stdin

This info item is used when service expects data from user (right now we 
have only one such - restore data from workstation using services). 
Client sends it to server and when N>0 integer is returned, reads N 
bytes from stdin and sends them to the server using info_line item.

>
> But in all cases the ones that don't work throw an unknown switch error which
> is less than helpful. If the switch is a valid switch (which according to the
> documentation these are valid) then the error should indicate what is
> wrong - 'switch invalid in the current context', or 'parameter missing'.
>
> Again this doesn't work either:
>
>    fbsvcmgr service_mgr user sysdba password masterkey action_get_fb_log
>
> but it ought to.

Really. action_get_ib_log works. Will fix.


------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to