routproc

La funzione routproc è una procedura di routing di esempio. Deve essere fornito come parte dell'applicazione. Viene chiamato dal modulo DMOD (Dynamic Access Module) con un messaggio che potrebbe o meno essere per questa applicazione Le procedure di routing delle chiamate DMOD a loro volta fino a quando non viene accettato il messaggio.

Sintassi

  
DWORD routproc(   
BUFHDR *msgptr,   
USHORT locl,   
USHORT retstat   
);  

Parametri

msgptr
Puntatore al messaggio passato da DMOD alla procedura di routing.

locl
Localizzazione da cui è stato ricevuto il messaggio (se retstat indica che il messaggio è stato restituito) o la località in cui è stato perso il percorso (se retstat indica l'errore del percorso).

retstat
Motivo della chiamata:

CEDINMSG (1): messaggio restituito.

CEDINLLN (2) - Errore del percorso (vedere Osservazioni di seguito).

Valore restituito

true
La procedura di routing ha accettato il messaggio.

FALSE
Il messaggio non è per questa procedura di routing.

Commenti

La procedura di routing deve prima chiamare sbpurcvx, che gestisce tutti i messaggi di risposta Open, come indicato di seguito:

sbpurcvx(&msgptr, locl, retstat)

Un codice restituito di TRUE da sbpurcvx indica che sbpurcvx ha accettato il messaggio; è stata ricevuta una risposta di errore aperta per questa applicazione e la posizione della risorsa continua. La procedura di routing non deve elaborare ulteriormente il messaggio e deve restituire TRUE per impedire al DMOD di chiamare ulteriori procedure di routing.

Un codice restituito di FALSE da sbpurcvx indica che la procedura di routing deve:

  • Se il messaggio è per questa applicazione, prendere responsabilità del messaggio e restituire TRUE per impedire al DMOD di chiamare ulteriori procedure di routing.

  • Se il messaggio non è per questa applicazione, restituire FALSE in modo che DMOD tenti ulteriori procedure di routing.

    Se viene restituito un errore di percorso, msgptr non punta a un messaggio valido e non verranno restituiti altri messaggi di interfaccia di gestione delle funzioni (FMI) per il valore di localizzazione indicato. L'applicazione è responsabile della fine di tutte le sessioni usando questa località. La procedura di routing deve restituire FALSE. Ciò garantisce che la località persa venga segnalata a tutte le altre procedure di routing.

    Se il messaggio è per questa applicazione, la procedura di routing può elaborare immediatamente il messaggio o inserire il messaggio in una coda dell'applicazione e quindi pubblicare l'applicazione usando un semaforo. Per altre informazioni, vedere Ricezione di messaggi.