From 587085a292244e3254e7205f9b1cbb60354f5c2f Mon Sep 17 00:00:00 2001 From: marschap Date: Wed, 12 Apr 2006 08:12:13 +0000 Subject: [PATCH] clarification: get_info() returns const char * --- docs/API-v0.5.txt | 8 ++++---- docs/lcdproc-dev/driver-api.docbook | 4 ++-- server/commands/client_commands.c | 3 ++- server/drivers.c | 2 +- server/drivers.h | 2 +- server/drivers/CFontzPacket.c | 2 +- server/drivers/CFontzPacket.h | 2 +- server/drivers/IOWarrior.c | 2 +- server/drivers/IOWarrior.h | 2 +- server/drivers/MtxOrb.c | 2 +- server/drivers/MtxOrb.h | 2 +- server/drivers/glcdlib.c | 2 +- server/drivers/glcdlib.h | 2 +- server/drivers/imon.c | 2 +- server/drivers/imon.h | 2 +- server/drivers/lcd.h | 2 +- server/drivers/pylcd.c | 2 +- server/drivers/serialVFD.c | 2 +- server/drivers/serialVFD.h | 2 +- 19 files changed, 24 insertions(+), 23 deletions(-) diff --git a/docs/API-v0.5.txt b/docs/API-v0.5.txt index d2b83e2..8797ce4 100644 --- a/docs/API-v0.5.txt +++ b/docs/API-v0.5.txt @@ -143,7 +143,7 @@ API_VERSION in the code. //// Informational functions // get a string describing the driver and it's features - char * (*get_info) (Driver *drvthis); + const char * (*get_info) (Driver *drvthis); @@ -305,7 +305,7 @@ int (*get_brightness) (Driver *drvthis, int state); // Many displays do not support software setting of contrast. void (*set_brightness) (Driver *drvthis, int state, int int brightness); -// Sets the contrast to the given value. Values should be 0 to 255. +// Sets the contrast to the given value. Values should be 0 to 1000. // Many displays do not support software setting of contrast. // Use -1 to get the current value returned. @@ -319,12 +319,12 @@ void (*output) (Driver *drvthis, int state); // output, which can be controlled by calling this function. See the // 'output' command in the 'widget language'. -char *(*get_key) (Driver *drvthis); +const char *(*get_key) (Driver *drvthis); // Checks if a key has been pressed on the device. // Returns NULL for "no key pressed", or a string describing the pressd key. // These characters should match the keypad-layout. -char *(*get_info) (Driver *drvthis); +const char *(*get_info) (Driver *drvthis); // Returns a string describing the driver and its features. diff --git a/docs/lcdproc-dev/driver-api.docbook b/docs/lcdproc-dev/driver-api.docbook index 63a434d..f58544c 100644 --- a/docs/lcdproc-dev/driver-api.docbook +++ b/docs/lcdproc-dev/driver-api.docbook @@ -158,7 +158,7 @@ API_VERSION in the code. //// Informational functions // get a string describing the driver and it's features - char * (*get_info) (Driver *drvthis); + const char * (*get_info) (Driver *drvthis); @@ -590,7 +590,7 @@ typedef struct my_driver_private { - char *(*get_info) + const char *(*get_info) Driver *drvthis diff --git a/server/commands/client_commands.c b/server/commands/client_commands.c index e207279..2af9181 100644 --- a/server/commands/client_commands.c +++ b/server/commands/client_commands.c @@ -303,7 +303,8 @@ info_func (Client * c, int argc, char **argv) } memset(str, '\0', sizeof(str)); - snprintf (str, sizeof(str)-1, (char*) drivers_get_info()); + snprintf (str, sizeof(str)-1, "%s\n", drivers_get_info()); + str[sizeof(str)-1] = '\0'; sock_send_string (c->sock, str); diff --git a/server/drivers.c b/server/drivers.c index b390714..af84aa5 100644 --- a/server/drivers.c +++ b/server/drivers.c @@ -141,7 +141,7 @@ drivers_unload_all() } -char * +const char * drivers_get_info() { Driver *drv; diff --git a/server/drivers.h b/server/drivers.h index 8fc9961..01399b2 100644 --- a/server/drivers.h +++ b/server/drivers.h @@ -41,7 +41,7 @@ drivers_load_driver( char * name ); int drivers_unload_all(); -char * +const char * drivers_get_info(); void diff --git a/server/drivers/CFontzPacket.c b/server/drivers/CFontzPacket.c index 2772693..d8fb34a 100644 --- a/server/drivers/CFontzPacket.c +++ b/server/drivers/CFontzPacket.c @@ -1554,7 +1554,7 @@ CFontzPacket_output(Driver *drvthis, int state) /* * Provide some info about this driver */ -MODULE_EXPORT char * +MODULE_EXPORT const char * CFontzPacket_get_info(Driver *drvthis) { PrivateData *p = drvthis->private_data; diff --git a/server/drivers/CFontzPacket.h b/server/drivers/CFontzPacket.h index 2961f64..368db71 100644 --- a/server/drivers/CFontzPacket.h +++ b/server/drivers/CFontzPacket.h @@ -44,6 +44,6 @@ MODULE_EXPORT int CFontzPacket_get_brightness (Driver *drvthis, int state); MODULE_EXPORT void CFontzPacket_set_brightness (Driver *drvthis, int state, int promille); MODULE_EXPORT void CFontzPacket_backlight (Driver *drvthis, int on); MODULE_EXPORT void CFontzPacket_output (Driver *drvthis, int state); -MODULE_EXPORT char *CFontzPacket_get_info (Driver *drvthis); +MODULE_EXPORT const char *CFontzPacket_get_info (Driver *drvthis); #endif /* CFONTZPACKET_H */ diff --git a/server/drivers/IOWarrior.c b/server/drivers/IOWarrior.c index 3f015a1..a472b1d 100644 --- a/server/drivers/IOWarrior.c +++ b/server/drivers/IOWarrior.c @@ -1230,7 +1230,7 @@ IOWarrior_output(Driver *drvthis, int on) /********************************************************************* * API: provides some info about this driver */ -MODULE_EXPORT char * +MODULE_EXPORT const char * IOWarrior_get_info (Driver *drvthis) { PrivateData *p = drvthis->private_data; diff --git a/server/drivers/IOWarrior.h b/server/drivers/IOWarrior.h index 8359ef6..61617f7 100644 --- a/server/drivers/IOWarrior.h +++ b/server/drivers/IOWarrior.h @@ -132,7 +132,7 @@ MODULE_EXPORT void IOWarrior_num(Driver *drvthis, int x, int num); MODULE_EXPORT void IOWarrior_set_char(Driver *drvthis, int n, char *dat); MODULE_EXPORT int IOWarrior_icon(Driver *drvthis, int x, int y, int icon); MODULE_EXPORT void IOWarrior_output(Driver *drvthis, int on); -MODULE_EXPORT char *IOWarrior_get_info(Driver *drvthis); +MODULE_EXPORT const char *IOWarrior_get_info(Driver *drvthis); #endif /* IOWARRIOR_H */ diff --git a/server/drivers/MtxOrb.c b/server/drivers/MtxOrb.c index 0854a97..0081003 100644 --- a/server/drivers/MtxOrb.c +++ b/server/drivers/MtxOrb.c @@ -830,7 +830,7 @@ MtxOrb_cursorblink (Driver *drvthis, int on) /****************************** * Returns string with general information about the display */ -MODULE_EXPORT char * +MODULE_EXPORT const char * MtxOrb_get_info (Driver *drvthis) { char in = 0; diff --git a/server/drivers/MtxOrb.h b/server/drivers/MtxOrb.h index 5eac6ba..7fd85a8 100644 --- a/server/drivers/MtxOrb.h +++ b/server/drivers/MtxOrb.h @@ -20,7 +20,7 @@ MODULE_EXPORT void MtxOrb_backlight (Driver *drvthis, int on); MODULE_EXPORT void MtxOrb_output (Driver *drvthis, int on); MODULE_EXPORT const char * MtxOrb_get_key (Driver *drvthis); -MODULE_EXPORT char * MtxOrb_get_info (Driver *drvthis); +MODULE_EXPORT const char * MtxOrb_get_info (Driver *drvthis); MODULE_EXPORT void MtxOrb_num (Driver *drvthis, int x, int num); diff --git a/server/drivers/glcdlib.c b/server/drivers/glcdlib.c index 5cf82e2..50d279b 100644 --- a/server/drivers/glcdlib.c +++ b/server/drivers/glcdlib.c @@ -301,7 +301,7 @@ glcdlib_icon (Driver *drvthis, int x, int y, int icon) ///////////////////////////////////////////////////////////////// // provides some info about this driver // -MODULE_EXPORT char * +MODULE_EXPORT const char * glcdlib_get_info (Driver *drvthis) { glcdlibPD * pPD = drvthis->private_data; diff --git a/server/drivers/glcdlib.h b/server/drivers/glcdlib.h index e5095a8..3b66970 100644 --- a/server/drivers/glcdlib.h +++ b/server/drivers/glcdlib.h @@ -41,7 +41,7 @@ MODULE_EXPORT int glcdlib_icon (Driver *drvthis, int x, int y, int icon); MODULE_EXPORT int glcdlib_cellwidth (Driver *drvthis); MODULE_EXPORT int glcdlib_cellheight (Driver *drvthis); MODULE_EXPORT int glcdlib_get_free_chars (Driver *drvthis); -MODULE_EXPORT char * glcdlib_get_info (Driver *drvthis); +MODULE_EXPORT const char * glcdlib_get_info (Driver *drvthis); MODULE_EXPORT int glcdlib_get_brightness(Driver *drvthis, int state); MODULE_EXPORT void glcdlib_set_brightness(Driver *drvthis, int state, int promille); MODULE_EXPORT void glcdlib_set_char (Driver *drvthis, int n, char *dat); diff --git a/server/drivers/imon.c b/server/drivers/imon.c index aa5806e..4d7527c 100644 --- a/server/drivers/imon.c +++ b/server/drivers/imon.c @@ -139,7 +139,7 @@ MODULE_EXPORT int imon_init (Driver *drvthis) /** * provides some info about this driver */ -MODULE_EXPORT char * imon_get_info (Driver *drvthis) +MODULE_EXPORT const char * imon_get_info (Driver *drvthis) { PrivateData *p = drvthis->private_data; strcpy(p->info, "Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON IR/VFD driver"); diff --git a/server/drivers/imon.h b/server/drivers/imon.h index 912d26a..0998445 100644 --- a/server/drivers/imon.h +++ b/server/drivers/imon.h @@ -37,7 +37,7 @@ MODULE_EXPORT void imon_clear (Driver *drvthis); MODULE_EXPORT void imon_flush (Driver *drvthis); MODULE_EXPORT void imon_string (Driver *drvthis, int x, int y, char string[]); MODULE_EXPORT void imon_chr (Driver *drvthis, int x, int y, char c); -MODULE_EXPORT char *imon_get_info (Driver *drvthis); +MODULE_EXPORT const char *imon_get_info (Driver *drvthis); MODULE_EXPORT void imon_vbar (Driver *drvthis, int x, int y, int len, int promille, int options); MODULE_EXPORT void imon_hbar (Driver *drvthis, int x, int y, int len, int promille, int options); diff --git a/server/drivers/lcd.h b/server/drivers/lcd.h index 4a375c4..ff81d78 100644 --- a/server/drivers/lcd.h +++ b/server/drivers/lcd.h @@ -164,7 +164,7 @@ typedef struct lcd_logical_driver { void (*output) (struct lcd_logical_driver* drvthis, int state); /* informational functions */ - char * (*get_info) (struct lcd_logical_driver* drvthis); + const char * (*get_info) (struct lcd_logical_driver* drvthis); /******** Variables in server core available for drivers ********/ diff --git a/server/drivers/pylcd.c b/server/drivers/pylcd.c index 085bee1..5820080 100644 --- a/server/drivers/pylcd.c +++ b/server/drivers/pylcd.c @@ -495,7 +495,7 @@ MODULE_EXPORT const char *pylcd_get_key (Driver *drvthis) /* Returns a string. Server cannot modify this string. */ /* -MODULE_EXPORT char *mydriver_get_info (){return NULL;}; +MODULE_EXPORT const char *mydriver_get_info (){return NULL;}; */ diff --git a/server/drivers/serialVFD.c b/server/drivers/serialVFD.c index eec7734..9ddf158 100644 --- a/server/drivers/serialVFD.c +++ b/server/drivers/serialVFD.c @@ -1184,7 +1184,7 @@ serialVFD_get_brightness(Driver *drvthis, int state) ///////////////////////////////////////////////////////////////// // provides some info about this driver // -MODULE_EXPORT char * +MODULE_EXPORT const char * serialVFD_get_info (Driver *drvthis) { PrivateData *p = drvthis->private_data; diff --git a/server/drivers/serialVFD.h b/server/drivers/serialVFD.h index adcb97a..264439d 100644 --- a/server/drivers/serialVFD.h +++ b/server/drivers/serialVFD.h @@ -66,5 +66,5 @@ MODULE_EXPORT void serialVFD_set_brightness (Driver *drvthis, int state, int pro MODULE_EXPORT void serialVFD_output (Driver *drvthis, int state); MODULE_EXPORT void serialVFD_num (Driver * drvthis, int x, int num); MODULE_EXPORT int serialVFD_get_free_chars (Driver *drvthis); -MODULE_EXPORT char * serialVFD_get_info( Driver *drvthis ); +MODULE_EXPORT const char * serialVFD_get_info( Driver *drvthis ); #endif