Changeset 5856 for branches/newosd
- Timestamp:
- 11/23/07 21:35:11 (12 months ago)
- Location:
- branches/newosd
- Files:
-
- 2 added
- 3 modified
-
CMakeLists.txt (modified) (1 diff)
-
src/CMakeLists.txt (modified) (1 diff)
-
src/iface.cpp (added)
-
src/iface.h (added)
-
src/plugin.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/newosd/CMakeLists.txt
r5775 r5856 24 24 set(LIBRARIES ${LIBRARIES} ${AOSD_LINK_FLAGS}) 25 25 include_directories(${AOSD_INCLUDE_DIR}) 26 add_definitions(${AOSD_CFLAGS}) 26 27 else (AOSD_LINK_FLAGS) 27 28 message(FATAL_ERROR "libaosd wasn't found...") -
branches/newosd/src/CMakeLists.txt
r5776 r5856 1 1 set(target licq_newosd) 2 2 3 add_library(${target} MODULE plugin.cpp) 3 set(SRCS 4 plugin.cpp 5 iface.cpp) 6 7 add_library(${target} MODULE ${SRCS}) 4 8 target_link_libraries(${target} ${LIBRARIES}) 5 9 set_target_properties(${target} PROPERTIES PREFIX "") -
branches/newosd/src/plugin.cpp
r5776 r5856 5 5 #include <licq_icqd.h> 6 6 #include <licq_plugin.h> 7 8 #include "iface.h" 7 9 8 10 const char* LP_Name() … … 58 60 int LP_Main(CICQDaemon* daemon) 59 61 { 60 int pipe = daemon->RegisterPlugin(0UL); 61 bool finita = false; 62 char signal[3]; 62 int pipe = daemon->RegisterPlugin( 63 SIGNAL_UPDATExUSER | 64 SIGNAL_LOGON | 65 SIGNAL_LOGOFF); 66 bool finita = false, blocked = false; 67 char msg[3]; 68 69 Iface* iface = new Iface(); 63 70 64 71 while (!finita) 65 72 { 66 read(pipe, signal, 1);73 read(pipe, msg, 1); 67 74 68 switch ( signal[0])75 switch (msg[0]) 69 76 { 77 case 'S': 78 { 79 CICQSignal* sig = daemon->PopPluginSignal(); 80 if (sig != NULL) 81 { 82 if (!blocked) 83 iface->processSignal(sig); 84 delete sig; 85 sig = NULL; 86 } 87 } 88 break; 89 70 90 case 'X': 71 finita = true; 72 break; 91 finita = true; 92 break; 93 94 case '0': 95 blocked = true; 96 break; 97 98 case '1': 99 blocked = false; 100 break; 73 101 74 102 default: 75 break;103 break; 76 104 } 77 105 } … … 79 107 daemon->UnregisterPlugin(); 80 108 109 delete iface; 110 81 111 return 0; 82 112 } 113 114 /* vim: set ts=2 sw=2 et : */
