0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-12-01 01:21:03 +01:00
mongodb/scripting/utils.cpp
2010-01-28 12:21:56 -05:00

37 lines
904 B
C++

// utils.cpp
#include "../stdafx.h"
#include "engine.h"
#include "../util/md5.hpp"
namespace mongo {
BSONObj jsmd5( const BSONObj &a ){
uassert( 10261 , "js md5 needs a string" , a.firstElement().type() == String );
const char * s = a.firstElement().valuestrsafe();
md5digest d;
md5_state_t st;
md5_init(&st);
md5_append( &st , (const md5_byte_t*)s , strlen( s ) );
md5_finish(&st, d);
return BSON( "" << digestToString( d ) );
}
BSONObj JSVersion( const BSONObj& args ){
cout << "version: " << versionString << endl;
if ( strstr( versionString , "+" ) )
printGitVersion();
return BSONObj();
}
void installGlobalUtils( Scope& scope ){
scope.injectNative( "hex_md5" , jsmd5 );
scope.injectNative( "version" , JSVersion );
}
}