Magellan Linux

Diff of /mcore-src/trunk/mcore-tools/src/mcored.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

mcore-src/trunk/mcore-tools/daemon/client/mcored.sh revision 1638 by niro, Thu Mar 10 18:05:16 2011 UTC mcore-src/trunk/mcore-tools/src/mcored.in revision 2335 by niro, Mon Jul 14 07:48:13 2014 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    
3  MCLIBDIR="/usr/lib/mcored"  MCORE_LIBDIR="@@MCORE_LIBDIR@@"
4    
5    # respect system env (proxy settings etc)
6    if [ -e @@SYSCONFDIR@@/profile ]
7    then
8     source @@SYSCONFDIR@@/profile
9    fi
10    
11  # globals  # globals
12  source ${MCLIBDIR}/include/daemon.global.class  # include function comes with common.global class
13  source ${MCLIBDIR}/include/sessionauth.global.class  source ${MCORE_LIBDIR}/include/common.global.class
14  #source ${MCLIBDIR}/include/mysqlfunctions.global.class  include ${MCORE_LIBDIR}/include/daemon.global.class
15  source ${MCLIBDIR}/include/hwdetection.global.class  include ${MCORE_LIBDIR}/include/sessionauth.global.class
16    #include ${MCORE_LIBDIR}/include/mysqlfunctions.global.class
17    include ${MCORE_LIBDIR}/include/hwdetection.global.class
18    
19  # client specific  # load client classes plugins
20  for i in ${MCLIBDIR}/include/*.client.class  load_classes client
 do  
  source ${i} || echo "error loading ${i}"  
 done  
21    
22  # config settings  # config settings
23  source /etc/mcore/config.rc  include @@SYSCONFDIR@@/mcore/mcore.conf
24  #source /etc/mcore/serial  #source @@SYSCONFDIR@@/mcore/serial
25    
26  # import_hardware_resource()  # import_hardware_resource()
27  # {  # {
# Line 52  NOCOLORS="false" Line 57  NOCOLORS="false"
57  WEBCRLF="false"  WEBCRLF="false"
58  QUIET="false"  QUIET="false"
59    
60    # argvs are global variables - this fixes issues with whitespaces
61    # global argvs, the whole command line
62    export GLOBAL_ARGV
63    # class specific argvs which are given to the class as parameters
64    export CLASS_ARGV
65    
66  run=run  run=run
67  valid_session=no  valid_session=no
68    
69    # tell what we are
70    echo "Connected to $(print_version)"
71    
72  while [[ ${run} = run ]]  while [[ ${run} = run ]]
73  do  do
74     # use an echo here not read -p '>' because sslsvd ignores the prompt pattern
75     echo -n '> '
76   read line   read line
77     eval "GLOBAL_ARGV=( ${line} )"
78    
79   case ${line} in   case ${GLOBAL_ARGV[0]} in
80   quit) run=quit ;;   quit) run=quit ;;
81    
82   # only react on the globals -> import|get|set|auth   # only react on the globals -> import|get|set|auth
83   import*) run_class ${line} ;;   import) run_class ;;
84   get*) run_class ${line} ;;   get) run_class ;;
85   set*) run_class ${line} ;;   set) run_class ;;
86   auth*) validate_auth ${line/auth /} ;;   auth) validate_auth ${GLOBAL_ARGV[*]:1} ;;
87   provide) valid_session && print_provide ;;   provide) valid_session && print_provide ;;
88   require) valid_session && verify_requirements ;;   require) valid_session && verify_requirements ;;
89     reload) valid_session && mecho "reloading client classes ..." && load_classes client ;;
90     restart) valid_session && restart_service ;;
91     stop) valid_session && stop_service ;;
92   nocolors) export NOCOLORS="true" ;;   nocolors) export NOCOLORS="true" ;;
93     colors) export NOCOLORS="false" ;;
94   webcrlf) export WEBCRLF="true" ;;   webcrlf) export WEBCRLF="true" ;;
95   quiet) export QUIET="true" ;;   quiet) export QUIET="true" ;;
96   help*)   # version does not need auth
97     version) print_version ;;
98     help)
99   if valid_session   if valid_session
100   then   then
101   if [[ ${line} = help ]]   if [[ ${line} = help ]]
# Line 88  do Line 111  do
111   ;;   ;;
112    
113   *)   *)
114   mecho "Unkown command '${line}'"   mecho "Unknown command '${line}'"
115   mecho "Type 'help' for more information."   mecho "Type 'help' for more information."
116   echo "$line" >> /root/lala.log   #echo "$line" >> /root/lala.log
117   ;;   ;;
118   esac   esac
 done  
119    
120     # unset argvs to be safe
121     unset GLOBAL_ARGS
122     unset CLASS_ARGS
123    done

Legend:
Removed from v.1638  
changed lines
  Added in v.2335