yast2-core
Macros | Functions | Variables
genericfrontend.cc File Reference
#include <stdarg.h>
#include <unistd.h>
#include <signal.h>
#include <execinfo.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/wait.h>
#include <sstream>
#include <iomanip>
#include <string>
#include <ycp/y2log.h>
#include <ycp/ExecutionEnvironment.h>
#include "Y2Component.h"
#include "Y2ErrorComponent.h"
#include "Y2ComponentBroker.h"
#include <YCP.h>
#include <ycp/Parser.h>
#include <ycp/pathsearch.h>
#include <y2util/stringutil.h>
#include "exitcodes.h"
#include <debugger/Debugger.h>

Macros

#define _GNU_SOURCE
 
#define MAX_YCP_ERROR_EXIT_SYMBOLS   2
 number of symbols that are handled as error codes More...
 

Functions

static void print_usage ()
 
static void print_help ()
 
static void print_error (const char *,...) __attribute__((format(printf
 
static void static bool has_parens (const char *arg)
 
static void signal_log_to_fd (int fd, const char *cs)
 
static void signal_log (const char *cs)
 
static bool signal_log_ss (const string &s)
 
static void signal_log_timestamp ()
 
static void signal_log_stored_debug ()
 
void signal_log_backtrace ()
 
void signal_log_open ()
 
static void signal_postmortem_program ()
 
void signal_handler (int sig, siginfo_t *si, void *)
 
static void signal_handler_setup ()
 
void parse_client_and_options (int argc, char **argv, int &arg, char *&client_name, YCPList &arglist)
 
void parse_server_and_options (int argc, char **argv, int &arg, char *&server_name, YCPList &preload)
 
int main (int argc, char **argv)
 

Variables

const char * ycp_error_exit_symbols [MAX_YCP_ERROR_EXIT_SYMBOLS]
 symbol names that are handled as error codes when returned by the client More...
 
Debuggerdebugger_instance
 
static const char * progname = "genericfrontend"
 fallback name of the program More...
 
int signal_log_fd
 
bool debugger = false
 
bool debugger_remote = false
 

Detailed Description

Generic main function handler for all YaST2 applications.

Macro Definition Documentation

#define _GNU_SOURCE
#define MAX_YCP_ERROR_EXIT_SYMBOLS   2

number of symbols that are handled as error codes

Referenced by main().

Function Documentation

static bool has_parens ( const char *  arg)
static
int main ( int  argc,
char **  argv 
)
void parse_client_and_options ( int  argc,
char **  argv,
int &  arg,
char *&  client_name,
YCPList arglist 
)
void parse_server_and_options ( int  argc,
char **  argv,
int &  arg,
char *&  server_name,
YCPList preload 
)
static void print_error ( const char *  format,
  ... 
)
static
static void print_help ( )
static

References progname.

Referenced by main().

static void print_usage ( )
static
void signal_handler ( int  sig,
siginfo_t *  si,
void *   
)
static void signal_handler_setup ( )
static

References signal_handler().

Referenced by main().

static void signal_log ( const char *  cs)
static
void signal_log_backtrace ( )

References signal_log(), and signal_log_fd.

Referenced by signal_handler().

void signal_log_open ( )

References signal_log_fd.

Referenced by signal_handler().

static bool signal_log_ss ( const string &  s)
static

References signal_log().

Referenced by signal_log_stored_debug().

static void signal_log_stored_debug ( )
static
static void signal_log_timestamp ( )
static

References signal_log().

Referenced by signal_handler().

static void signal_log_to_fd ( int  fd,
const char *  cs 
)
static

Referenced by signal_handler(), and signal_log().

static void signal_postmortem_program ( )
static

Referenced by signal_handler().

Variable Documentation

bool debugger = false
Debugger* debugger_instance
bool debugger_remote = false

Referenced by main().

const char* progname = "genericfrontend"
static

fallback name of the program

Referenced by main(), and print_help().

int signal_log_fd
const char* ycp_error_exit_symbols[MAX_YCP_ERROR_EXIT_SYMBOLS]
Initial value:
= {
"abort",
"cancel"
}

symbol names that are handled as error codes when returned by the client

Referenced by main().


Generated on a sunny day for yast2-core by doxygen 1.8.6