/* * The main ! */ int main(int argc, char ** argv) { int skfd; /* generic raw socket desc. */ int goterr = 0; /* Create a channel to the NET kernel. */ if((skfd = iw_sockets_open()) < 0) { perror("socket"); return(-1); } /* No argument : show the list of all device + info */ if(argc == 1) iw_enum_devices(skfd, &print_priv_info, NULL, 0); else /* Special cases take one... */ /* All */ if((!strncmp(argv[1], "-a", 2)) || (!strcmp(argv[1], "--all"))) iw_enum_devices(skfd, &print_priv_all, NULL, 0); else /* Help */ if((!strncmp(argv[1], "-h", 2)) || (!strcmp(argv[1], "--help"))) iw_usage(); else /* Version */ if (!strcmp(argv[1], "-v") || !strcmp(argv[1], "--version")) goterr = iw_print_version_info("iwpriv"); else /* The device name must be the first argument */ /* Name only : show for that device only */ if(argc == 2) print_priv_info(skfd, argv[1], NULL, 0); else /* Special cases take two... */ /* All */ if((!strncmp(argv[2], "-a", 2)) || (!strcmp(argv[2], "--all"))) print_priv_all(skfd, argv[1], NULL, 0); else /* Roaming */ if(!strncmp(argv[2], "roam", 4)) goterr = set_roaming(skfd, argv + 3, argc - 3, argv[1]); else /* Port type */ if(!strncmp(argv[2], "port", 4)) goterr = port_type(skfd, argv + 3, argc - 3, argv[1]); else /*-------------*/ /* Otherwise, it's a private ioctl */ goterr = set_private(skfd, argv + 2, argc - 2, argv[1]); /* Close the socket. */ close(skfd); return(goterr); }
static cell AMX_NATIVE_CALL ns_set_deaths(AMX *amx, cell *params) { CreatePlayerPointer(amx,params[1]); if (!player->IsConnected() || !player->HasPrivateData()) { return 0; } set_private(player->GetEdict(),MAKE_OFFSET(DEATHS),static_cast<int>(params[2])); return 1; }
// ns_set_weap_ammo(WeaponID,ammo) static cell AMX_NATIVE_CALL ns_set_weapon_clip(AMX *amx, cell *params) { CreateNonPlayerEdict(amx,params[1]); if (Entity->pvPrivateData == NULL || Entity->free) { return 0; } set_private(Entity,MAKE_OFFSET(WEAPCLIP),params[2]); return 1; }
static cell AMX_NATIVE_CALL ns_set_weap_reserve(AMX *amx, cell *params) { CreatePlayerPointer(amx,params[1]); if (!player->IsConnected() || !player->HasPrivateData()) { return 0; } switch (params[2]) { case WEAPON_PISTOL: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_PISTOL),params[3]); return 1; case WEAPON_LMG: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_LMG),(int)params[3]); return 1; case WEAPON_SHOTGUN: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_SHOTGUN),(int)params[3]); return 1; case WEAPON_HMG: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_HMG),(int)params[3]); return 1; case WEAPON_GRENADE_GUN: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_GL),(int)params[3]); return 1; case WEAPON_GRENADE: set_private(player->GetEdict(),MAKE_OFFSET(AMMO_HG),(int)params[3]); return 1; default: return 0; } return 0; }
DRI_DRM_STATIC int PVRSRVDrmRelease(struct drm_device *dev, struct drm_file *file) { void *psDriverPriv = get_private(file); PVR_TRACE(("PVRSRVDrmRelease: psDriverPriv=%p", psDriverPriv)); if (psDriverPriv) { PVRSRVRelease(psDriverPriv); } set_private(file, IMG_NULL); return 0; }
// ns_set_points(Player,points) static cell AMX_NATIVE_CALL ns_set_points(AMX *amx, cell *params) { if (!GameMan.IsCombat()) { return 0; } CreatePlayerPointer(amx, params[1]); if (!player->IsConnected()) { return 0; } if (!player->HasPrivateData()) { return 0; } set_private(player->GetEdict(),MAKE_OFFSET(POINTS),static_cast<int>(params[2])); return 1; }
/* * The main ! */ int main(int argc, char ** argv) { int skfd = -1; /* generic raw socket desc. */ int goterr = 0; /* Create a channel to the NET kernel. */ if((skfd = sockets_open()) < 0) { perror("socket"); exit(-1); } /* No argument : show the list of all device + info */ if(argc == 1) { print_priv_devices(skfd); close(skfd); exit(0); } /* Special cases take one... */ /* Help */ if((!strncmp(argv[1], "-h", 9)) || (!strcmp(argv[1], "--help"))) { iw_usage(); close(skfd); exit(0); } /* The device name must be the first argument */ /* Name only : show for that device only */ if(argc == 2) { print_priv_info(skfd, argv[1]); close(skfd); exit(0); } /* Special cases take two... */ /* Roaming */ if(!strncmp(argv[2], "roam", 4)) { goterr = set_roaming(skfd, argv + 3, argc - 3, argv[1]); close(skfd); exit(0); } /* Port type */ if(!strncmp(argv[2], "port", 4)) { goterr = port_type(skfd, argv + 3, argc - 3, argv[1]); close(skfd); exit(0); } /* Otherwise, it's a private ioctl */ goterr = set_private(skfd, argv + 2, argc - 2, argv[1]); /* Close the socket. */ close(skfd); return(0); }
DRI_DRM_STATIC void PVRSRVDrmPostClose(struct drm_device *dev, struct drm_file *file) { PVRSRVRelease(get_private(file)); set_private(file, IMG_NULL); }