diff options
Diffstat (limited to 'src/stringprep/stringprep.erl')
| -rw-r--r-- | src/stringprep/stringprep.erl | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/src/stringprep/stringprep.erl b/src/stringprep/stringprep.erl deleted file mode 100644 index eac3745b7..000000000 --- a/src/stringprep/stringprep.erl +++ /dev/null @@ -1,113 +0,0 @@ -%%%---------------------------------------------------------------------- -%%% File : stringprep.erl -%%% Author : Alexey Shchepin <alexey@process-one.net> -%%% Purpose : Interface to stringprep_drv -%%% Created : 16 Feb 2003 by Alexey Shchepin <alexey@proces-one.net> -%%% -%%% -%%% ejabberd, Copyright (C) 2002-2009 ProcessOne -%%% -%%% This program is free software; you can redistribute it and/or -%%% modify it under the terms of the GNU General Public License as -%%% published by the Free Software Foundation; either version 2 of the -%%% License, or (at your option) any later version. -%%% -%%% This program is distributed in the hope that it will be useful, -%%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%%% General Public License for more details. -%%% -%%% You should have received a copy of the GNU General Public License -%%% along with this program; if not, write to the Free Software -%%% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -%%% 02111-1307 USA -%%% -%%%---------------------------------------------------------------------- - --module(stringprep). --author('alexey@process-one.net'). - --behaviour(gen_server). - --export([start/0, start_link/0, - tolower/1, - nameprep/1, - nodeprep/1, - resourceprep/1]). - -%% Internal exports, call-back functions. --export([init/1, - handle_call/3, - handle_cast/2, - handle_info/2, - code_change/3, - terminate/2]). - --define(STRINGPREP_PORT, stringprep_port). - --define(NAMEPREP_COMMAND, 1). --define(NODEPREP_COMMAND, 2). --define(RESOURCEPREP_COMMAND, 3). - -start() -> - gen_server:start({local, ?MODULE}, ?MODULE, [], []). - -start_link() -> - gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). - -init([]) -> - case erl_ddll:load_driver(ejabberd:get_so_path(), stringprep_drv) of - ok -> ok; - {error, already_loaded} -> ok - end, - Port = open_port({spawn, stringprep_drv}, []), - register(?STRINGPREP_PORT, Port), - {ok, Port}. - - -%%% -------------------------------------------------------- -%%% The call-back functions. -%%% -------------------------------------------------------- - -handle_call(_, _, State) -> - {noreply, State}. - -handle_cast(_, State) -> - {noreply, State}. - -handle_info({'EXIT', Port, Reason}, Port) -> - {stop, {port_died, Reason}, Port}; -handle_info({'EXIT', _Pid, _Reason}, Port) -> - {noreply, Port}; -handle_info(_, State) -> - {noreply, State}. - -code_change(_OldVsn, State, _Extra) -> - {ok, State}. - -terminate(_Reason, Port) -> - Port ! {self, close}, - ok. - - - -tolower(String) -> - control(0, String). - -nameprep(String) -> - control(?NAMEPREP_COMMAND, String). - -nodeprep(String) -> - control(?NODEPREP_COMMAND, String). - -resourceprep(String) -> - control(?RESOURCEPREP_COMMAND, String). - -control(Command, String) -> - case port_control(?STRINGPREP_PORT, Command, String) of - [0 | _] -> error; - [1 | Res] -> Res - end. - - - |
