vdr 2.7.5
|
Public Member Functions | |
cSVDRPServer (int Socket, const cIpAddress *ClientIpAddress) | |
~cSVDRPServer () | |
const char * | ClientName (void) const |
bool | HasConnection (void) |
bool | Process (void) |
Private Member Functions | |
void | Close (bool SendReply=false, bool Timeout=false) |
bool | Send (const char *s) |
void | Reply (int Code, const char *fmt,...) __attribute__((format(printf |
void void | PrintHelpTopics (const char **hp) |
void | CmdAUDI (const char *Option) |
void | CmdCHAN (const char *Option) |
void | CmdCLRE (const char *Option) |
void | CmdCONN (const char *Option) |
void | CmdCPYR (const char *Option) |
void | CmdDELC (const char *Option) |
void | CmdDELR (const char *Option) |
void | CmdDELT (const char *Option) |
void | CmdEDIT (const char *Option) |
void | CmdGRAB (const char *Option) |
void | CmdHELP (const char *Option) |
void | CmdHITK (const char *Option) |
void | CmdLSTC (const char *Option) |
void | CmdLSTD (const char *Option) |
void | CmdLSTE (const char *Option) |
void | CmdLSTR (const char *Option) |
void | CmdLSTT (const char *Option) |
void | CmdMESG (const char *Option) |
void | CmdMODC (const char *Option) |
void | CmdMODT (const char *Option) |
void | CmdMOVC (const char *Option) |
void | CmdMOVR (const char *Option) |
void | CmdNEWC (const char *Option) |
void | CmdNEWT (const char *Option) |
void | CmdNEXT (const char *Option) |
void | CmdPING (const char *Option) |
void | CmdPLAY (const char *Option) |
void | CmdPLUG (const char *Option) |
void | CmdPOLL (const char *Option) |
void | CmdPRIM (const char *Option) |
void | CmdPUTE (const char *Option) |
void | CmdREMO (const char *Option) |
void | CmdSCAN (const char *Option) |
void | CmdSTAT (const char *Option) |
void | CmdUPDT (const char *Option) |
void | CmdUPDR (const char *Option) |
void | CmdVOLU (const char *Option) |
void | Execute (char *Cmd) |
Private Attributes | |
int | socket |
cIpAddress | clientIpAddress |
cString | clientName |
cFile | file |
cPUTEhandler * | PUTEhandler |
int | numChars |
int | length |
char * | cmdLine |
time_t | lastActivity |
cSVDRPServer::cSVDRPServer | ( | int | Socket, |
const cIpAddress * | ClientIpAddress ) |
Definition at line 1134 of file svdrp.c.
References clientIpAddress, clientName, cmdLine, dsyslog, file, lastActivity, length, MALLOC, numChars, PUTEhandler, Reply(), Setup, socket, SVDRPServerPoller, cCharSetConv::SystemCharacterTable(), TimeToString(), and VDRVERSION.
cSVDRPServer::~cSVDRPServer | ( | ) |
|
inline |
Definition at line 1127 of file svdrp.c.
References ClientName(), and clientName.
Referenced by ClientName().
|
private |
Definition at line 1159 of file svdrp.c.
References clientName, DELETENULL(), file, isyslog, PUTEhandler, Reply(), Setup, socket, and SVDRPServerPoller.
Referenced by Execute(), Process(), Send(), and ~cSVDRPServer().
|
private |
Definition at line 1245 of file svdrp.c.
References cDevice::CurrentChannel(), tTrackId::description, cDevice::GetCurrentAudioTrack(), cDevice::GetTrack(), tTrackId::id, isnumber(), tTrackId::language, cDevice::PrimaryDevice(), Reply(), cDevice::SetCurrentAudioTrack(), SetTrackDescriptions(), cString::sprintf(), ttAudioFirst, and ttDolbyLast.
Referenced by Execute().
|
private |
Definition at line 1284 of file svdrp.c.
References cDevice::CurrentChannel(), tChannelID::FromString(), isnumber(), LOCK_CHANNELS_READ, cChannels::MaxNumber(), cListObject::Next(), cDevice::PrimaryDevice(), Reply(), and cDevice::SwitchChannel().
Referenced by Execute().
|
private |
Definition at line 1346 of file svdrp.c.
References cSchedule::Cleanup(), tChannelID::ClrRid(), EITDISABLETIME, tChannelID::FromString(), tChannelID::InvalidID, isnumber(), LOCK_CHANNELS_READ, LOCK_SCHEDULES_WRITE, LOCK_TIMERS_WRITE, cChannels::MaxNumber(), cListObject::Next(), Reply(), and cEitFilter::SetDisableUntil().
Referenced by Execute().
|
private |
Definition at line 1411 of file svdrp.c.
References clientIpAddress, clientName, cSVDRPServerParams::Error(), cSVDRPServerParams::Name(), cSVDRPServerParams::Ok(), Reply(), and SVDRPClientHandler.
Referenced by Execute().
|
private |
Definition at line 1496 of file svdrp.c.
References cString::CompactChars(), ExchangeChars(), FOLDERDELIMCHAR, isnumber(), LOCK_RECORDINGS_WRITE, MakeDirs(), RecordingInUseMessage(), RecordingsHandler, Reply(), ruCopy, skipspace(), and strreplace().
|
private |
Definition at line 1431 of file svdrp.c.
References clientName, cDevice::CurrentChannel(), tChannelID::FromString(), cListObject::Index(), isnumber(), isyslog, LOCK_CHANNELS_WRITE, LOCK_TIMERS_READ, cChannel::Number(), cDevice::PrimaryDevice(), Reply(), cDevice::SetCurrentChannel(), and Setup.
Referenced by Execute().
|
private |
Definition at line 1547 of file svdrp.c.
References clientName, isnumber(), isyslog, LOCK_RECORDINGS_WRITE, RecordingInUseMessage(), Reply(), and Setup.
Referenced by Execute().
|
private |
Definition at line 1577 of file svdrp.c.
References clientName, isnumber(), isyslog, LOCK_TIMERS_WRITE, cRecordControls::Process(), Reply(), and Setup.
Referenced by Execute().
|
private |
Definition at line 1604 of file svdrp.c.
References cListBase::Count(), EnoughFreeDiskSpaceForEdit(), isnumber(), cMarks::Load(), LOCK_RECORDINGS_READ, RecordingsHandler, Reply(), and ruCut.
Referenced by Execute().
|
private |
Definition at line 1632 of file svdrp.c.
References AddDirectory(), clientName, dsyslog, cDevice::GrabImage(), grabImageDir, isnumber(), LOG_ERROR_STR, cBase64Encoder::NextLine(), cDevice::PrimaryDevice(), Reply(), safe_write(), Setup, and cString::Truncate().
Referenced by Execute().
|
private |
Definition at line 1769 of file svdrp.c.
References cPlugin::Description(), GetHelpPage(), cPluginManager::GetPlugin(), HelpPages, cPlugin::Name(), PrintHelpTopics(), Reply(), cPlugin::SVDRPHelpPages(), VDRVERSION, and cPlugin::Version().
Referenced by Execute().
|
private |
Definition at line 1797 of file svdrp.c.
References cRemote::Enabled(), cKey::FromString(), kNone, cRemote::Put(), Reply(), and cKey::ToString().
Referenced by Execute().
|
private |
Definition at line 1836 of file svdrp.c.
References cDevice::CurrentChannel(), tChannelID::FromString(), cChannel::GetChannelID(), isnumber(), LOCK_CHANNELS_READ, cChannels::MaxNumber(), cListObject::Next(), cChannel::Number(), Reply(), skipspace(), startswith(), tChannelID::ToString(), and cChannel::ToText().
Referenced by Execute().
|
private |
Definition at line 1884 of file svdrp.c.
References cDevice::GetDevice(), cDevice::NumDevices(), Reply(), and Setup.
Referenced by Execute().
|
private |
Definition at line 1896 of file svdrp.c.
References dmAll, dmAtTime, dmFollowing, dmPresent, cSchedule::Dump(), file, tChannelID::FromString(), isnumber(), LOCK_CHANNELS_READ, LOCK_SCHEDULES_READ, and Reply().
Referenced by Execute().
|
private |
Definition at line 1975 of file svdrp.c.
References file, cRecording::Id(), isnumber(), LOCK_RECORDINGS_READ, cListObject::Next(), Reply(), and cRecording::Title().
Referenced by Execute().
|
private |
Definition at line 2034 of file svdrp.c.
References cTimer::Id(), isnumber(), LOCK_TIMERS_READ, cListObject::Next(), cListObject::Prev(), cTimer::Remote(), and Reply().
Referenced by Execute().
|
private |
|
private |
Definition at line 2101 of file svdrp.c.
References clientName, isyslog, LOCK_CHANNELS_WRITE, cChannel::Parse(), Reply(), Setup, and skipspace().
Referenced by Execute().
|
private |
Definition at line 2137 of file svdrp.c.
References clientName, cTimer::ClrFlags(), cTimer::IsPatternTimer(), isyslog, LOCK_TIMERS_WRITE, cTimer::Parse(), Reply(), cTimer::SetFlags(), Setup, skipspace(), tfActive, and tfRecording.
Referenced by Execute().
|
private |
Definition at line 2183 of file svdrp.c.
References clientName, cDevice::CurrentChannel(), isyslog, LOCK_CHANNELS_WRITE, LOCK_TIMERS_READ, cChannel::Number(), cListObject::Prev(), cDevice::PrimaryDevice(), Reply(), cDevice::SetCurrentChannel(), Setup, and skipspace().
Referenced by Execute().
|
private |
Definition at line 2238 of file svdrp.c.
References isnumber(), LOCK_RECORDINGS_WRITE, RecordingInUseMessage(), Reply(), and skipspace().
Referenced by Execute().
|
private |
Definition at line 2282 of file svdrp.c.
References clientName, isyslog, LOCK_CHANNELS_WRITE, cChannel::Number(), cChannel::Parse(), Reply(), Setup, and cChannel::ToText().
Referenced by Execute().
|
private |
Definition at line 2309 of file svdrp.c.
References clientName, cTimer::ClrFlags(), cTimer::Id(), isyslog, LOCK_TIMERS_WRITE, cTimer::Parse(), Reply(), Setup, tfRecording, cTimer::ToDescr(), and cTimer::ToText().
Referenced by Execute().
|
private |
Definition at line 2329 of file svdrp.c.
References LOCK_TIMERS_READ, Reply(), and TimeToString().
Referenced by Execute().
|
private |
|
private |
Definition at line 2353 of file svdrp.c.
References cControl::Attach(), cResumeFile::Delete(), cRecordings::GetRecordingsRead(), HMSFToIndex(), isnumber(), cControl::Launch(), cStateKey::Remove(), Reply(), cResumeFile::Save(), cReplayControl::SetRecording(), cControl::Shutdown(), and skipspace().
Referenced by Execute().
|
private |
Definition at line 2405 of file svdrp.c.
References cRemote::CallPlugin(), cPlugin::Description(), GetHelpPage(), cPluginManager::GetPlugin(), cPlugin::Name(), PrintHelpTopics(), Reply(), skipspace(), cPlugin::SVDRPCommand(), cPlugin::SVDRPHelpPages(), and cPlugin::Version().
Referenced by Execute().
|
private |
Definition at line 2476 of file svdrp.c.
References Reply(), and SVDRPClientHandler.
Referenced by Execute().
|
private |
Definition at line 2504 of file svdrp.c.
References isnumber(), cDevice::NumDevices(), cDevice::PrimaryDevice(), Reply(), and Setup.
Referenced by Execute().
|
private |
Definition at line 2530 of file svdrp.c.
References cSchedules::Cleanup(), DELETENULL(), PUTEhandler, cSchedules::Read(), and Reply().
Referenced by Execute().
|
private |
Definition at line 2555 of file svdrp.c.
References cRemote::Enabled(), Reply(), and cRemote::SetEnabled().
Referenced by Execute().
|
private |
Definition at line 2573 of file svdrp.c.
References EITScanner, and Reply().
Referenced by Execute().
|
private |
Definition at line 2579 of file svdrp.c.
References Reply(), and cVideoDirectory::VideoDiskSpace().
Referenced by Execute().
|
private |
Definition at line 2627 of file svdrp.c.
References LOCK_RECORDINGS_WRITE, and Reply().
Referenced by Execute().
|
private |
Definition at line 2594 of file svdrp.c.
References clientName, cTimer::ClrFlags(), cTimer::Id(), isyslog, LOCK_TIMERS_WRITE, cTimer::Parse(), Reply(), cTimer::SetFlags(), Setup, tfRecording, cTimer::ToDescr(), and cTimer::ToText().
Referenced by Execute().
|
private |
Definition at line 2634 of file svdrp.c.
References cDevice::CurrentVolume(), isnumber(), cDevice::PrimaryDevice(), Reply(), cDevice::SetVolume(), cDevice::ToggleMute(), and VOLUMEDELTA.
Referenced by Execute().
|
private |
Definition at line 2658 of file svdrp.c.
References Close(), CMD, CmdAUDI(), CmdCHAN(), CmdCLRE(), CmdCONN(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTD(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdMOVR(), CmdNEWC(), CmdNEWT(), CmdNEXT(), CmdPING(), CmdPLAY(), CmdPLUG(), CmdPOLL(), CmdPRIM(), CmdPUTE(), CmdREMO(), CmdSCAN(), CmdSTAT(), CmdUPDR(), CmdUPDT(), CmdVOLU(), DELETENULL(), EITDISABLETIME, PUTEhandler, Reply(), cEitFilter::SetDisableUntil(), and skipspace().
Referenced by Process().
|
inline |
|
private |
Definition at line 1219 of file svdrp.c.
References GetHelpTopic(), MAXHELPTOPIC, and Reply().
bool cSVDRPServer::Process | ( | void | ) |
|
private |
Definition at line 1184 of file svdrp.c.
References clientName, esyslog, file, Reply(), Send(), Setup, and cString::sprintf().
Referenced by Close(), CmdAUDI(), CmdCHAN(), CmdCLRE(), CmdCONN(), CmdCPYR(), CmdDELC(), CmdDELR(), CmdDELT(), CmdEDIT(), CmdGRAB(), CmdHELP(), CmdHITK(), CmdLSTC(), CmdLSTD(), CmdLSTE(), CmdLSTR(), CmdLSTT(), CmdMESG(), CmdMODC(), CmdMODT(), CmdMOVC(), CmdMOVR(), CmdNEWC(), CmdNEWT(), CmdNEXT(), CmdPING(), CmdPLAY(), CmdPLUG(), CmdPOLL(), CmdPRIM(), CmdPUTE(), CmdREMO(), CmdSCAN(), CmdSTAT(), CmdUPDR(), CmdUPDT(), CmdVOLU(), cSVDRPServer(), Execute(), PrintHelpTopics(), and Reply().
|
private |
Definition at line 1173 of file svdrp.c.
References clientName, Close(), dbgsvdrp, file, LOG_ERROR, and safe_write().
Referenced by Reply().
|
private |
Definition at line 1074 of file svdrp.c.
Referenced by CmdCONN(), and cSVDRPServer().
|
private |
|
private |
Definition at line 1080 of file svdrp.c.
Referenced by cSVDRPServer(), Process(), and ~cSVDRPServer().
|
private |
Definition at line 1076 of file svdrp.c.
Referenced by Close(), CmdLSTE(), CmdLSTR(), cSVDRPServer(), HasConnection(), Process(), Reply(), and Send().
|
private |
Definition at line 1081 of file svdrp.c.
Referenced by cSVDRPServer(), and Process().
|
private |
Definition at line 1079 of file svdrp.c.
Referenced by cSVDRPServer(), and Process().
|
private |
Definition at line 1078 of file svdrp.c.
Referenced by cSVDRPServer(), and Process().
|
private |
|
private |
Definition at line 1073 of file svdrp.c.
Referenced by Close(), and cSVDRPServer().