Replace gets() calls into fgets(),
This commit is contained in:
parent
8e908f867c
commit
1f4d73bc70
@ -3,10 +3,14 @@
|
||||
#include <string.h>
|
||||
#include <stdarg.h>
|
||||
#include <node.h>
|
||||
#define SM_MODE 0 /* Utilisation des API sécurisés */
|
||||
|
||||
#ifndef SM_MODE
|
||||
# define SM_MODE 0 /* Utilisation des API sécurisés */
|
||||
#endif
|
||||
|
||||
#include <shmem.h>
|
||||
|
||||
//VER_INFO_EXPORT (smadmin, "$Revision: 2.1 $", "$Name: $", __FILE__, "$Author: agibert $")
|
||||
//VER_INFO_EXPORT (smadmin, "$Revision: 2.2 $", "$Name: $", __FILE__, "$Author: agibert $")
|
||||
|
||||
#define USAGE "Usage : %s [ --help | --version [-v] | --create | --destroy ]\n"
|
||||
|
||||
@ -30,8 +34,15 @@
|
||||
#define ACR_DUMP 17
|
||||
#define FCR_DUMP 18
|
||||
|
||||
#define NAME_LEN 100
|
||||
#define NAME_SIZE ( NAME_LEN + 1)
|
||||
|
||||
#define TMP_LEN 100
|
||||
#define TMP_SIZE ( TMP_LEN + 1)
|
||||
|
||||
char menu [1000];
|
||||
char tmp [100];
|
||||
|
||||
char tmp [TMP_SIZE];
|
||||
|
||||
void init_menu (void);
|
||||
int print_menu (void);
|
||||
@ -39,7 +50,7 @@ int print_menu (void);
|
||||
int main (int argc, char ** argv)
|
||||
{
|
||||
int choice;
|
||||
char name [100];
|
||||
char name [NAME_SIZE];
|
||||
int Mode, Locked;
|
||||
void * ptr;
|
||||
char answer [10];
|
||||
@ -127,9 +138,13 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_INIT:
|
||||
fprintf (stdout, "\nNew heap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
fprintf (stdout, "\nHeap segment size ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, NAME_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
size = atoi (tmp);
|
||||
fprintf (stdout, "\nReturn code = %s\n", \
|
||||
SM_Heap_Open (name, &Heap, size, \
|
||||
@ -138,9 +153,13 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_OPEN:
|
||||
fprintf (stdout, "\nHeap name to open ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
fprintf (stdout, "\nOpening mode (read=1 write=2) ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
if (tmp[0] == '1') Mode = SMD_READ;
|
||||
else Mode = SMD_WRITE;
|
||||
if (!strcmp (name, HEAP_SYSTEM))
|
||||
@ -157,7 +176,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_COMPRESS:
|
||||
fprintf (stdout, "\nHeap name à compresser ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_WRITE, &Locked) == SMS_OK)
|
||||
{
|
||||
size_t Compress;
|
||||
@ -169,7 +190,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_END:
|
||||
fprintf (stdout, "\nHeap name to remove ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (!strcmp (name, HEAP_SYSTEM))
|
||||
{
|
||||
fprintf (stdout, \
|
||||
@ -184,7 +207,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_CLOSE:
|
||||
fprintf (stdout, "\nHeap name to close ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (!strcmp (name, HEAP_SYSTEM))
|
||||
{
|
||||
fprintf (stdout, \
|
||||
@ -201,7 +226,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case MHH_CHECK:
|
||||
fprintf (stdout, "\nHeap name to check/recover ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_WRITE, &Locked) == SMS_OK)
|
||||
{
|
||||
Nb_Detected = Nb_Corrected = 0;
|
||||
@ -212,9 +239,13 @@ int main (int argc, char ** argv)
|
||||
|
||||
case ALLOC_CHUNK:
|
||||
fprintf (stdout, "\nHeap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
fprintf (stdout, "\nAllocation size ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
size = atoi (tmp);
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_WRITE, &Locked) == SMS_OK)
|
||||
{
|
||||
@ -226,26 +257,36 @@ int main (int argc, char ** argv)
|
||||
|
||||
case WRITE_CHUNK:
|
||||
fprintf (stdout, "\nAddress ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
ptr = (void *)atoi (tmp);
|
||||
fprintf (stdout, "\nString to put in ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
strcpy ( (char *)ptr, tmp);
|
||||
fprintf (stdout, "\nOK\n");
|
||||
break;
|
||||
|
||||
case READ_CHUNK:
|
||||
fprintf (stdout, "\nAddress ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
ptr = (void *)atoi (tmp);
|
||||
fprintf (stdout, "\nValeur du pointeur = %s\n", (char *)ptr);
|
||||
break;
|
||||
|
||||
case FREE_CHUNK:
|
||||
fprintf (stdout, "\nHeap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
fprintf (stdout, "\nAddress ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
ptr = (void *)atoi (tmp);
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_WRITE, &Locked) == SMS_OK)
|
||||
{
|
||||
@ -258,7 +299,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case DSR_DUMP:
|
||||
fprintf (stdout, "\nHeap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_READ, &Locked) == SMS_OK)
|
||||
{
|
||||
ND_DataStruct_Info_Print( stdout, Heap->MHH->DSR, NDD_RECURSIVE_MODE_PARENT_CHILD, 0, 0);
|
||||
@ -269,7 +312,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case ACR_DUMP:
|
||||
fprintf (stdout, "\nHeap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_READ, &Locked) == SMS_OK)
|
||||
{
|
||||
ND_DataStruct_Info_Print( stdout, Heap->MHH->ACR, NDD_RECURSIVE_MODE_PARENT_CHILD, 0, 0);
|
||||
@ -280,7 +325,9 @@ int main (int argc, char ** argv)
|
||||
|
||||
case FCR_DUMP:
|
||||
fprintf (stdout, "\nHeap name ? ");
|
||||
gets (name);
|
||||
fgets( name, NAME_SIZE, stdin);
|
||||
name[ strlen( name) - 1] = '\0';
|
||||
|
||||
if (SM_Heap_Open (name, &Heap, 0, SMD_OPEN | SMD_READ, &Locked) == SMS_OK)
|
||||
{
|
||||
ND_DataStruct_Info_Print( stdout, Heap->MHH->FCR, NDD_RECURSIVE_MODE_PARENT_CHILD, 0, 0);
|
||||
@ -333,7 +380,9 @@ int print_menu (void)
|
||||
while (tmp[0] == '\0')
|
||||
{
|
||||
printf ("\nChoice ? ");
|
||||
gets (tmp);
|
||||
fgets( tmp, TMP_SIZE, stdin);
|
||||
tmp[ strlen( tmp) - 1] = '\0';
|
||||
|
||||
}
|
||||
|
||||
return atoi (tmp);
|
||||
|
Loading…
Reference in New Issue
Block a user