+ /* Normalize name. This is cached, original is in client context. */
+ if (nickname) {
+ nicknamec = silc_identifier_check(nickname, strlen(nickname),
+ SILC_STRING_UTF8, 128, NULL);
+ if (!nicknamec)
+ return NULL;
+ }
+
+ /* Check username. */
+ if (username) {
+ char u[128 + 1], h[256 + 1];
+ int ret;
+
+ ret = silc_parse_userfqdn(username, u, sizeof(u), h, sizeof(h));
+ if (!ret)
+ return NULL;
+ if (!silc_identifier_verify(u, strlen(u), SILC_STRING_UTF8, 128))
+ return NULL;
+ if (ret > 1 && !silc_identifier_verify(h, strlen(h),
+ SILC_STRING_UTF8, 256))
+ return NULL;
+ }
+