Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le verbe ACTIVATE_SESSION demande à Microsoft® Host Integration Server d’activer une session entre l’unité logique locale (LU) et une lu partenaire spécifiée, à l’aide d’un mode spécifié. Ce verbe se termine lorsque la session spécifiée est devenue active ou lorsqu’elle a échoué.
La structure suivante décrit le bloc de contrôle de verbe utilisé par le verbe ACTIVATE_SESSION .
Syntaxe
typedef struct activate_session {
unsigned short opcode;
unsigned char reserv2[2];
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char reserv3[8];
unsigned char lu_alias[8];
unsigned char plu_alias[8];
unsigned char mode_name[8];
unsigned char fqplu_name[17];
unsigned char polarity;
unsigned char session_id[8];
unsigned long conv_group_id;
unsigned char reserv4[1];
unsigned char type;
HANDLE deactivation_event;
unsigned short* p_deactivation_status;
unsigned char reserv5[10];
} ACTIVATE_SESSION;
Membres
Opcode
Paramètre fourni. Spécifie le code d’opération verbe, AP_ACTIVATE_SESSION.
réserver2
Champ réservé.
primary_rc
Paramètre retourné. Spécifie le code de retour principal défini par APPC à l’achèvement du verbe. Les codes de retour valides varient en fonction du verbe APPC émis. Consultez les codes de retour pour obtenir des codes d’erreur valides pour ce verbe.
secondary_rc
Paramètre retourné. Spécifie le code de retour secondaire défini par APPC à l’achèvement du verbe. Les codes de retour valides varient en fonction du verbe APPC émis. Consultez les codes de retour pour obtenir des codes d’erreur valides pour ce verbe.
réserver3
Champ réservé.
lu_alias
Paramètre fourni. Fournit le nom ASCII de 8 octets utilisé localement pour l’unité logique. Si l’unité logique locale par défaut doit être utilisée, remplissez ce paramètre avec des espaces.
plu_alias
Paramètre fourni. Fournit le nom ASCII de 8 octets utilisé localement pour l’unité logique partenaire. Si la lu distante par défaut doit être utilisée, remplissez ce paramètre avec des espaces. Si l’unité logique partenaire doit être spécifiée avec le paramètre fqplu_name , remplissez ce paramètre avec des zéros binaires.
mode_name
Paramètre fourni. Spécifie le nom du mode EBCDIC (type A).
fqplu_name
Paramètre fourni. Fournit le nom de l’unité logique partenaire dans EBCDIC (type A) lorsqu’aucun nom de plu_alias n’est défini sur le nœud local et que l’unité logique partenaire se trouve à un autre nœud. Ce paramètre est ignoré si plu_alias est spécifié.
polarité
Paramètre fourni. Spécifie la polarité de la session. Les valeurs possibles sont les suivantes :
AP_POL_EITHER
Si AP_POL_EITHER est définie, ACTIVATE_SESSION active une première session d’orateur si disponible ; sinon, une session de soumissionnaire est activée.
AP_POL_FIRST_SPEAKER
Si AP_POL_FIRST_SPEAKER est définie, ACTIVATE_SESSION réussit uniquement si une session de la polarité demandée est disponible.
AP_POL_BIDDER
Si AP_POL_BIDDER est définie, ACTIVATE_SESSION réussit uniquement si une session de la polarité demandée est disponible.
identifiant_de_session
Paramètre retourné. Fournit l’identificateur de 8 octets de la session d’activation.
conv_group_id
Paramètre retourné. Fournit l’identificateur du groupe de conversation. Ce paramètre peut être spécifié sur ALLOCATE et MC_ALLOCATE verbes pour démarrer des conversations sur cette session particulière.
réserver4
Champ réservé.
type
Paramètre fourni. Spécifie le type d’activation. Les valeurs possibles sont les suivantes :
AP_ACT_ACTIVE
Si AP_ACT_ACTIVE est spécifié, Host Integration Server tente de démarrer la session requise (en envoyant bind ou INIT-SELF).
AP_ACT_PASSIVE
Si AP_ACT_PASSIVE est spécifié, Host Integration Server ne tente pas de démarrer la session et le verbe se termine lorsque le partenaire a démarré la session.
deactivation_event
Paramètre fourni. Fournit un handle d’événement que APPC doit signaler lorsque la session est désactivée. Le handle d’événement doit être obtenu en appelant la fonction CreateEvent ou OpenEvent Win32®.
p_deactivation_status
Paramètre retourné. Pointeur vers une valeur définie lorsque l’événement de désactivation est signalé pour fournir l’état d’achèvement. Les valeurs suivantes peuvent être retournées.
AP_SESSION_DEACTIVATED
AP_COMM_SUBSYSTEM_ABENDED
réserver5
Champ réservé.
Codes de retour
AP_OK
Code de retour principal ; le verbe exécuté avec succès. Le code de retour secondaire indique la polarité de la session établie. Les valeurs suivantes peuvent être retournées.
AP_POL_FIRST_SPEAKER
AP_POL_BIDDER
AP_PARAMETER_CHECK
Code de retour principal ; le verbe n’a pas été exécuté en raison d’une erreur de paramètre.
AP_INVALID_LU_ALIAS
Code de retour secondaire ; APPC ne peut pas trouver la lu_alias spécifiée parmi celles définies.
AP_INVALID_PLU_ALIAS
Code de retour secondaire ; APPC n’a pas reconnu la plu_alias spécifiée.
AP_INVALID_MODE_NAME
Code de retour secondaire ; APPC n’a pas reconnu la mode_name spécifiée.
AP_INVALID_FQPLU_NAME
Code de retour secondaire ; APPC n’a pas reconnu la fqplu_name spécifiée.
AP_INVALID_POLARITY
Code de retour secondaire ; APPC n’a pas reconnu la polarité spécifiée.
AP_INVALID_TYPE
Code de retour secondaire ; APPC n’a pas reconnu le type spécifié.
AP_ACTIVATION_FAIL_NO_RETRY
Code de retour principal ; la session n’a pas pu être activée en raison d’une condition nécessitant une action (par exemple, une incompatibilité de configuration ou une erreur de protocole de session).
AP_ACTIVATION_FAIL_RETRY
Code de retour principal ; la session n’a pas pu être activée en raison d’une condition temporaire (par exemple, une défaillance de lien).
AP_SESSION_LIMITS_EXCEEDED
Code de retour principal ; la session n’a pas pu être activée, car les limites de session ont été dépassées.
AP_SESSION_LIMITS_CLOSED
Code de retour principal ; la session n’a pas pu être activée, car les limites de session sont fermées (c’est-à-dire zéro).
AP_COMM_SUBSYSTEM_ABENDED
Code de retour principal ; indique que l’une des conditions suivantes s’est produite :
Le nœud utilisé par cette conversation a rencontré un ABEND.
La connexion entre le tp et le nœud PU 2.1 a été interrompue (erreur réseau locale s’est produite).
Le SnaBase sur l’ordinateur du TP a rencontré un ABEND.
L’administrateur système doit examiner le journal des erreurs pour déterminer la raison de l’ABEND.
AP_COMM_SUBSYSTEM_NOT_LOADED
Code de retour principal ; un composant requis n’a pas pu être chargé ou arrêté lors du traitement du verbe. Ainsi, la communication n’a pas pu avoir lieu. Contactez l’administrateur système pour obtenir une action corrective.
AP_STACK_TOO_SMALL
Code de retour principal ; la taille de la pile de l’application est trop petite pour exécuter le verbe. Augmentez la taille de la pile de votre application.
AP_THREAD_BLOCKING
Code de retour principal ; le thread appelant est déjà dans un appel bloquant.
Remarques
Ce verbe prend en charge l’activation active et passive.
La forme active de ce verbe entraîne la tentative d’initialisation de la session (en envoyant une LIAISON pour les unités logiques indépendantes ou un INIT-SELF pour les unités LUS dépendantes). La forme active de ce verbe entraîne également le comportement suivant :
Si la connexion à l’unité logique partenaire est inactive et est configurée comme à la demande, le nœud tente de démarrer la connexion.
Si le partenariat dynamique est utilisé, le nœud configure le partenariat LU-LU/MODE.
Si CNOS n’a pas été exécuté, le nœud démarre CNOS (mais ne modifie pas les limites de session).
Le formulaire passif ne tente pas de démarrer la session, mais se termine lorsque l’unité logique est démarrée par une liaison de son lu partenaire. Pour les unités logiques indépendantes, plusieurs verbes de ACTIVATE_SESSION passifs peuvent être mis en file d’attente pour le même LU-LU/MODE, et se terminer à leur tour à mesure que de nouvelles sessions sont démarrées.
Ce verbe inclut également un événement de désactivation, qui est publié lorsque la session est désactivée par n’importe quelle méthode autre qu’un verbe DEACTIVATE_SESSION (par exemple, un UNBIND non sollicité de son lu partenaire entraîne la publication de cet événement).