[PATCH 4/5] Allow client version to be specified.

Sergio Durigan Junior sergiodj en sergiodj.net
Lun Abr 24 13:39:29 UTC 2017


On Monday, April 24 2017, I wrote:

> On Thursday, April 20 2017, Thadeu Lima de Souza Cascardo wrote:
>
>> diff --git a/rnet_encode.c b/rnet_encode.c
>> index 3b522c3..7a744ae 100644
>> --- a/rnet_encode.c
>> +++ b/rnet_encode.c
>> @@ -1,5 +1,5 @@
>>  /*
>> - *  Copyright (C) 2013-2014  Thadeu Lima de Souza Cascardo <cascardo em minaslivre.org>
>> + *  Copyright (C) 2013-2017  Thadeu Lima de Souza Cascardo <cascardo em minaslivre.org>
>>   *  Copyright (C) 2014  Alexandre Oliva <lxoliva em fsfla.org>
>>   *
>>   *  This program is free software; you can redistribute it and/or modify
>> @@ -27,7 +27,7 @@
>>  #include "rnet_message.h"
>>  #include "decfile.h"
>>  
>> -int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg)
>> +int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg, char *client)
>>  {
>>  	int r = -EIO;
>>  
>> @@ -96,7 +96,10 @@ int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg)
>>  	r = rnet_message_add_ascii(msg, "versao_java", "1.5.0-gij;Free Software rnetclient pretending to be GNU Interpreter for Java");
>>  	r = rnet_message_add_ascii(msg, "origem", "JA2R");
>>  	r = rnet_message_add_ascii(msg, "so", "GNU");
>> -	r = rnet_message_add_ascii(msg, "cliente", "201704");
>> +	if (client)
>> +		r = rnet_message_add_ascii(msg, "cliente", client);
>> +	else
>> +		r = rnet_message_add_ascii(msg, "cliente", "201704");
>
> Corrija-me se eu estiver falando besteira, mas o "client version" pode
> ser igual à versão do rnetclient, certo?  Nesse caso, acho que
> compensaria usar PACKAGE_VERSION ao invés de "201704".  Evitaria ter que
> ficar atualizando esse valor todo ano.

Tá, acabei de ver que esse valor precisa ser "201704" pra esse ano.
Nesse caso, que tal criar um #define em algum lugar?  Aí dá pra fazer o
mesmo truque que você fez no patch que adiciona o --server: defina o
valor "padrão" na main, e faça o parse dos argumentos.  Você garante que
"client" vai ser sempre not NULL.

Enfim, só uma idéia pra melhorar um pouquinho o código.

-- 
Sergio
GPG key ID: 237A 54B1 0287 28BF 00EF  31F4 D0EB 7628 65FC 5E36
Please send encrypted e-mail if possible
http://sergiodj.net/


Más información sobre la lista de distribución Softwares-impostos