** Especificando um Handoff Set
Um conjunto de entrega especifica os protocolos subsequentes a um protocolo. O analisador usa um conjunto de transição somente quando pode identificar o próximo protocolo a partir dos dados de uma instância de protocolo.
Por exemplo, o protocolo TCP tem uma propriedade de porta que identifica o protocolo que segue o protocolo TCP. Um valor de propriedade de 20 indica que o próximo protocolo é FTP. Um valor de propriedade de 53 indica que o próximo protocolo é DNS. Como a propriedade port identifica o protocolo a seguir, o analisador TCP pode usar o seguinte conjunto de handoff para obter um identificador para o protocolo especificado pela propriedade port.
[TCP_HandoffSet]
20 = FTP
21 = FTP
23 = TELNET
25 = SMTP
53 = DNS
79 = FINGER
80 = HTTP
102 = ISO
111 = RPC
119 = NNTP
137 = NBT, 1000
138 = NBT, 1002
139 = NBT, 1001
389 = LDAP
445 = NBT, 1001
515 = LPR
612 = HMMP
613 = HMMP
1024 = NBT, 1001
1047 = NBT, 1001
1362 = TDS
1433 = TDS
1723 = PPTP
3020 = NBT, 1001
3268 = LDAP
5678 = PPTP
Os conjuntos Handoff são armazenados no arquivo INI do analisador. Por exemplo, o conjunto de transferência TCP anterior está localizado no arquivo tcpip.ini. Observe que, se uma DLL do analisador suportar vários protocolos, cada analisador que usa um conjunto de transferência tem seu próprio local no arquivo INI.
As informações de configuração do Handoff são especificadas durante a implementação da função ParserAutoInstallInfo. O analisador pode especificar os protocolos que precedem o protocolo do analisador e os protocolos que seguem o protocolo do analisador. O Monitor de Rede usa todos os protocolos que precedem e adiciona o protocolo do analisador às seções de seguimento do arquivo INI do analisador — para cada protocolo que precede. O Monitor de Rede armazena a lista de protocolos na seção de configuração de transferência do arquivo INI do analisador.
O Monitor de Rede armazena as informações do conjunto de transferência no arquivo INI do analisador, mas o analisador não acessa os arquivos INI diretamente. Para usar as informações no conjunto de transferências, o analisador chama a função CreateHandoffTable para criar uma tabela de transferência. Normalmente, a tabela de transferência é criada quando o analisador registra o protocolo. Depois que o protocolo é registado, o Monitor de Rede cria uma tabela de conjuntos de transferência que o analisador pode usar.
O analisador usa o seu conjunto de delegação ao reconhecer dados. Primeiro, o analisador lê o valor da propriedade que identifica o próximo protocolo. Em seguida, o analisador chama o GetProtocolFromTable para obter um identificador para o próximo protocolo. Por último, o analisador retorna um ponteiro para o identificador no parâmetro phNextProtocol de RecognizeFrame.