Index: liveMedia/RTSPServer.cpp
===================================================================
--- liveMedia/RTSPServer.cpp	(revision 5)
+++ liveMedia/RTSPServer.cpp	(working copy)
@@ -841,7 +841,18 @@
       // Handle the specified command (beginning by checking those that don't require session ids):
       fCurrentCSeq = cseq;
       if (strcmp(cmdName, "OPTIONS") == 0) {
-	handleCmd_OPTIONS();
+	if (sessionIdStr[0] != '\0') {
+	  // The request included a session id.  Make sure it's one that we have already set up:
+	  clientSession = (RTSPServer::RTSPClientSession*)(fOurServer.fClientSessions->Lookup(sessionIdStr));
+
+	  if (clientSession == NULL) {
+	    handleCmd_sessionNotFound();
+	  } else
+	    clientSession->noteLiveness();
+	    handleCmd_OPTIONS();
+	  } else {
+	    handleCmd_OPTIONS();
+	}
       } else if (urlPreSuffix[0] == '\0' && urlSuffix[0] == '*' && urlSuffix[1] == '\0') {
 	// The special "*" URL means: an operation on the entire server.  This works only for GET_PARAMETER and SET_PARAMETER:
 	if (strcmp(cmdName, "GET_PARAMETER") == 0) {
