I have therefore added shared/fileio.c/h to encapsule
buffered file operations, thus making it possible
to re-read the configuration file unlike with the
patch I committed to stable-0-4-4.
- This patch enables LCDd to retrieve its configuration
options from an LDAP directory.
- The code was tested with OpenLDAP 2.1.x (21<=x<=22) only.
- LDAP support is disabled by default and has to be enabled
with ./configure --enable-ldap.
(See ./configure --help for other options. Not all options
have any effect yet.)
- Currently only anonymous LDAP binds are supported.
- The DN of the main configuration object has to be passed to LCDd
instead of the configuration file location:
LCDd -c "ldap://yourhost.yourcompany.com/cn=config1,cn=lcdproc,dc=yourcompany dc=COM"
The basic idea behind the LCDproc object classes is that they
are more or less verbatim copies of the corresponding sections in a
generic LCDd.conf
- Unfortunately schema files cannot be provided yet, because LCDproc does
not have a registered OID namespace and OID hijacking is prohibited.
- Now using priority classes internally and in protocol
- Converting (depreciated) priorty numbers to the classes BACKGROUND,
INFO and FOREGROUND
- Added menu_goto command (only works when menu not active)
as argument introducers. in 0.4-pre10, these were changed
from foo to -foo and this broke many clients. This change
should fix that and be backward/forward compatible.
+ Added a noop function to the protocol. This is useful for writing
shell script clients of LCDproc.
+ Changed the shared sock_send_string function to NOT send the
ending NUL ('\0') byte with the string. This was confusing
in Perl clients which saw NUL's as the first character of
each reply. WARNING: The LCDPROC client depended on this
behavior, your client may too. Use the newline instead.
See the code in clients/lcdproc/main.c (look for "switch(buf[i])")
to see one way to handle this. This should allow new clients
to connect to old servers and vice-versa.
+ Messed with include structure in .c files. It should no longer
be necessary to specify ../.. to get to shared code headers.
Also, since we are using automake, the global config.h can be
found with just #include "config.h" as it's location is included
in a -I to the compilers. As a result "make distcheck" now works.
longer allow the -Wp,-lang-c-c++-comments directive. Also cleaned
up getloadavg support that had problems on Solaris and RedHat 7.1.
Removed unused variables in a number of functions as a result of
warnings when compiled with --enable-debug config option.
Fixed lots of small problems in various places.
Added new protocol commands screen_add/del_key so screens
can request keystrokes when they are being displayed.
Lots of work on CPU GRAPH and BIG NUMBER CLOCK screens.
Fixed 'output' function in MtxOrb.c
sock_send_string and sock_send "corrected" to handle cases where not all
the bytes intended to be sent are actually sent (must loop to
send the remaining bytes).
File descriptors were not actually being closed by sock_close (they were
only being shutdown).