mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 17:51:28 +00:00
Removed obsolete cleanipc program
This commit is contained in:
parent
7e63135a3d
commit
5bb604248f
@ -114,8 +114,6 @@ OPTION(EQEMU_BUILD_AZONE "Build azone utility." OFF)
|
|||||||
OPTION(EQEMU_BUILD_TESTS "Build utility tests." OFF)
|
OPTION(EQEMU_BUILD_TESTS "Build utility tests." OFF)
|
||||||
|
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
#Whether to build cleanipc or not (probably a good idea if you build server)
|
|
||||||
OPTION(EQEMU_BUILD_CLEANIPC "Build cleanipc." ON)
|
|
||||||
ADD_DEFINITIONS(-std=c++0x)
|
ADD_DEFINITIONS(-std=c++0x)
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
@ -148,9 +146,9 @@ IF(EQEMU_BUILD_LOGIN)
|
|||||||
ADD_SUBDIRECTORY(loginserver)
|
ADD_SUBDIRECTORY(loginserver)
|
||||||
ENDIF(EQEMU_BUILD_LOGIN)
|
ENDIF(EQEMU_BUILD_LOGIN)
|
||||||
|
|
||||||
IF(EQEMU_BUILD_AZONE OR EQEMU_BUILD_CLEANIPC)
|
IF(EQEMU_BUILD_AZONE)
|
||||||
ADD_SUBDIRECTORY(utils)
|
ADD_SUBDIRECTORY(utils)
|
||||||
ENDIF(EQEMU_BUILD_AZONE OR EQEMU_BUILD_CLEANIPC)
|
ENDIF(EQEMU_BUILD_AZONE)
|
||||||
|
|
||||||
IF(EQEMU_BUILD_TESTS)
|
IF(EQEMU_BUILD_TESTS)
|
||||||
ADD_SUBDIRECTORY(tests)
|
ADD_SUBDIRECTORY(tests)
|
||||||
|
|||||||
@ -4,19 +4,4 @@ IF(UNIX)
|
|||||||
ADD_DEFINITIONS(-fPIC)
|
ADD_DEFINITIONS(-fPIC)
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
IF(UNIX AND EQEMU_BUILD_CLEANIPC)
|
ADD_SUBDIRECTORY(azone2)
|
||||||
SET(cleanipc_sources
|
|
||||||
cleanipc.cpp
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(cleanipc_headers
|
|
||||||
)
|
|
||||||
|
|
||||||
ADD_EXECUTABLE(cleanipc ${cleanipc_sources} ${cleanipc_headers})
|
|
||||||
TARGET_LINK_LIBRARIES(cleanipc "rt")
|
|
||||||
SET(EXECUTABLE_OUTPUT_PATH ../Bin)
|
|
||||||
ENDIF(UNIX AND EQEMU_BUILD_CLEANIPC)
|
|
||||||
|
|
||||||
IF(EQEMU_BUILD_AZONE)
|
|
||||||
ADD_SUBDIRECTORY(azone2)
|
|
||||||
ENDIF(EQEMU_BUILD_AZONE)
|
|
||||||
|
|||||||
@ -1,68 +0,0 @@
|
|||||||
#include <sys/types.h>
|
|
||||||
#include <sys/ipc.h>
|
|
||||||
#include <sys/sem.h>
|
|
||||||
#include <sys/shm.h>
|
|
||||||
|
|
||||||
#include <iostream>
|
|
||||||
|
|
||||||
int main(int argc, char** argv) {
|
|
||||||
using std::cout;
|
|
||||||
using std::endl;
|
|
||||||
|
|
||||||
key_t shm_key;
|
|
||||||
shmid_ds* memuser_ds = new shmid_ds;
|
|
||||||
|
|
||||||
bool print = false;
|
|
||||||
if (argc >= 2) {
|
|
||||||
print = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
for ( int i = 0; i < 10; i++) {
|
|
||||||
memuser_ds->shm_nattch = 0;
|
|
||||||
const char *n = "ERROR";
|
|
||||||
switch (i) {
|
|
||||||
case 0: shm_key = ftok(".", 'I'); n="items"; break;
|
|
||||||
case 1: shm_key = ftok(".", 'N'); n="unused"/*npc_types*/; break;
|
|
||||||
case 2: shm_key = ftok(".", 'D'); n="unused"/*doors*/; break;
|
|
||||||
case 3: shm_key = ftok(".", 'S'); n="spells"; break;
|
|
||||||
case 4: shm_key = ftok(".", 'F'); n="factions"; break;
|
|
||||||
case 5: shm_key = ftok(".", 'L'); n="loot"; break;
|
|
||||||
case 6: shm_key = ftok(".", 'M'); n="unused"/*??*/; break;
|
|
||||||
case 7: shm_key = ftok(".", 'O'); n="opcodes"; break;
|
|
||||||
case 8: shm_key = ftok(".", 'Z'); n="unused"/*item serialization*/; break;
|
|
||||||
case 9: shm_key = ftok(".", 'K'); n="skillcaps"; break;
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
int semid = semget(shm_key, 1, 0);
|
|
||||||
if(print){
|
|
||||||
cout<<"ID="<<semid;
|
|
||||||
cout<<" EQEmuShare#:"<<i;
|
|
||||||
}
|
|
||||||
semctl(semget(shm_key, 1, 0), i, GETVAL, 0);
|
|
||||||
int shmid = shmget(shm_key, 0, 0);
|
|
||||||
shmctl(shmid, IPC_STAT, memuser_ds);
|
|
||||||
if(memuser_ds->shm_nattch > 0) {
|
|
||||||
cout << "Something is still attached to " << shm_key << " (" << n << ")" << endl;
|
|
||||||
} else {
|
|
||||||
cout << "Successfully removed " << shm_key << " (" << n << ")" << endl;
|
|
||||||
}
|
|
||||||
if(print){
|
|
||||||
cout<<" useing_shm=";
|
|
||||||
cout<<memuser_ds->shm_nattch;
|
|
||||||
}
|
|
||||||
if (memuser_ds->shm_nattch == 0) {
|
|
||||||
if(print){
|
|
||||||
cout<<" Deleteing stale shares"<<endl;
|
|
||||||
}
|
|
||||||
shmctl(shmid, IPC_RMID, 0);
|
|
||||||
semctl(semget(shm_key, 1, 0), IPC_RMID, 0);
|
|
||||||
} else {
|
|
||||||
if(print){
|
|
||||||
cout<<endl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
Loading…
x
Reference in New Issue
Block a user