From: Pekka Riikonen Date: Fri, 18 Oct 2002 08:07:39 +0000 (+0000) Subject: Fixed /ATTR allow off to actually work. X-Git-Tag: silc.client.0.9.7~20 X-Git-Url: http://git.silcnet.org/gitweb/?a=commitdiff_plain;h=f3d0be838144ffd9a67f2e4d2c1a6070d192613b;p=silc.git Fixed /ATTR allow off to actually work. --- diff --git a/CHANGES b/CHANGES index 96a78a9a..aba27ff4 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,9 @@ Fri Oct 18 10:51:04 EEST 2002 Pekka Riikonen was processing wrong callback context. Affected files are lib/silcclient/client.c and protocol.c. + * Fixed the /ATTR allow off to actually work. Affected file + is irssi/src/silc/core/silc-queries.c. + Thu Oct 17 23:45:12 EEST 2002 Pekka Riikonen * Fixed string formatting crashbug in lib/silccore/silcattrs.c. diff --git a/apps/irssi/src/silc/core/silc-queries.c b/apps/irssi/src/silc/core/silc-queries.c index 65caad74..3b913ce9 100644 --- a/apps/irssi/src/silc/core/silc-queries.c +++ b/apps/irssi/src/silc/core/silc-queries.c @@ -261,6 +261,33 @@ void silc_query_attributes_default(SilcClient client, memset(&pk, 0, sizeof(pk)); memset(&vcard, 0, sizeof(vcard)); + allowed = settings_get_bool("attr_allow"); + if (!allowed) { + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_USER_INFO, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_SERVICE, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_STATUS_MOOD, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_STATUS_FREETEXT, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_STATUS_MESSAGE, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_PREFERRED_LANGUAGE, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_PREFERRED_CONTACT, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_TIMEZONE, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_GEOLOCATION, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_DEVICE_INFO, NULL); + silc_client_attribute_del(silc_client, conn, + SILC_ATTRIBUTE_USER_PUBLIC_KEY, NULL); + return; + } + sv = settings_get_str("attr_vcard"); if (sv && *sv) { /* Put USER_INFO */