示例#1
0
    def process(self, request_in, response_out):
        data_in = request_in.read()
        if not len(data_in):
            return
        request = IPPRequest(data=data_in)
        request.parse()

        response = IPPRequest(version=request.version,
                            operation_id=request.operation_id,
                            request_id=request.request_id)
        handler = getattr(self, "_operation_%d" % request.operation_id, None)

        response._operation_attributes = [[]]
        response._operation_attributes[0] = filter( \
            lambda x: x[0] in ('attributes-charset', 'attributes-natural-language', 'printer-uri','get-jobs'),
            request._operation_attributes[0])

        #f = file('/tmp/quickprint/printer2.log','a')
        #f.write("\n" + "*"*80 + "\n")
        #f.write(str(request))
        if handler is not None:
            response.setOperationId(handler(request, response))
            data_out = response.dump()
            response_out.write(data_out)
            response_test = IPPRequest(data=data_out)
            response_test.parse()
示例#2
0
    def process(self, request_in, response_out):
        data_in = request_in.read()
        if not len(data_in):
            return
        request = IPPRequest(data=data_in)
        request.parse()

        response = IPPRequest(version=request.version,
                            operation_id=request.operation_id,
                            request_id=request.request_id)
        handler = getattr(self, "_operation_%d" % request.operation_id, None)

        response._operation_attributes = [[]]
        response._operation_attributes[0] = filter( \
            lambda x: x[0] in ('attributes-charset', 'attributes-natural-language', 'printer-uri'),
            request._operation_attributes[0])

        # f = file('/tmp/quickprint/printer2.log','a')
        # f.write("\n" + "*"*80 + "\n")
        # f.write(str(request))
        if handler is not None:
            response.setOperationId(handler(request, response))
            data_out = response.dump()
            response_out.write(data_out)
            response_test = IPPRequest(data=data_out)
            response_test.parse()
示例#3
0
#!/usr/bin/env python
import cgitb

cgitb.enable()
# print "Content-type: application/ipp\n\n"
# print "Content-type: text/plain\n"
print "Content-type: text/html\n"

import os, sys
from ipplib import IPPRequest

# Parse and print a test file.
# f = file('/tmp/printer.txt','a')
req = IPPRequest(data=file("/tmp/quickprint/test.txt", "r").read())
req.parse()
print str(req)
# print req._operation_attributes
# print req._job_attributes
# print getattr(req, '_job_attributes')
# f.write(str(req))
# f.write("\n" + "*"*80 + "\n")
# f.close()