git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@3653 0c269be4-1314-0410-8aa9-9f06e86f4224tags/v1.9.4
@@ -24,6 +24,10 @@ Paul Davis | |||||
--------------------------- | --------------------------- | ||||
Jackdmp changes log | Jackdmp changes log | ||||
--------------------------- | --------------------------- | ||||
2009-10-20 Stephane Letz <letz@grame.fr> | |||||
* Add a string parameter to server ==> client notification, add a new "InfoShutdown" callback. | |||||
2009-10-17 Stephane Letz <letz@grame.fr> | 2009-10-17 Stephane Letz <letz@grame.fr> | ||||
@@ -72,6 +72,8 @@ extern "C" | |||||
EXPORT int jack_is_realtime (jack_client_t *client); | EXPORT int jack_is_realtime (jack_client_t *client); | ||||
EXPORT void jack_on_shutdown (jack_client_t *client, | EXPORT void jack_on_shutdown (jack_client_t *client, | ||||
JackShutdownCallback shutdown_callback, void *arg); | JackShutdownCallback shutdown_callback, void *arg); | ||||
EXPORT void jack_on_info_shutdown (jack_client_t *client, | |||||
JackInfoShutdownCallback shutdown_callback, void *arg); | |||||
EXPORT int jack_set_process_callback (jack_client_t *client, | EXPORT int jack_set_process_callback (jack_client_t *client, | ||||
JackProcessCallback process_callback, | JackProcessCallback process_callback, | ||||
void *arg); | void *arg); | ||||
@@ -812,6 +814,7 @@ EXPORT void jack_on_shutdown(jack_client_t* ext_client, JackShutdownCallback cal | |||||
JackLibGlobals::CheckContext(); | JackLibGlobals::CheckContext(); | ||||
#endif | #endif | ||||
JackClient* client = (JackClient*)ext_client; | JackClient* client = (JackClient*)ext_client; | ||||
jack_error("jack_on_shutdown: deprecated, use jack_on_info_shutdown"); | |||||
if (client == NULL) { | if (client == NULL) { | ||||
jack_error("jack_on_shutdown called with a NULL client"); | jack_error("jack_on_shutdown called with a NULL client"); | ||||
} else { | } else { | ||||
@@ -819,6 +822,19 @@ EXPORT void jack_on_shutdown(jack_client_t* ext_client, JackShutdownCallback cal | |||||
} | } | ||||
} | } | ||||
EXPORT void jack_on_info_shutdown(jack_client_t* ext_client, JackInfoShutdownCallback callback, void* arg) | |||||
{ | |||||
#ifdef __CLIENTDEBUG__ | |||||
JackLibGlobals::CheckContext(); | |||||
#endif | |||||
JackClient* client = (JackClient*)ext_client; | |||||
if (client == NULL) { | |||||
jack_error("jack_on_info_shutdown called with a NULL client"); | |||||
} else { | |||||
client->OnInfoShutdown(callback, arg); | |||||
} | |||||
} | |||||
EXPORT int jack_set_process_callback(jack_client_t* ext_client, JackProcessCallback callback, void* arg) | EXPORT int jack_set_process_callback(jack_client_t* ext_client, JackProcessCallback callback, void* arg) | ||||
{ | { | ||||
#ifdef __CLIENTDEBUG__ | #ifdef __CLIENTDEBUG__ | ||||
@@ -49,6 +49,7 @@ JackClient::JackClient(JackSynchro* table):fThread(this) | |||||
fGraphOrder = NULL; | fGraphOrder = NULL; | ||||
fXrun = NULL; | fXrun = NULL; | ||||
fShutdown = NULL; | fShutdown = NULL; | ||||
fInfoShutdown = NULL; | |||||
fInit = NULL; | fInit = NULL; | ||||
fBufferSize = NULL; | fBufferSize = NULL; | ||||
fClientRegistration = NULL; | fClientRegistration = NULL; | ||||
@@ -63,6 +64,7 @@ JackClient::JackClient(JackSynchro* table):fThread(this) | |||||
fGraphOrderArg = NULL; | fGraphOrderArg = NULL; | ||||
fXrunArg = NULL; | fXrunArg = NULL; | ||||
fShutdownArg = NULL; | fShutdownArg = NULL; | ||||
fInfoShutdownArg = NULL; | |||||
fInitArg = NULL; | fInitArg = NULL; | ||||
fBufferSizeArg = NULL; | fBufferSizeArg = NULL; | ||||
fFreewheelArg = NULL; | fFreewheelArg = NULL; | ||||
@@ -132,12 +134,12 @@ void JackClient::SetupDriverSync(bool freewheel) | |||||
\brief Notification received from the server. | \brief Notification received from the server. | ||||
*/ | */ | ||||
int JackClient::ClientNotifyImp(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackClient::ClientNotifyImp(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
return 0; | return 0; | ||||
} | } | ||||
int JackClient::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackClient::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
int res = 0; | int res = 0; | ||||
@@ -145,11 +147,11 @@ int JackClient::ClientNotify(int refnum, const char* name, int notify, int sync, | |||||
switch (notify) { | switch (notify) { | ||||
case kAddClient: | case kAddClient: | ||||
res = ClientNotifyImp(refnum, name, notify, sync, value1, value2); | |||||
res = ClientNotifyImp(refnum, name, notify, sync, message, value1, value2); | |||||
break; | break; | ||||
case kRemoveClient: | case kRemoveClient: | ||||
res = ClientNotifyImp(refnum, name, notify, sync, value1, value2); | |||||
res = ClientNotifyImp(refnum, name, notify, sync, message, value1, value2); | |||||
break; | break; | ||||
case kActivateClient: | case kActivateClient: | ||||
@@ -247,6 +249,12 @@ int JackClient::ClientNotify(int refnum, const char* name, int notify, int sync, | |||||
if (fXrun) | if (fXrun) | ||||
res = fXrun(fXrunArg); | res = fXrun(fXrunArg); | ||||
break; | break; | ||||
case kShutDownCallback: | |||||
jack_log("JackClient::kShutDownCallback"); | |||||
if (fInfoShutdown) | |||||
fInfoShutdown(message, fInfoShutdownArg); | |||||
break; | |||||
} | } | ||||
} | } | ||||
@@ -582,7 +590,10 @@ void JackClient::ShutDown() | |||||
jack_log("ShutDown"); | jack_log("ShutDown"); | ||||
JackGlobals::fServerRunning = false; | JackGlobals::fServerRunning = false; | ||||
if (fShutdown) { | |||||
if (fInfoShutdown) { | |||||
fInfoShutdown("JACK server has been closed", fInfoShutdownArg); | |||||
fInfoShutdown = NULL; | |||||
} else if (fShutdown) { | |||||
fShutdown(fShutdownArg); | fShutdown(fShutdownArg); | ||||
fShutdown = NULL; | fShutdown = NULL; | ||||
} | } | ||||
@@ -772,6 +783,16 @@ void JackClient::OnShutdown(JackShutdownCallback callback, void *arg) | |||||
fShutdown = callback; | fShutdown = callback; | ||||
} | } | ||||
} | } | ||||
void JackClient::OnInfoShutdown(JackInfoShutdownCallback callback, void *arg) | |||||
{ | |||||
if (IsActive()) { | |||||
jack_error("You cannot set callbacks on an active client"); | |||||
} else { | |||||
fInfoShutdownArg = arg; | |||||
fInfoShutdown = callback; | |||||
} | |||||
} | |||||
int JackClient::SetProcessCallback(JackProcessCallback callback, void *arg) | int JackClient::SetProcessCallback(JackProcessCallback callback, void *arg) | ||||
{ | { | ||||
@@ -54,6 +54,7 @@ class JackClient : public JackClientInterface, public JackRunnableInterface | |||||
JackGraphOrderCallback fGraphOrder; | JackGraphOrderCallback fGraphOrder; | ||||
JackXRunCallback fXrun; | JackXRunCallback fXrun; | ||||
JackShutdownCallback fShutdown; | JackShutdownCallback fShutdown; | ||||
JackInfoShutdownCallback fInfoShutdown; | |||||
JackThreadInitCallback fInit; | JackThreadInitCallback fInit; | ||||
JackBufferSizeCallback fBufferSize; | JackBufferSizeCallback fBufferSize; | ||||
JackSampleRateCallback fSampleRate; | JackSampleRateCallback fSampleRate; | ||||
@@ -70,6 +71,7 @@ class JackClient : public JackClientInterface, public JackRunnableInterface | |||||
void* fGraphOrderArg; | void* fGraphOrderArg; | ||||
void* fXrunArg; | void* fXrunArg; | ||||
void* fShutdownArg; | void* fShutdownArg; | ||||
void* fInfoShutdownArg; | |||||
void* fInitArg; | void* fInitArg; | ||||
void* fBufferSizeArg; | void* fBufferSizeArg; | ||||
void* fSampleRateArg; | void* fSampleRateArg; | ||||
@@ -95,7 +97,7 @@ class JackClient : public JackClientInterface, public JackRunnableInterface | |||||
void CallSyncCallback(); | void CallSyncCallback(); | ||||
void CallTimebaseCallback(); | void CallTimebaseCallback(); | ||||
virtual int ClientNotifyImp(int refnum, const char* name, int notify, int sync, int value1, int value); | |||||
virtual int ClientNotifyImp(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value); | |||||
inline void DummyCycle(); | inline void DummyCycle(); | ||||
inline void ExecuteThread(); | inline void ExecuteThread(); | ||||
@@ -123,7 +125,7 @@ class JackClient : public JackClientInterface, public JackRunnableInterface | |||||
virtual JackEngineControl* GetEngineControl() const = 0; | virtual JackEngineControl* GetEngineControl() const = 0; | ||||
// Notifications | // Notifications | ||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
virtual int Activate(); | virtual int Activate(); | ||||
virtual int Deactivate(); | virtual int Deactivate(); | ||||
@@ -159,6 +161,7 @@ class JackClient : public JackClientInterface, public JackRunnableInterface | |||||
// Callbacks | // Callbacks | ||||
virtual void OnShutdown(JackShutdownCallback callback, void *arg); | virtual void OnShutdown(JackShutdownCallback callback, void *arg); | ||||
virtual void OnInfoShutdown(JackInfoShutdownCallback callback, void *arg); | |||||
virtual int SetProcessCallback(JackProcessCallback callback, void* arg); | virtual int SetProcessCallback(JackProcessCallback callback, void* arg); | ||||
virtual int SetXRunCallback(JackXRunCallback callback, void* arg); | virtual int SetXRunCallback(JackXRunCallback callback, void* arg); | ||||
virtual int SetInitCallback(JackThreadInitCallback callback, void* arg); | virtual int SetInitCallback(JackThreadInitCallback callback, void* arg); | ||||
@@ -44,7 +44,7 @@ class SERVER_EXPORT JackClientInterface | |||||
virtual int Close() = 0; | virtual int Close() = 0; | ||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) = 0; | |||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) = 0; | |||||
virtual JackClientControl* GetClientControl() const = 0; | virtual JackClientControl* GetClientControl() const = 0; | ||||
}; | }; | ||||
@@ -32,6 +32,7 @@ | |||||
#define JACK_PORT_TYPE_SIZE 32 | #define JACK_PORT_TYPE_SIZE 32 | ||||
#define JACK_CLIENT_NAME_SIZE 64 | #define JACK_CLIENT_NAME_SIZE 64 | ||||
#define JACK_MESSAGE_SIZE 512 | |||||
#ifndef PORT_NUM | #ifndef PORT_NUM | ||||
#define PORT_NUM 1024 | #define PORT_NUM 1024 | ||||
@@ -139,10 +139,10 @@ JackEngineControl* JackDebugClient::GetEngineControl() const | |||||
\brief Notification received from the server. | \brief Notification received from the server. | ||||
*/ | */ | ||||
int JackDebugClient::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackDebugClient::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
CheckClient(); | CheckClient(); | ||||
return fClient->ClientNotify( refnum, name, notify, sync, value1, value2); | |||||
return fClient->ClientNotify( refnum, name, notify, sync, message, value1, value2); | |||||
} | } | ||||
int JackDebugClient::Activate() | int JackDebugClient::Activate() | ||||
@@ -416,6 +416,12 @@ void JackDebugClient::OnShutdown(JackShutdownCallback callback, void *arg) | |||||
fClient->OnShutdown(callback, arg); | fClient->OnShutdown(callback, arg); | ||||
} | } | ||||
void JackDebugClient::OnInfoShutdown(JackInfoShutdownCallback callback, void *arg) | |||||
{ | |||||
CheckClient(); | |||||
fClient->OnInfoShutdown(callback, arg); | |||||
} | |||||
int JackDebugClient::TimeCallback(jack_nframes_t nframes, void *arg) | int JackDebugClient::TimeCallback(jack_nframes_t nframes, void *arg) | ||||
{ | { | ||||
JackDebugClient* client = (JackDebugClient*)arg; | JackDebugClient* client = (JackDebugClient*)arg; | ||||
@@ -75,7 +75,7 @@ class JackDebugClient : public JackClient | |||||
virtual JackEngineControl* GetEngineControl() const; | virtual JackEngineControl* GetEngineControl() const; | ||||
// Notifications | // Notifications | ||||
int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
int Activate(); | int Activate(); | ||||
int Deactivate(); | int Deactivate(); | ||||
@@ -110,6 +110,7 @@ class JackDebugClient : public JackClient | |||||
// Callbacks | // Callbacks | ||||
void OnShutdown(JackShutdownCallback callback, void *arg); | void OnShutdown(JackShutdownCallback callback, void *arg); | ||||
void OnInfoShutdown(JackInfoShutdownCallback callback, void *arg); | |||||
int SetProcessCallback(JackProcessCallback callback, void* arg); | int SetProcessCallback(JackProcessCallback callback, void* arg); | ||||
int SetXRunCallback(JackXRunCallback callback, void* arg); | int SetXRunCallback(JackXRunCallback callback, void* arg); | ||||
int SetInitCallback(JackThreadInitCallback callback, void* arg); | int SetInitCallback(JackThreadInitCallback callback, void* arg); | ||||
@@ -190,7 +190,7 @@ void JackDriver::SetupDriverSync(int ref, bool freewheel) | |||||
} | } | ||||
} | } | ||||
int JackDriver::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackDriver::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
switch (notify) { | switch (notify) { | ||||
@@ -199,7 +199,7 @@ class SERVER_EXPORT JackDriver : public JackDriverClientInterface | |||||
virtual int SetBufferSize(jack_nframes_t buffer_size); | virtual int SetBufferSize(jack_nframes_t buffer_size); | ||||
virtual int SetSampleRate(jack_nframes_t sample_rate); | virtual int SetSampleRate(jack_nframes_t sample_rate); | ||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
virtual JackClientControl* GetClientControl() const; | virtual JackClientControl* GetClientControl() const; | ||||
virtual bool IsRealTime() const; | virtual bool IsRealTime() const; | ||||
@@ -203,7 +203,7 @@ void JackEngine::CheckXRun(jack_time_t callback_usecs) // REVOIR les conditions | |||||
// Notifications | // Notifications | ||||
//--------------- | //--------------- | ||||
void JackEngine::NotifyClient(int refnum, int event, int sync, int value1, int value2) | |||||
void JackEngine::NotifyClient(int refnum, int event, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
JackClientInterface* client = fClientTable[refnum]; | JackClientInterface* client = fClientTable[refnum]; | ||||
@@ -211,20 +211,20 @@ void JackEngine::NotifyClient(int refnum, int event, int sync, int value1, int v | |||||
if (!client) { | if (!client) { | ||||
jack_log("JackEngine::NotifyClient: client not available anymore"); | jack_log("JackEngine::NotifyClient: client not available anymore"); | ||||
} else if (client->GetClientControl()->fCallback[event]) { | } else if (client->GetClientControl()->fCallback[event]) { | ||||
if (client->ClientNotify(refnum, client->GetClientControl()->fName, event, sync, value1, value2) < 0) | |||||
if (client->ClientNotify(refnum, client->GetClientControl()->fName, event, sync, message, value1, value2) < 0) | |||||
jack_error("NotifyClient fails name = %s event = %ld val1 = %ld val2 = %ld", client->GetClientControl()->fName, event, value1, value2); | jack_error("NotifyClient fails name = %s event = %ld val1 = %ld val2 = %ld", client->GetClientControl()->fName, event, value1, value2); | ||||
} else { | } else { | ||||
jack_log("JackEngine::NotifyClient: no callback for event = %ld", event); | jack_log("JackEngine::NotifyClient: no callback for event = %ld", event); | ||||
} | } | ||||
} | } | ||||
void JackEngine::NotifyClients(int event, int sync, int value1, int value2) | |||||
void JackEngine::NotifyClients(int event, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
for (int i = 0; i < CLIENT_NUM; i++) { | for (int i = 0; i < CLIENT_NUM; i++) { | ||||
JackClientInterface* client = fClientTable[i]; | JackClientInterface* client = fClientTable[i]; | ||||
if (client) { | if (client) { | ||||
if (client->GetClientControl()->fCallback[event]) { | if (client->GetClientControl()->fCallback[event]) { | ||||
if (client->ClientNotify(i, client->GetClientControl()->fName, event, sync, value1, value2) < 0) | |||||
if (client->ClientNotify(i, client->GetClientControl()->fName, event, sync, message, value1, value2) < 0) | |||||
jack_error("NotifyClient fails name = %s event = %ld val1 = %ld val2 = %ld", client->GetClientControl()->fName, event, value1, value2); | jack_error("NotifyClient fails name = %s event = %ld val1 = %ld val2 = %ld", client->GetClientControl()->fName, event, value1, value2); | ||||
} else { | } else { | ||||
jack_log("JackEngine::NotifyClients: no callback for event = %ld", event); | jack_log("JackEngine::NotifyClients: no callback for event = %ld", event); | ||||
@@ -240,11 +240,11 @@ int JackEngine::NotifyAddClient(JackClientInterface* new_client, const char* nam | |||||
for (int i = 0; i < CLIENT_NUM; i++) { | for (int i = 0; i < CLIENT_NUM; i++) { | ||||
JackClientInterface* old_client = fClientTable[i]; | JackClientInterface* old_client = fClientTable[i]; | ||||
if (old_client) { | if (old_client) { | ||||
if (old_client->ClientNotify(refnum, name, kAddClient, true, 0, 0) < 0) { | |||||
if (old_client->ClientNotify(refnum, name, kAddClient, true, "", 0, 0) < 0) { | |||||
jack_error("NotifyAddClient old_client fails name = %s", old_client->GetClientControl()->fName); | jack_error("NotifyAddClient old_client fails name = %s", old_client->GetClientControl()->fName); | ||||
return -1; | return -1; | ||||
} | } | ||||
if (new_client->ClientNotify(i, old_client->GetClientControl()->fName, kAddClient, true, 0, 0) < 0) { | |||||
if (new_client->ClientNotify(i, old_client->GetClientControl()->fName, kAddClient, true, "", 0, 0) < 0) { | |||||
jack_error("NotifyAddClient new_client fails name = %s", name); | jack_error("NotifyAddClient new_client fails name = %s", name); | ||||
return -1; | return -1; | ||||
} | } | ||||
@@ -260,7 +260,7 @@ void JackEngine::NotifyRemoveClient(const char* name, int refnum) | |||||
for (int i = 0; i < CLIENT_NUM; i++) { | for (int i = 0; i < CLIENT_NUM; i++) { | ||||
JackClientInterface* client = fClientTable[i]; | JackClientInterface* client = fClientTable[i]; | ||||
if (client) { | if (client) { | ||||
client->ClientNotify(refnum, name, kRemoveClient, true, 0, 0); | |||||
client->ClientNotify(refnum, name, kRemoveClient, true, "",0, 0); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -277,51 +277,51 @@ void JackEngine::NotifyXRun(jack_time_t callback_usecs, float delayed_usecs) | |||||
void JackEngine::NotifyXRun(int refnum) | void JackEngine::NotifyXRun(int refnum) | ||||
{ | { | ||||
if (refnum == ALL_CLIENTS) { | if (refnum == ALL_CLIENTS) { | ||||
NotifyClients(kXRunCallback, false, 0, 0); | |||||
NotifyClients(kXRunCallback, false, "", 0, 0); | |||||
} else { | } else { | ||||
NotifyClient(refnum, kXRunCallback, false, 0, 0); | |||||
NotifyClient(refnum, kXRunCallback, false, "", 0, 0); | |||||
} | } | ||||
} | } | ||||
void JackEngine::NotifyGraphReorder() | void JackEngine::NotifyGraphReorder() | ||||
{ | { | ||||
NotifyClients(kGraphOrderCallback, false, 0, 0); | |||||
NotifyClients(kGraphOrderCallback, false, "", 0, 0); | |||||
} | } | ||||
void JackEngine::NotifyBufferSize(jack_nframes_t buffer_size) | void JackEngine::NotifyBufferSize(jack_nframes_t buffer_size) | ||||
{ | { | ||||
NotifyClients(kBufferSizeCallback, true, buffer_size, 0); | |||||
NotifyClients(kBufferSizeCallback, true, "", buffer_size, 0); | |||||
} | } | ||||
void JackEngine::NotifySampleRate(jack_nframes_t sample_rate) | void JackEngine::NotifySampleRate(jack_nframes_t sample_rate) | ||||
{ | { | ||||
NotifyClients(kSampleRateCallback, true, sample_rate, 0); | |||||
NotifyClients(kSampleRateCallback, true, "", sample_rate, 0); | |||||
} | } | ||||
void JackEngine::NotifyFreewheel(bool onoff) | void JackEngine::NotifyFreewheel(bool onoff) | ||||
{ | { | ||||
fEngineControl->fRealTime = !onoff; | fEngineControl->fRealTime = !onoff; | ||||
NotifyClients((onoff ? kStartFreewheelCallback : kStopFreewheelCallback), true, 0, 0); | |||||
NotifyClients((onoff ? kStartFreewheelCallback : kStopFreewheelCallback), true, "", 0, 0); | |||||
} | } | ||||
void JackEngine::NotifyPortRegistation(jack_port_id_t port_index, bool onoff) | void JackEngine::NotifyPortRegistation(jack_port_id_t port_index, bool onoff) | ||||
{ | { | ||||
NotifyClients((onoff ? kPortRegistrationOnCallback : kPortRegistrationOffCallback), false, port_index, 0); | |||||
NotifyClients((onoff ? kPortRegistrationOnCallback : kPortRegistrationOffCallback), false, "", port_index, 0); | |||||
} | } | ||||
void JackEngine::NotifyPortRename(jack_port_id_t port) | void JackEngine::NotifyPortRename(jack_port_id_t port) | ||||
{ | { | ||||
NotifyClients(kPortRenameCallback, false, port, 0); | |||||
NotifyClients(kPortRenameCallback, false, "", port, 0); | |||||
} | } | ||||
void JackEngine::NotifyPortConnect(jack_port_id_t src, jack_port_id_t dst, bool onoff) | void JackEngine::NotifyPortConnect(jack_port_id_t src, jack_port_id_t dst, bool onoff) | ||||
{ | { | ||||
NotifyClients((onoff ? kPortConnectCallback : kPortDisconnectCallback), false, src, dst); | |||||
NotifyClients((onoff ? kPortConnectCallback : kPortDisconnectCallback), false, "", src, dst); | |||||
} | } | ||||
void JackEngine::NotifyActivate(int refnum) | void JackEngine::NotifyActivate(int refnum) | ||||
{ | { | ||||
NotifyClient(refnum, kActivateClient, true, 0, 0); | |||||
NotifyClient(refnum, kActivateClient, true, "", 0, 0); | |||||
} | } | ||||
//---------------------------- | //---------------------------- | ||||
@@ -64,8 +64,9 @@ class SERVER_EXPORT JackEngine | |||||
int AllocateRefnum(); | int AllocateRefnum(); | ||||
void ReleaseRefnum(int ref); | void ReleaseRefnum(int ref); | ||||
void NotifyClient(int refnum, int event, int sync, int value1, int value2); | |||||
void NotifyClients(int event, int sync, int value1, int value2); | |||||
void NotifyClient(int refnum, int event, int sync, const char* message, int value1, int value2); | |||||
void NotifyClients(int event, int sync, const char* message, int value1, int value2); | |||||
void NotifyPortRegistation(jack_port_id_t port_index, bool onoff); | void NotifyPortRegistation(jack_port_id_t port_index, bool onoff); | ||||
void NotifyPortConnect(jack_port_id_t src, jack_port_id_t dst, bool onoff); | void NotifyPortConnect(jack_port_id_t src, jack_port_id_t dst, bool onoff); | ||||
void NotifyPortRename(jack_port_id_t src); | void NotifyPortRename(jack_port_id_t src); | ||||
@@ -33,11 +33,11 @@ JackExternalClient::JackExternalClient(): fClientControl(NULL) | |||||
JackExternalClient::~JackExternalClient() | JackExternalClient::~JackExternalClient() | ||||
{} | {} | ||||
int JackExternalClient::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackExternalClient::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
int result = -1; | int result = -1; | ||||
jack_log("JackExternalClient::ClientNotify ref = %ld name = %s notify = %ld", refnum, name, notify); | jack_log("JackExternalClient::ClientNotify ref = %ld name = %s notify = %ld", refnum, name, notify); | ||||
fChannel.ClientNotify(refnum, name, notify, sync, value1, value2, &result); | |||||
fChannel.ClientNotify(refnum, name, notify, sync, message, value1, value2, &result); | |||||
return result; | return result; | ||||
} | } | ||||
@@ -49,7 +49,7 @@ class JackExternalClient : public JackClientInterface | |||||
int Open(const char* name, int pid, int refnum, int* shared_client); | int Open(const char* name, int pid, int refnum, int* shared_client); | ||||
int Close(); | int Close(); | ||||
int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
JackClientControl* GetClientControl() const; | JackClientControl* GetClientControl() const; | ||||
}; | }; | ||||
@@ -128,7 +128,7 @@ error: | |||||
// Notifications received from the server | // Notifications received from the server | ||||
// TODO this should be done once for all clients in the process, when a shared notification channel | // TODO this should be done once for all clients in the process, when a shared notification channel | ||||
// will be shared by all clients... | // will be shared by all clients... | ||||
int JackLibClient::ClientNotifyImp(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackLibClient::ClientNotifyImp(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
int res = 0; | int res = 0; | ||||
@@ -46,7 +46,7 @@ class JackLibClient : public JackClient | |||||
int Open(const char* server_name, const char* name, jack_options_t options, jack_status_t* status); | int Open(const char* server_name, const char* name, jack_options_t options, jack_status_t* status); | ||||
int ClientNotifyImp(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
int ClientNotifyImp(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
JackGraphManager* GetGraphManager() const; | JackGraphManager* GetGraphManager() const; | ||||
JackEngineControl* GetEngineControl() const; | JackEngineControl* GetEngineControl() const; | ||||
@@ -43,6 +43,7 @@ enum NotificationType { | |||||
kPortDisconnectCallback = 12, | kPortDisconnectCallback = 12, | ||||
kPortRenameCallback = 13, | kPortRenameCallback = 13, | ||||
kRealTimeCallback = 14, | kRealTimeCallback = 14, | ||||
kShutDownCallback = 15, | |||||
kMaxNotification | kMaxNotification | ||||
}; | }; | ||||
@@ -1079,13 +1079,15 @@ struct JackClientNotification | |||||
int fValue1; | int fValue1; | ||||
int fValue2; | int fValue2; | ||||
int fSync; | int fSync; | ||||
char fMessage[JACK_MESSAGE_SIZE + 1]; | |||||
JackClientNotification(): fNotify(-1), fValue1(-1), fValue2(-1) | JackClientNotification(): fNotify(-1), fValue1(-1), fValue2(-1) | ||||
{} | {} | ||||
JackClientNotification(const char* name, int refnum, int notify, int sync, int value1, int value2) | |||||
JackClientNotification(const char* name, int refnum, int notify, int sync, const char* message, int value1, int value2) | |||||
: fRefNum(refnum), fNotify(notify), fValue1(value1), fValue2(value2), fSync(sync) | : fRefNum(refnum), fNotify(notify), fValue1(value1), fValue2(value2), fSync(sync) | ||||
{ | { | ||||
snprintf(fName, sizeof(fName), "%s", name); | snprintf(fName, sizeof(fName), "%s", name); | ||||
snprintf(fMessage, sizeof(fMessage), "%s", message); | |||||
} | } | ||||
int Read(JackChannelTransaction* trans) | int Read(JackChannelTransaction* trans) | ||||
@@ -1096,6 +1098,7 @@ struct JackClientNotification | |||||
CheckRes(trans->Read(&fValue1, sizeof(int))); | CheckRes(trans->Read(&fValue1, sizeof(int))); | ||||
CheckRes(trans->Read(&fValue2, sizeof(int))); | CheckRes(trans->Read(&fValue2, sizeof(int))); | ||||
CheckRes(trans->Read(&fSync, sizeof(int))); | CheckRes(trans->Read(&fSync, sizeof(int))); | ||||
CheckRes(trans->Read(&fMessage, JACK_MESSAGE_SIZE + 1)); | |||||
return 0; | return 0; | ||||
} | } | ||||
@@ -1107,6 +1110,7 @@ struct JackClientNotification | |||||
CheckRes(trans->Write(&fValue1, sizeof(int))); | CheckRes(trans->Write(&fValue1, sizeof(int))); | ||||
CheckRes(trans->Write(&fValue2, sizeof(int))); | CheckRes(trans->Write(&fValue2, sizeof(int))); | ||||
CheckRes(trans->Write(&fSync, sizeof(int))); | CheckRes(trans->Write(&fSync, sizeof(int))); | ||||
CheckRes(trans->Write(&fMessage, JACK_MESSAGE_SIZE + 1)); | |||||
return 0; | return 0; | ||||
} | } | ||||
@@ -137,9 +137,9 @@ std::list<JackDriverInterface*> JackThreadedDriver::GetSlaves() | |||||
return fDriver->GetSlaves(); | return fDriver->GetSlaves(); | ||||
} | } | ||||
int JackThreadedDriver::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2) | |||||
int JackThreadedDriver::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2) | |||||
{ | { | ||||
return fDriver->ClientNotify(refnum, name, notify, sync, value1, value2); | |||||
return fDriver->ClientNotify(refnum, name, notify, sync, message, value1, value2); | |||||
} | } | ||||
JackClientControl* JackThreadedDriver::GetClientControl() const | JackClientControl* JackThreadedDriver::GetClientControl() const | ||||
@@ -94,7 +94,7 @@ class SERVER_EXPORT JackThreadedDriver : public JackDriverClientInterface, publi | |||||
virtual std::list<JackDriverInterface*> GetSlaves(); | virtual std::list<JackDriverInterface*> GetSlaves(); | ||||
virtual int ProcessSlaves(); | virtual int ProcessSlaves(); | ||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2); | |||||
virtual int ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2); | |||||
virtual JackClientControl* GetClientControl() const; | virtual JackClientControl* GetClientControl() const; | ||||
virtual bool IsRealTime() const; | virtual bool IsRealTime() const; | ||||
@@ -282,7 +282,7 @@ int jack_set_thread_init_callback (jack_client_t *client, | |||||
* @param function The jack_shutdown function pointer. | * @param function The jack_shutdown function pointer. | ||||
* @param arg The arguments for the jack_shutdown function. | * @param arg The arguments for the jack_shutdown function. | ||||
* | * | ||||
* Register a function (and argument) to be called if and when the | |||||
* @deprecated Register a function (and argument) to be called if and when the | |||||
* JACK server shuts down the client thread. The function must | * JACK server shuts down the client thread. The function must | ||||
* be written as if it were an asynchonrous POSIX signal | * be written as if it were an asynchonrous POSIX signal | ||||
* handler --- use only async-safe functions, and remember that it | * handler --- use only async-safe functions, and remember that it | ||||
@@ -298,6 +298,27 @@ int jack_set_thread_init_callback (jack_client_t *client, | |||||
void jack_on_shutdown (jack_client_t *client, | void jack_on_shutdown (jack_client_t *client, | ||||
JackShutdownCallback shutdown_callback, void *arg); | JackShutdownCallback shutdown_callback, void *arg); | ||||
/** | |||||
* @param client pointer to JACK client structure. | |||||
* @param function The jack_shutdown function pointer. | |||||
* @param arg The arguments for the jack_shutdown function. | |||||
* | |||||
* Register a function (and argument) to be called if and when the | |||||
* JACK server shuts down the client thread. The function must | |||||
* be written as if it were an asynchonrous POSIX signal | |||||
* handler --- use only async-safe functions, and remember that it | |||||
* is executed from another thread. A typical function might | |||||
* set a flag or write to a pipe so that the rest of the | |||||
* application knows that the JACK client thread has shut | |||||
* down. | |||||
* | |||||
* NOTE: clients do not need to call this. It exists only | |||||
* to help more complex clients understand what is going | |||||
* on. It should be called before jack_client_activate(). | |||||
*/ | |||||
void jack_on_info_shutdown (jack_client_t *client, | |||||
JackInfoShutdownCallback shutdown_callback, void *arg); | |||||
/** | /** | ||||
* Tell the Jack server to call @a process_callback whenever there is | * Tell the Jack server to call @a process_callback whenever there is | ||||
* work be done, passing @a arg as the second argument. | * work be done, passing @a arg as the second argument. | ||||
@@ -214,7 +214,7 @@ typedef int (*JackPortRenameCallback)(jack_port_id_t port, const char* new_name, | |||||
typedef void (*JackFreewheelCallback)(int starting, void *arg); | typedef void (*JackFreewheelCallback)(int starting, void *arg); | ||||
/** | /** | ||||
* Prototype for the client supplied function that is called | |||||
* @deprecated Prototype for the client supplied function that is called | |||||
* whenever jackd is shutdown. Note that after server shutdown, | * whenever jackd is shutdown. Note that after server shutdown, | ||||
* the client pointer is *not* deallocated by libjack, | * the client pointer is *not* deallocated by libjack, | ||||
* the application is responsible to properly use jack_client_close() | * the application is responsible to properly use jack_client_close() | ||||
@@ -226,6 +226,21 @@ typedef void (*JackFreewheelCallback)(int starting, void *arg); | |||||
*/ | */ | ||||
typedef void (*JackShutdownCallback)(void *arg); | typedef void (*JackShutdownCallback)(void *arg); | ||||
/** | |||||
* Prototype for the client supplied function that is called | |||||
* whenever jackd is shutdown. Note that after server shutdown, | |||||
* the client pointer is *not* deallocated by libjack, | |||||
* the application is responsible to properly use jack_client_close() | |||||
* to release client ressources. Warning: jack_client_close() cannot be | |||||
* safely used inside the shutdown callback and has to be called outside of | |||||
* the callback context. | |||||
* | |||||
* @param reason a string discribinh the shuntdown reason (backend failure, server crash... etc...) | |||||
* @param arg pointer to a client supplied structure | |||||
*/ | |||||
typedef void (*JackInfoShutdownCallback)(const char* reason, void *arg); | |||||
/** | /** | ||||
* Used for the type argument of jack_port_register() for default | * Used for the type argument of jack_port_register() for default | ||||
* audio ports and midi ports. | * audio ports and midi ports. | ||||
@@ -27,21 +27,21 @@ using namespace Jack; | |||||
#define rpc_type kern_return_t // for astyle | #define rpc_type kern_return_t // for astyle | ||||
rpc_type rpc_jack_client_sync_notify(mach_port_t client_port, int refnum, client_name_t name, int notify, int value1, int value2, int* result) | |||||
rpc_type rpc_jack_client_sync_notify(mach_port_t client_port, int refnum, client_name_t name, int notify, message_t message, int value1, int value2, int* result) | |||||
{ | { | ||||
jack_log("rpc_jack_client_sync_notify ref = %ld name = %s notify = %ld val1 = %ld val2 = %ld", refnum, name, notify, value1, value2); | |||||
jack_log("rpc_jack_client_sync_notify ref = %ld name = %s notify = %ld message %s val1 = %ld val2 = %ld", refnum, name, notify, message, value1, value2); | |||||
JackClient* client = gClientTable[client_port]; | JackClient* client = gClientTable[client_port]; | ||||
assert(client); | assert(client); | ||||
*result = client->ClientNotify(refnum, name, notify, true, value1, value2); | |||||
*result = client->ClientNotify(refnum, name, notify, true, message, value1, value2); | |||||
return KERN_SUCCESS; | return KERN_SUCCESS; | ||||
} | } | ||||
rpc_type rpc_jack_client_async_notify(mach_port_t client_port, int refnum, client_name_t name, int notify, int value1, int value2) | |||||
rpc_type rpc_jack_client_async_notify(mach_port_t client_port, int refnum, client_name_t name, int notify, message_t message, int value1, int value2) | |||||
{ | { | ||||
jack_log("rpc_jack_client_async_notify ref = %ld name = %s notify = %ld val1 = %ld val2 = %ld", refnum, name, notify, value1, value2); | |||||
jack_log("rpc_jack_client_async_notify ref = %ld name = %s notify = %ld message %s val1 = %ld val2 = %ld", refnum, name, notify, message, value1, value2); | |||||
JackClient* client = gClientTable[client_port]; | JackClient* client = gClientTable[client_port]; | ||||
assert(client); | assert(client); | ||||
client->ClientNotify(refnum, name, notify, false, value1, value2); | |||||
client->ClientNotify(refnum, name, notify, false, message, value1, value2); | |||||
return KERN_SUCCESS; | return KERN_SUCCESS; | ||||
} | } | ||||
@@ -49,11 +49,11 @@ void JackMachNotifyChannel::Close() | |||||
fClientPort.DisconnectPort(); | fClientPort.DisconnectPort(); | ||||
} | } | ||||
void JackMachNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result) | |||||
void JackMachNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result) | |||||
{ | { | ||||
kern_return_t res = (sync) | kern_return_t res = (sync) | ||||
? rpc_jack_client_sync_notify(fClientPort.GetPort(), refnum, (char*)name, notify, value1, value2, result) | |||||
: rpc_jack_client_async_notify(fClientPort.GetPort(), refnum, (char*)name, notify, value1, value2); | |||||
? rpc_jack_client_sync_notify(fClientPort.GetPort(), refnum, (char*)name, notify, (char*)message, value1, value2, result) | |||||
: rpc_jack_client_async_notify(fClientPort.GetPort(), refnum, (char*)name, notify, (char*)message, value1, value2); | |||||
if (res == KERN_SUCCESS) { | if (res == KERN_SUCCESS) { | ||||
*result = 0; | *result = 0; | ||||
} else { | } else { | ||||
@@ -44,7 +44,7 @@ class JackMachNotifyChannel | |||||
int Open(const char* name); // Open the Server/Client connection | int Open(const char* name); // Open the Server/Client connection | ||||
void Close(); // Close the Server/Client connection | void Close(); // Close the Server/Client connection | ||||
void ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result); | |||||
void ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result); | |||||
}; | }; | ||||
} // end of namespace | } // end of namespace | ||||
@@ -26,12 +26,14 @@ waittime 5000; | |||||
type client_name_t = c_string[128]; | type client_name_t = c_string[128]; | ||||
type client_port_name_t = c_string[128]; | type client_port_name_t = c_string[128]; | ||||
type message_t = c_string[512]; | |||||
routine rpc_jack_client_sync_notify( | routine rpc_jack_client_sync_notify( | ||||
client_port : mach_port_t; | client_port : mach_port_t; | ||||
refnum : int; | refnum : int; | ||||
client_name : client_name_t; | client_name : client_name_t; | ||||
notify : int; | notify : int; | ||||
message : message_t; | |||||
value1 : int; | value1 : int; | ||||
value2 : int; | value2 : int; | ||||
out result : int); | out result : int); | ||||
@@ -41,5 +43,6 @@ simpleroutine rpc_jack_client_async_notify( | |||||
refnum : int; | refnum : int; | ||||
client_name : client_name_t; | client_name : client_name_t; | ||||
notify : int; | notify : int; | ||||
message : message_t; | |||||
value1 : int; | value1 : int; | ||||
value2 : int); | value2 : int); |
@@ -21,7 +21,7 @@ typedef struct { | |||||
char *name; | char *name; | ||||
function_ptr_t function; | function_ptr_t function; | ||||
} function_table_entry; | } function_table_entry; | ||||
typedef function_table_entry *function_table_t; | |||||
typedef function_table_entry *function_table_t; | |||||
#endif /* FUNCTION_PTR_T */ | #endif /* FUNCTION_PTR_T */ | ||||
#endif /* AUTOTEST */ | #endif /* AUTOTEST */ | ||||
@@ -55,6 +55,7 @@ kern_return_t rpc_jack_client_sync_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2, | int value2, | ||||
int *result | int *result | ||||
@@ -72,6 +73,7 @@ kern_return_t rpc_jack_client_async_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2 | int value2 | ||||
); | ); | ||||
@@ -103,6 +105,7 @@ __END_DECLS | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} __Request__rpc_jack_client_sync_notify_t; | } __Request__rpc_jack_client_sync_notify_t; | ||||
@@ -119,6 +122,7 @@ __END_DECLS | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} __Request__rpc_jack_client_async_notify_t; | } __Request__rpc_jack_client_async_notify_t; | ||||
@@ -1,7 +1,7 @@ | |||||
/* | /* | ||||
* IDENTIFICATION: | * IDENTIFICATION: | ||||
* stub generated Mon Sep 1 17:42:27 2008 | |||||
* with a MiG generated Tue Feb 19 02:01:43 PST 2008 by root@b75.local | |||||
* stub generated Tue Oct 20 12:13:25 2009 | |||||
* with a MiG generated Mon May 18 09:59:33 PDT 2009 by root@sulitlana.apple.com | |||||
* OPTIONS: | * OPTIONS: | ||||
*/ | */ | ||||
@@ -113,6 +113,7 @@ | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} __Request__rpc_jack_client_sync_notify_t; | } __Request__rpc_jack_client_sync_notify_t; | ||||
@@ -129,6 +130,7 @@ | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} __Request__rpc_jack_client_async_notify_t; | } __Request__rpc_jack_client_async_notify_t; | ||||
@@ -252,6 +254,26 @@ mig_internal novalue _Xrpc_jack_client_async_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#if defined(__NDR_convert__int_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__int_rep__message_t__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__int_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__int_rep__string__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #ifndef __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
#if defined(__NDR_convert__int_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__int_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #define __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
@@ -352,6 +374,26 @@ mig_internal novalue _Xrpc_jack_client_async_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#if defined(__NDR_convert__char_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__char_rep__message_t__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__char_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__char_rep__string__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #ifndef __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
#if defined(__NDR_convert__char_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__char_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #define __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
@@ -452,6 +494,26 @@ mig_internal novalue _Xrpc_jack_client_async_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#if defined(__NDR_convert__float_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__float_rep__message_t__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__float_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__float_rep__string__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #ifndef __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
#if defined(__NDR_convert__float_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__float_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | #define __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined | ||||
@@ -503,9 +565,24 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->message), 512); | |||||
if (( memchr(In0P->message, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | ||||
if (In0P->NDR.int_rep != NDR_record.int_rep) { | if (In0P->NDR.int_rep != NDR_record.int_rep) { | ||||
@@ -518,6 +595,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | ||||
__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.int_rep); | __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.int_rep); | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined) | |||||
__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message(&In0P->message, In0P->NDR.int_rep); | |||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | ||||
__NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.int_rep); | __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.int_rep); | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | ||||
@@ -530,6 +610,7 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | ||||
if (In0P->NDR.char_rep != NDR_record.char_rep) { | if (In0P->NDR.char_rep != NDR_record.char_rep) { | ||||
@@ -542,6 +623,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | ||||
__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.char_rep); | __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.char_rep); | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined) | |||||
__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message(&In0P->message, In0P->NDR.char_rep); | |||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | ||||
__NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.char_rep); | __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.char_rep); | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | ||||
@@ -554,6 +638,7 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value2__defined) | ||||
if (In0P->NDR.float_rep != NDR_record.float_rep) { | if (In0P->NDR.float_rep != NDR_record.float_rep) { | ||||
@@ -566,6 +651,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_sync_notify_t(_ | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined) | ||||
__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.float_rep); | __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify(&In0P->notify, In0P->NDR.float_rep); | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined) | |||||
__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message(&In0P->message, In0P->NDR.float_rep); | |||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined) | ||||
__NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.float_rep); | __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1(&In0P->value1, In0P->NDR.float_rep); | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_sync_notify_t__value1__defined */ | ||||
@@ -594,6 +682,7 @@ kern_return_t rpc_jack_client_sync_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2, | int value2, | ||||
int *result | int *result | ||||
@@ -613,6 +702,7 @@ mig_internal novalue _Xrpc_jack_client_sync_notify | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
mach_msg_trailer_t trailer; | mach_msg_trailer_t trailer; | ||||
@@ -646,7 +736,7 @@ mig_internal novalue _Xrpc_jack_client_sync_notify | |||||
{ MIG_RETURN_ERROR(OutP, check_result); } | { MIG_RETURN_ERROR(OutP, check_result); } | ||||
#endif /* defined(__MIG_check__Request__rpc_jack_client_sync_notify_t__defined) */ | #endif /* defined(__MIG_check__Request__rpc_jack_client_sync_notify_t__defined) */ | ||||
OutP->RetCode = rpc_jack_client_sync_notify(In0P->Head.msgh_request_port, In0P->refnum, In0P->client_name, In0P->notify, In0P->value1, In0P->value2, &OutP->result); | |||||
OutP->RetCode = rpc_jack_client_sync_notify(In0P->Head.msgh_request_port, In0P->refnum, In0P->client_name, In0P->notify, In0P->message, In0P->value1, In0P->value2, &OutP->result); | |||||
if (OutP->RetCode != KERN_SUCCESS) { | if (OutP->RetCode != KERN_SUCCESS) { | ||||
MIG_RETURN_ERROR(OutP, OutP->RetCode); | MIG_RETURN_ERROR(OutP, OutP->RetCode); | ||||
} | } | ||||
@@ -722,6 +812,26 @@ mig_internal novalue _Xrpc_jack_client_sync_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#if defined(__NDR_convert__int_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__int_rep__message_t__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__int_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__int_rep__string__defined) | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__int_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #ifndef __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
#if defined(__NDR_convert__int_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__int_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #define __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
@@ -822,6 +932,26 @@ mig_internal novalue _Xrpc_jack_client_sync_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#if defined(__NDR_convert__char_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__char_rep__message_t__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__char_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__char_rep__string__defined) | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__char_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #ifndef __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
#if defined(__NDR_convert__char_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__char_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #define __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
@@ -922,6 +1052,26 @@ mig_internal novalue _Xrpc_jack_client_sync_notify | |||||
#endif /* defined(__NDR_convert__*__defined) */ | #endif /* defined(__NDR_convert__*__defined) */ | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#ifndef __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#if defined(__NDR_convert__float_rep__JackRPCClient__message_t__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__JackRPCClient__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__float_rep__message_t__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__message_t((message_t *)(a), f) | |||||
#elif defined(__NDR_convert__float_rep__JackRPCClient__string__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__JackRPCClient__string(a, f, 512) | |||||
#elif defined(__NDR_convert__float_rep__string__defined) | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined | |||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message(a, f) \ | |||||
__NDR_convert__float_rep__string(a, f, 512) | |||||
#endif /* defined(__NDR_convert__*__defined) */ | |||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#ifndef __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #ifndef __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
#if defined(__NDR_convert__float_rep__JackRPCClient__int__defined) | #if defined(__NDR_convert__float_rep__JackRPCClient__int__defined) | ||||
#define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined | #define __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined | ||||
@@ -973,9 +1123,24 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->message), 512); | |||||
if (( memchr(In0P->message, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | ||||
if (In0P->NDR.int_rep != NDR_record.int_rep) { | if (In0P->NDR.int_rep != NDR_record.int_rep) { | ||||
@@ -988,6 +1153,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | ||||
__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.int_rep); | __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.int_rep); | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined) | |||||
__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message(&In0P->message, In0P->NDR.int_rep); | |||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | ||||
__NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.int_rep); | __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.int_rep); | ||||
#endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | #endif /* __NDR_convert__int_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | ||||
@@ -1000,6 +1168,7 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | ||||
if (In0P->NDR.char_rep != NDR_record.char_rep) { | if (In0P->NDR.char_rep != NDR_record.char_rep) { | ||||
@@ -1012,6 +1181,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | ||||
__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.char_rep); | __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.char_rep); | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined) | |||||
__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message(&In0P->message, In0P->NDR.char_rep); | |||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | #if defined(__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | ||||
__NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.char_rep); | __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.char_rep); | ||||
#endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | #endif /* __NDR_convert__char_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | ||||
@@ -1024,6 +1196,7 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__refnum__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__client_name__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined) || \ | |||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined) || \ | ||||
defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value2__defined) | ||||
if (In0P->NDR.float_rep != NDR_record.float_rep) { | if (In0P->NDR.float_rep != NDR_record.float_rep) { | ||||
@@ -1036,6 +1209,9 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_async_notify_t( | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined) | ||||
__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.float_rep); | __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify(&In0P->notify, In0P->NDR.float_rep); | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__notify__defined */ | ||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined) | |||||
__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message(&In0P->message, In0P->NDR.float_rep); | |||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__message__defined */ | |||||
#if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | #if defined(__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined) | ||||
__NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.float_rep); | __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1(&In0P->value1, In0P->NDR.float_rep); | ||||
#endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | #endif /* __NDR_convert__float_rep__Request__rpc_jack_client_async_notify_t__value1__defined */ | ||||
@@ -1064,6 +1240,7 @@ kern_return_t rpc_jack_client_async_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2 | int value2 | ||||
); | ); | ||||
@@ -1082,6 +1259,7 @@ mig_internal novalue _Xrpc_jack_client_async_notify | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
mach_msg_trailer_t trailer; | mach_msg_trailer_t trailer; | ||||
@@ -1115,7 +1293,7 @@ mig_internal novalue _Xrpc_jack_client_async_notify | |||||
{ MIG_RETURN_ERROR(OutP, check_result); } | { MIG_RETURN_ERROR(OutP, check_result); } | ||||
#endif /* defined(__MIG_check__Request__rpc_jack_client_async_notify_t__defined) */ | #endif /* defined(__MIG_check__Request__rpc_jack_client_async_notify_t__defined) */ | ||||
OutP->RetCode = rpc_jack_client_async_notify(In0P->Head.msgh_request_port, In0P->refnum, In0P->client_name, In0P->notify, In0P->value1, In0P->value2); | |||||
OutP->RetCode = rpc_jack_client_async_notify(In0P->Head.msgh_request_port, In0P->refnum, In0P->client_name, In0P->notify, In0P->message, In0P->value1, In0P->value2); | |||||
__AfterRcvSimple(1001, "rpc_jack_client_async_notify") | __AfterRcvSimple(1001, "rpc_jack_client_async_notify") | ||||
} | } | ||||
@@ -1145,9 +1323,9 @@ const struct JackRPCClient_subsystem { | |||||
(vm_address_t)0, | (vm_address_t)0, | ||||
{ | { | ||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_sync_notify, 7, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_sync_notify_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_sync_notify, 8, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_sync_notify_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_async_notify, 6, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_async_notify_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_async_notify, 7, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_async_notify_t)}, | |||||
} | } | ||||
}; | }; | ||||
@@ -1,7 +1,7 @@ | |||||
/* | /* | ||||
* IDENTIFICATION: | * IDENTIFICATION: | ||||
* stub generated Mon Sep 1 17:42:27 2008 | |||||
* with a MiG generated Tue Feb 19 02:01:43 PST 2008 by root@b75.local | |||||
* stub generated Tue Oct 20 12:13:25 2009 | |||||
* with a MiG generated Mon May 18 09:59:33 PDT 2009 by root@sulitlana.apple.com | |||||
* OPTIONS: | * OPTIONS: | ||||
*/ | */ | ||||
#define __MIG_check__Reply__JackRPCClient_subsystem__ 1 | #define __MIG_check__Reply__JackRPCClient_subsystem__ 1 | ||||
@@ -50,15 +50,15 @@ | |||||
#ifndef __MachMsgErrorWithTimeout | #ifndef __MachMsgErrorWithTimeout | ||||
#define __MachMsgErrorWithTimeout(_R_) { \ | #define __MachMsgErrorWithTimeout(_R_) { \ | ||||
switch (_R_) { \ | switch (_R_) { \ | ||||
case MACH_SEND_INVALID_REPLY: \ | |||||
case MACH_RCV_INVALID_NAME: \ | |||||
case MACH_RCV_PORT_DIED: \ | |||||
case MACH_RCV_PORT_CHANGED: \ | |||||
case MACH_RCV_TIMED_OUT: \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
case MACH_SEND_INVALID_DATA: \ | |||||
case MACH_SEND_INVALID_DEST: \ | |||||
case MACH_SEND_INVALID_HEADER: \ | |||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
break; \ | break; \ | ||||
case MACH_SEND_TIMED_OUT: \ | |||||
case MACH_RCV_TIMED_OUT: \ | |||||
default: \ | default: \ | ||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
} \ | } \ | ||||
} | } | ||||
#endif /* __MachMsgErrorWithTimeout */ | #endif /* __MachMsgErrorWithTimeout */ | ||||
@@ -66,14 +66,13 @@ | |||||
#ifndef __MachMsgErrorWithoutTimeout | #ifndef __MachMsgErrorWithoutTimeout | ||||
#define __MachMsgErrorWithoutTimeout(_R_) { \ | #define __MachMsgErrorWithoutTimeout(_R_) { \ | ||||
switch (_R_) { \ | switch (_R_) { \ | ||||
case MACH_SEND_INVALID_REPLY: \ | |||||
case MACH_RCV_INVALID_NAME: \ | |||||
case MACH_RCV_PORT_DIED: \ | |||||
case MACH_RCV_PORT_CHANGED: \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
case MACH_SEND_INVALID_DATA: \ | |||||
case MACH_SEND_INVALID_DEST: \ | |||||
case MACH_SEND_INVALID_HEADER: \ | |||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
break; \ | break; \ | ||||
default: \ | default: \ | ||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
} \ | } \ | ||||
} | } | ||||
#endif /* __MachMsgErrorWithoutTimeout */ | #endif /* __MachMsgErrorWithoutTimeout */ | ||||
@@ -265,6 +264,7 @@ mig_external kern_return_t rpc_jack_client_sync_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2, | int value2, | ||||
int *result | int *result | ||||
@@ -280,6 +280,7 @@ mig_external kern_return_t rpc_jack_client_sync_notify | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} Request; | } Request; | ||||
@@ -345,6 +346,8 @@ mig_external kern_return_t rpc_jack_client_sync_notify | |||||
InP->notify = notify; | InP->notify = notify; | ||||
(void) mig_strncpy(InP->message, message, 512); | |||||
InP->value1 = value1; | InP->value1 = value1; | ||||
InP->value2 = value2; | InP->value2 = value2; | ||||
@@ -387,6 +390,7 @@ mig_external kern_return_t rpc_jack_client_async_notify | |||||
int refnum, | int refnum, | ||||
client_name_t client_name, | client_name_t client_name, | ||||
int notify, | int notify, | ||||
message_t message, | |||||
int value1, | int value1, | ||||
int value2 | int value2 | ||||
) | ) | ||||
@@ -401,6 +405,7 @@ mig_external kern_return_t rpc_jack_client_async_notify | |||||
int refnum; | int refnum; | ||||
client_name_t client_name; | client_name_t client_name; | ||||
int notify; | int notify; | ||||
message_t message; | |||||
int value1; | int value1; | ||||
int value2; | int value2; | ||||
} Request; | } Request; | ||||
@@ -437,6 +442,8 @@ mig_external kern_return_t rpc_jack_client_async_notify | |||||
InP->notify = notify; | InP->notify = notify; | ||||
(void) mig_strncpy(InP->message, message, 512); | |||||
InP->value1 = value1; | InP->value1 = value1; | ||||
InP->value2 = value2; | InP->value2 = value2; | ||||
@@ -21,7 +21,7 @@ typedef struct { | |||||
char *name; | char *name; | ||||
function_ptr_t function; | function_ptr_t function; | ||||
} function_table_entry; | } function_table_entry; | ||||
typedef function_table_entry *function_table_t; | |||||
typedef function_table_entry *function_table_t; | |||||
#endif /* FUNCTION_PTR_T */ | #endif /* FUNCTION_PTR_T */ | ||||
#endif /* AUTOTEST */ | #endif /* AUTOTEST */ | ||||
@@ -1,7 +1,7 @@ | |||||
/* | /* | ||||
* IDENTIFICATION: | * IDENTIFICATION: | ||||
* stub generated Mon Sep 1 17:42:28 2008 | |||||
* with a MiG generated Tue Feb 19 02:01:43 PST 2008 by root@b75.local | |||||
* stub generated Tue Oct 20 12:13:26 2009 | |||||
* with a MiG generated Mon May 18 09:59:33 PDT 2009 by root@sulitlana.apple.com | |||||
* OPTIONS: | * OPTIONS: | ||||
*/ | */ | ||||
@@ -910,6 +910,17 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_open_t(__attrib | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_open_t__client_name__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_open_t__client_name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_open_t__pid__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_client_open_t__pid__defined) | ||||
if (In0P->NDR.int_rep != NDR_record.int_rep) { | if (In0P->NDR.int_rep != NDR_record.int_rep) { | ||||
@@ -1243,6 +1254,17 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_client_check_t(__attri | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__client_name__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__client_name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__protocol__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__protocol__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__options__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_client_check_t__options__defined) | ||||
@@ -2283,6 +2305,20 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_port_register_t(__attr | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->name), 128); | |||||
if (( memchr(In0P->name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->port_type), 128); | |||||
if (( memchr(In0P->port_type, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__name__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__port_type__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_port_register_t__port_type__defined) || \ | ||||
@@ -3526,6 +3562,20 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_port_connect_name_t(__ | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->src), 128); | |||||
if (( memchr(In0P->src, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->dst), 128); | |||||
if (( memchr(In0P->dst, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__src__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__src__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__dst__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_port_connect_name_t__dst__defined) | ||||
@@ -3848,6 +3898,20 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_port_disconnect_name_t | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->src), 128); | |||||
if (( memchr(In0P->src, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->dst), 128); | |||||
if (( memchr(In0P->dst, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__src__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__src__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__dst__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_port_disconnect_name_t__dst__defined) | ||||
@@ -4170,6 +4234,17 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_port_rename_t(__attrib | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->name), 128); | |||||
if (( memchr(In0P->name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__src__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__src__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__name__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_port_rename_t__name__defined) | ||||
@@ -5451,6 +5526,17 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_internal_clienthandle_ | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clienthandle_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clienthandle_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clienthandle_t__client_name__defined) | defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clienthandle_t__client_name__defined) | ||||
if (In0P->NDR.int_rep != NDR_record.int_rep) { | if (In0P->NDR.int_rep != NDR_record.int_rep) { | ||||
@@ -5881,6 +5967,23 @@ mig_internal kern_return_t __MIG_check__Request__rpc_jack_internal_clientload_t( | |||||
return MIG_BAD_ARGUMENTS; | return MIG_BAD_ARGUMENTS; | ||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if __MigTypeCheck | |||||
{ | |||||
char * msg_limit = ((char *) In0P) + In0P->Head.msgh_size; | |||||
size_t memchr_limit; | |||||
memchr_limit = min((msg_limit - In0P->client_name), 128); | |||||
if (( memchr(In0P->client_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->so_name), 1024); | |||||
if (( memchr(In0P->so_name, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
memchr_limit = min((msg_limit - In0P->objet_data), 1024); | |||||
if (( memchr(In0P->objet_data, '\0', memchr_limit) == NULL )) | |||||
return MIG_BAD_ARGUMENTS; // string length exceeds buffer length! | |||||
} | |||||
#endif /* __MigTypeCheck */ | |||||
#if defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__refnum__defined) || \ | #if defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__refnum__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__client_name__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__client_name__defined) || \ | ||||
defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__so_name__defined) || \ | defined(__NDR_convert__int_rep__Request__rpc_jack_internal_clientload_t__so_name__defined) || \ | ||||
@@ -6626,47 +6729,47 @@ const struct server_JackRPCEngine_subsystem { | |||||
(vm_address_t)0, | (vm_address_t)0, | ||||
{ | { | ||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_open, 8, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_open_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_open, 8, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_open_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_check, 7, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_check_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_check, 7, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_check_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_close, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_close_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_close, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_close_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_activate, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_activate_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_activate, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_activate_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_deactivate, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_deactivate_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_deactivate, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_deactivate_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_register, 8, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_register_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_register, 8, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_register_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_unregister, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_unregister_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_unregister, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_unregister_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_connect, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_connect_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_connect, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_connect_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_disconnect, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_disconnect_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_disconnect, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_disconnect_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_connect_name, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_connect_name_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_connect_name, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_connect_name_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_disconnect_name, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_disconnect_name_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_disconnect_name, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_disconnect_name_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_port_rename, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_rename_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_port_rename, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_port_rename_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_set_buffer_size, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_buffer_size_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_set_buffer_size, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_buffer_size_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_set_freewheel, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_freewheel_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_set_freewheel, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_freewheel_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_release_timebase, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_release_timebase_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_release_timebase, 3, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_release_timebase_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_set_timebase_callback, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_timebase_callback_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_set_timebase_callback, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_set_timebase_callback_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_get_internal_clientname, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_get_internal_clientname_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_get_internal_clientname, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_get_internal_clientname_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_internal_clienthandle, 6, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clienthandle_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_internal_clienthandle, 6, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clienthandle_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_internal_clientload, 9, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clientload_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_internal_clientload, 9, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clientload_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_internal_clientunload, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clientunload_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_internal_clientunload, 5, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_internal_clientunload_t)}, | |||||
{ (mig_impl_routine_t) 0, | { (mig_impl_routine_t) 0, | ||||
(mig_stub_routine_t) _Xrpc_jack_client_rt_notify, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_rt_notify_t)}, | |||||
(mig_stub_routine_t) _Xrpc_jack_client_rt_notify, 4, 0, (routine_arg_descriptor_t)0, (mach_msg_size_t)sizeof(__Reply__rpc_jack_client_rt_notify_t)}, | |||||
} | } | ||||
}; | }; | ||||
@@ -1,7 +1,7 @@ | |||||
/* | /* | ||||
* IDENTIFICATION: | * IDENTIFICATION: | ||||
* stub generated Mon Sep 1 17:42:28 2008 | |||||
* with a MiG generated Tue Feb 19 02:01:43 PST 2008 by root@b75.local | |||||
* stub generated Tue Oct 20 12:13:26 2009 | |||||
* with a MiG generated Mon May 18 09:59:33 PDT 2009 by root@sulitlana.apple.com | |||||
* OPTIONS: | * OPTIONS: | ||||
*/ | */ | ||||
#define __MIG_check__Reply__JackRPCEngine_subsystem__ 1 | #define __MIG_check__Reply__JackRPCEngine_subsystem__ 1 | ||||
@@ -50,15 +50,15 @@ | |||||
#ifndef __MachMsgErrorWithTimeout | #ifndef __MachMsgErrorWithTimeout | ||||
#define __MachMsgErrorWithTimeout(_R_) { \ | #define __MachMsgErrorWithTimeout(_R_) { \ | ||||
switch (_R_) { \ | switch (_R_) { \ | ||||
case MACH_SEND_INVALID_REPLY: \ | |||||
case MACH_RCV_INVALID_NAME: \ | |||||
case MACH_RCV_PORT_DIED: \ | |||||
case MACH_RCV_PORT_CHANGED: \ | |||||
case MACH_RCV_TIMED_OUT: \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
case MACH_SEND_INVALID_DATA: \ | |||||
case MACH_SEND_INVALID_DEST: \ | |||||
case MACH_SEND_INVALID_HEADER: \ | |||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
break; \ | break; \ | ||||
case MACH_SEND_TIMED_OUT: \ | |||||
case MACH_RCV_TIMED_OUT: \ | |||||
default: \ | default: \ | ||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
} \ | } \ | ||||
} | } | ||||
#endif /* __MachMsgErrorWithTimeout */ | #endif /* __MachMsgErrorWithTimeout */ | ||||
@@ -66,14 +66,13 @@ | |||||
#ifndef __MachMsgErrorWithoutTimeout | #ifndef __MachMsgErrorWithoutTimeout | ||||
#define __MachMsgErrorWithoutTimeout(_R_) { \ | #define __MachMsgErrorWithoutTimeout(_R_) { \ | ||||
switch (_R_) { \ | switch (_R_) { \ | ||||
case MACH_SEND_INVALID_REPLY: \ | |||||
case MACH_RCV_INVALID_NAME: \ | |||||
case MACH_RCV_PORT_DIED: \ | |||||
case MACH_RCV_PORT_CHANGED: \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
case MACH_SEND_INVALID_DATA: \ | |||||
case MACH_SEND_INVALID_DEST: \ | |||||
case MACH_SEND_INVALID_HEADER: \ | |||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
break; \ | break; \ | ||||
default: \ | default: \ | ||||
mig_put_reply_port(InP->Head.msgh_reply_port); \ | |||||
mig_dealloc_reply_port(InP->Head.msgh_reply_port); \ | |||||
} \ | } \ | ||||
} | } | ||||
#endif /* __MachMsgErrorWithoutTimeout */ | #endif /* __MachMsgErrorWithoutTimeout */ | ||||
@@ -399,8 +398,9 @@ mig_internal kern_return_t __MIG_check__Reply__rpc_jack_client_open_t(__Reply__r | |||||
#if __MigTypeCheck | #if __MigTypeCheck | ||||
if (Out0P->private_port.type != MACH_MSG_PORT_DESCRIPTOR || | if (Out0P->private_port.type != MACH_MSG_PORT_DESCRIPTOR || | ||||
Out0P->private_port.disposition != 17) | |||||
{ return MIG_TYPE_ERROR; } | |||||
Out0P->private_port.disposition != 17) { | |||||
return MIG_TYPE_ERROR; | |||||
} | |||||
#endif /* __MigTypeCheck */ | #endif /* __MigTypeCheck */ | ||||
#if defined(__NDR_convert__int_rep__Reply__rpc_jack_client_open_t__shared_engine__defined) || \ | #if defined(__NDR_convert__int_rep__Reply__rpc_jack_client_open_t__shared_engine__defined) || \ | ||||
@@ -20,5 +20,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | |||||
typedef char client_name_t[64]; | typedef char client_name_t[64]; | ||||
typedef char client_port_name_t[256]; | typedef char client_port_name_t[256]; | ||||
typedef char client_port_type_t[128]; | typedef char client_port_type_t[128]; | ||||
typedef char so_name_t[256]; | |||||
typedef char objet_data_t[256]; | |||||
typedef char so_name_t[1024]; | |||||
typedef char objet_data_t[1024]; | |||||
typedef char message_t[512]; |
@@ -320,7 +320,7 @@ bool JackSocketClientChannel::Execute() | |||||
goto error; | goto error; | ||||
} | } | ||||
res.fResult = fClient->ClientNotify(event.fRefNum, event.fName, event.fNotify, event.fSync, event.fValue1, event.fValue2); | |||||
res.fResult = fClient->ClientNotify(event.fRefNum, event.fName, event.fNotify, event.fSync, event.fMessage, event.fValue1, event.fValue2); | |||||
if (event.fSync) { | if (event.fSync) { | ||||
if (res.Write(fNotificationSocket) < 0) { | if (res.Write(fNotificationSocket) < 0) { | ||||
@@ -47,9 +47,9 @@ void JackSocketNotifyChannel::Close() | |||||
fNotifySocket.Close(); | fNotifySocket.Close(); | ||||
} | } | ||||
void JackSocketNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result) | |||||
void JackSocketNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result) | |||||
{ | { | ||||
JackClientNotification event(name, refnum, notify, sync, value1, value2); | |||||
JackClientNotification event(name, refnum, notify, sync, message, value1, value2); | |||||
JackResult res; | JackResult res; | ||||
// Send notification | // Send notification | ||||
@@ -45,7 +45,7 @@ class JackSocketNotifyChannel | |||||
int Open(const char* name); // Open the Server/Client connection | int Open(const char* name); // Open the Server/Client connection | ||||
void Close(); // Close the Server/Client connection | void Close(); // Close the Server/Client connection | ||||
void ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result); | |||||
void ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result); | |||||
}; | }; | ||||
} // end of namespace | } // end of namespace | ||||
@@ -315,7 +315,7 @@ bool JackWinNamedPipeClientChannel::Execute() | |||||
goto error; | goto error; | ||||
} | } | ||||
res.fResult = fClient->ClientNotify(event.fRefNum, event.fName, event.fNotify, event.fSync, event.fValue1, event.fValue2); | |||||
res.fResult = fClient->ClientNotify(event.fRefNum, event.fName, event.fNotify, event.fSync, event.fMessage, event.fValue1, event.fValue2); | |||||
if (event.fSync) { | if (event.fSync) { | ||||
if (res.Write(&fNotificationListenPipe) < 0) { | if (res.Write(&fNotificationListenPipe) < 0) { | ||||
@@ -46,9 +46,9 @@ void JackWinNamedPipeNotifyChannel::Close() | |||||
fNotifyPipe.Close(); | fNotifyPipe.Close(); | ||||
} | } | ||||
void JackWinNamedPipeNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result) | |||||
void JackWinNamedPipeNotifyChannel::ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result) | |||||
{ | { | ||||
JackClientNotification event(name, refnum, notify, sync, value1, value2); | |||||
JackClientNotification event(name, refnum, notify, sync, message, value1, value2); | |||||
JackResult res; | JackResult res; | ||||
// Send notification | // Send notification | ||||
@@ -44,7 +44,7 @@ class JackWinNamedPipeNotifyChannel | |||||
int Open(const char* name); // Open the Server/Client connection | int Open(const char* name); // Open the Server/Client connection | ||||
void Close(); // Close the Server/Client connection | void Close(); // Close the Server/Client connection | ||||
void ClientNotify(int refnum, const char* name, int notify, int sync, int value1, int value2, int* result); | |||||
void ClientNotify(int refnum, const char* name, int notify, int sync, const char* message, int value1, int value2, int* result); | |||||
}; | }; | ||||
} // end of namespace | } // end of namespace | ||||