jnx64transcoder 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/jnx64transcoder.rb +44 -0
  3. metadata +58 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f8c6e0039554594cece13563c8d4510942440ccf
4
+ data.tar.gz: 61ad6341e365bca1f773dccee585c26594bf9a9f
5
+ SHA512:
6
+ metadata.gz: 0623e91cca43d020d7d6586df62e3e8f84c9f101778b5ff9a6b53279591d6b62dedc65764de801ab467e5f363696109550cf3ccdbd7bd944410b5f8853c371c3
7
+ data.tar.gz: ed8adbf03c0146f7be7deae31564c1dbf62648cbdcc49ead8225fabeeae21964c870b79f26db50e0161fdad3c7dc26c160670a2fcf112458fbc93193a4fa9bd8
@@ -0,0 +1,44 @@
1
+ require 'rubygems'
2
+ require 'ffi'
3
+
4
+ module Jnx
5
+ extend FFI::Library
6
+ begin
7
+ ffi_lib(["jnxc"])
8
+ rescue => e
9
+ puts e
10
+ puts "You're missing jnxlibc - get it from https://github.com/AlexsJones/jnxlibc"
11
+ puts "Try again once it's installed!"
12
+ end
13
+ functions = [
14
+ #base64 encoder
15
+ [:jnx_base64_encode,[:string,:int, :pointer], :string],
16
+ [:jnx_base64_decode,[:string,:int,:pointer], :string],
17
+ ]
18
+
19
+ functions.each do | func |
20
+ begin
21
+ attach_function(*func)
22
+ rescue Object => e
23
+ puts "Could not attach #{func}, #{e.message}"
24
+ end
25
+ end
26
+
27
+
28
+ end
29
+
30
+ class Jnx64Transcoder
31
+ def base64Encode(str)
32
+ len = str.length
33
+ olen = FFI::MemoryPointer.new :pointer
34
+ output = Jnx.jnx_base64_encode(str,len,olen)
35
+ return output
36
+ end
37
+ def base64Decode(str)
38
+ len = str.length
39
+ olen = FFI::MemoryPointer.new :pointer
40
+ output = Jnx.jnx_base64_decode(str,len,olen)
41
+ return output
42
+ end
43
+ end
44
+
metadata ADDED
@@ -0,0 +1,58 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jnx64transcoder
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - AlexsJones
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ffi
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ description: Encoding/Decoding to base64. Groovy baby!
28
+ email: jonesax@hush.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - lib/jnx64transcoder.rb
34
+ homepage: http://jonesax.com
35
+ licenses:
36
+ - GPLv3
37
+ metadata: {}
38
+ post_install_message:
39
+ rdoc_options: []
40
+ require_paths:
41
+ - lib
42
+ required_ruby_version: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ required_rubygems_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
52
+ requirements: []
53
+ rubyforge_project:
54
+ rubygems_version: 2.2.2
55
+ signing_key:
56
+ specification_version: 4
57
+ summary: jnx64transcoder
58
+ test_files: []