Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

cmmClient.h File Reference

#include "vltPort.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <unistd.h>
#include <signal.h>
#include <pwd.h>
#include <errno.h>
#include <limits.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <memory.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <sys/time.h>
#include <sys/param.h>
#include <arpa/inet.h>

Include dependency graph for cmmClient.h:

Include dependency graph

Go to the source code of this file.

Defines

#define __EXTENSIONS__
#define _POSIX_SOURCE   1
#define BUFFLEN   256
#define MAXUSERNAMELEN   15
#define MAXPASSWDLEN   15
#define MAXMODULELEN   31
#define NO_CMM_HOST   "CMM_HOST not supplied as required."
#define NO_CMM_PORT   "CMM_PORT not supplied as required."
#define CMM_RCFILE   ".cmmrc"
#define CMM_WELCOME   "+OK CMM Server (Version 3.8) at %s starting.\r\n"
#define CMM_GOODBYE   "+OK CMM Server (Version 3.8) at %s signing off.\r\n"
#define CMM_PROTVERS   "1.0"
#define CMM_TIMEOUT   300 /* 5 minutes */
#define CMM_OK   "+OK"
#define CMM_ERR   "-ERR"
#define MAXLINE   1025 /* 1024 + trailing '\0' */
#define PACKET_SIZE   1024 /* for data transfers */
#define CMM_VERSION   "VER "
#define CMM_USERNAME   "USER "
#define CMM_PASSWORD   "PASS "
#define CMM_SEPARATORS   " \t\r\n"
#define ERR_TIMEOUT   "CMM timeout."
#define ERR_PEER_DIED   "connection dropped by peer."
#define ERR_NO_PROTOCOL   "No protocol specified."
#define ERR_WRONG_PROTVERS   "Wrong CMM version."
#define ERR_NO_USER   "No user specified."
#define ERR_WRONG_USERNAME   "Unknown user: \"%s\"."
#define ERR_NO_PASSWORD   "No password supplied."
#define ERR_WRONG_PASSWORD1   "Password supplied for \""
#define ERR_WRONG_PASSWORD2   "\" is incorrect."
#define ERR_WRONG_COMMAND   "-ERR Unknown command: \"%s\"."
#define ERR_SERVER_FAILURE   "-ERR Server internal error: notify vltsccm@eso.org"
#define OK_LOGIN   "Please supply username and password."
#define OK_PASSWORD_REQUIRED   "Password required for"
#define OK_GOOD_USER   "User logged in as"

Functions

void check_env (char *host, int *port)
void get_user (char *argv[], char **user, char **pass)
void show_usage (void)
void signal_setup (void)
void timeout (int sig)
void do_loop (int master_socket)
void handle_it (int conn)
int make_connection (char *hostname, int port)
int readn (int fd, char *buffer, int n)
int writen (int fd, char *buffer, int n)
int getaline (int fd, char *buffer, int maxlen)
void load_usertable (void)
void fill_userdata (char *name, char *pass)
char * find_user (char *user)
void default_user (char **user, char **pass)
char * login (int socket, char *user, char *passwd)
void send_to_peer (int s, char *message)
int get_from_peer (int s, char *buffer, int max)
void is_good_reply (int s)
int send_module (int socket, char *module)
int get_module (int socket, char *module, int size)


Define Documentation

#define __EXTENSIONS__
 

#define _POSIX_SOURCE   1
 

#define BUFFLEN   256
 

#define CMM_ERR   "-ERR"
 

#define CMM_GOODBYE   "+OK CMM Server (Version 3.8) at %s signing off.\r\n"
 

#define CMM_OK   "+OK"
 

#define CMM_PASSWORD   "PASS "
 

#define CMM_PROTVERS   "1.0"
 

#define CMM_RCFILE   ".cmmrc"
 

#define CMM_SEPARATORS   " \t\r\n"
 

#define CMM_TIMEOUT   300 /* 5 minutes */
 

#define CMM_USERNAME   "USER "
 

#define CMM_VERSION   "VER "
 

#define CMM_WELCOME   "+OK CMM Server (Version 3.8) at %s starting.\r\n"
 

#define ERR_NO_PASSWORD   "No password supplied."
 

#define ERR_NO_PROTOCOL   "No protocol specified."
 

#define ERR_NO_USER   "No user specified."
 

#define ERR_PEER_DIED   "connection dropped by peer."
 

#define ERR_SERVER_FAILURE   "-ERR Server internal error: notify vltsccm@eso.org"
 

#define ERR_TIMEOUT   "CMM timeout."
 

#define ERR_WRONG_COMMAND   "-ERR Unknown command: \"%s\"."
 

#define ERR_WRONG_PASSWORD1   "Password supplied for \""
 

#define ERR_WRONG_PASSWORD2   "\" is incorrect."
 

#define ERR_WRONG_PROTVERS   "Wrong CMM version."
 

#define ERR_WRONG_USERNAME   "Unknown user: \"%s\"."
 

#define MAXLINE   1025 /* 1024 + trailing '\0' */
 

#define MAXMODULELEN   31
 

#define MAXPASSWDLEN   15
 

#define MAXUSERNAMELEN   15
 

#define NO_CMM_HOST   "CMM_HOST not supplied as required."
 

#define NO_CMM_PORT   "CMM_PORT not supplied as required."
 

#define OK_GOOD_USER   "User logged in as"
 

#define OK_LOGIN   "Please supply username and password."
 

#define OK_PASSWORD_REQUIRED   "Password required for"
 

#define PACKET_SIZE   1024 /* for data transfers */
 


Function Documentation

void check_env char *  host,
int *  port
 

void default_user char **  user,
char **  pass
 

void do_loop int  master_socket  ) 
 

void fill_userdata char *  name,
char *  pass
 

char* find_user char *  user  ) 
 

int get_from_peer int  s,
char *  buffer,
int  max
 

int get_module int  socket,
char *  module,
int  size
 

void get_user char *  argv[],
char **  user,
char **  pass
 

int getaline int  fd,
char *  buffer,
int  maxlen
 

void handle_it int  conn  ) 
 

void is_good_reply int  s  ) 
 

void load_usertable void   ) 
 

char* login int  socket,
char *  user,
char *  passwd
 

int make_connection char *  hostname,
int  port
 

int readn int  fd,
char *  buffer,
int  n
 

int send_module int  socket,
char *  module
 

void send_to_peer int  s,
char *  message
 

void show_usage void   ) 
 

void signal_setup void   ) 
 

void timeout int  sig  ) 
 

int writen int  fd,
char *  buffer,
int  n
 


Generated on Sun Oct 29 02:28:57 2006 for ACS C++ API by doxygen 1.3.6