Annotation of ircnowd/src/ngircd/irc-encoding.c, Revision 1.1
1.1 ! tomglok 1: /*
! 2: * ngIRCd -- The Next Generation IRC Daemon
! 3: * Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors.
! 4: *
! 5: * This program is free software; you can redistribute it and/or modify
! 6: * it under the terms of the GNU General Public License as published by
! 7: * the Free Software Foundation; either version 2 of the License, or
! 8: * (at your option) any later version.
! 9: * Please read the file COPYING, README and AUTHORS for more information.
! 10: */
! 11:
! 12: #include "portab.h"
! 13:
! 14: /**
! 15: * @file
! 16: * IRC encoding commands
! 17: */
! 18:
! 19: #ifdef ICONV
! 20:
! 21: #include <assert.h>
! 22: #include <string.h>
! 23:
! 24: #include "conn-func.h"
! 25: #include "channel.h"
! 26: #include "conn-encoding.h"
! 27: #include "irc-write.h"
! 28: #include "messages.h"
! 29: #include "parse.h"
! 30: #include "tool.h"
! 31:
! 32: #include "irc-encoding.h"
! 33:
! 34: /**
! 35: * Handler for the IRC+ "CHARCONV" command.
! 36: *
! 37: * @param Client The client from which this command has been received.
! 38: * @param Req Request structure with prefix and all parameters.
! 39: * @returns CONNECTED or DISCONNECTED.
! 40: */
! 41: GLOBAL bool
! 42: IRC_CHARCONV(CLIENT *Client, REQUEST *Req)
! 43: {
! 44: char encoding[20];
! 45:
! 46: assert (Client != NULL);
! 47: assert (Req != NULL);
! 48:
! 49: strlcpy(encoding, Req->argv[0], sizeof(encoding));
! 50: ngt_UpperStr(encoding);
! 51:
! 52: if (!Conn_SetEncoding(Client_Conn(Client), encoding))
! 53: return IRC_WriteErrClient(Client, ERR_IP_CHARCONV_MSG,
! 54: Client_ID(Client), encoding);
! 55:
! 56: return IRC_WriteStrClient(Client, RPL_IP_CHARCONV_MSG,
! 57: Client_ID(Client), encoding);
! 58: } /* IRC_CHARCONV */
! 59:
! 60: #endif
! 61:
! 62: /* -eof- */
CVSweb