Sponsored Content
Operating Systems Linux Red Hat Print Spooling using raw port 9100 Post 302368694 by ZekesGarage on Thursday 5th of November 2009 10:52:04 AM
Old 11-05-2009
Print Spooling using raw port 9100

Hello all,
I need to setup a print server that listens on three separate network interfaces, and sends jobs to the corresponding print queue. Example:

192.168.69.100 - printer1 -> Out to 139.177.69.100:9100
192.168.69.101 - printer2 -> Out to 139.177.69.101:9100
192.168.69.102 - printer2 -> Out to 139.177.69 102:9100

Is there a way to have the printing system listen on a specific interface for a queue?

Also can I have the queue listen on port 9100 and just spool the raw data to be sent on to the printer?

The system I'm going to use is a RHEL5 system, but I can make it anything if I so desire.

The issue deals with a client application that can't be touched and currently prints directly to an HP jetdirect server. We are moving some infrastructure and due to some security directives, I'm required to build this intermediate box to spool the data, rather than just routing these jobs through the firewalls. (I've already fought the logic on this and lost, so don't get me started again :-))

Any insight is appreciated.

Shawn
 

8 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

HP-UX lp spooling places

Does anybody know if HP-UX uses any other directories besides /var/spool/lp/request to spool print jobs? I checked the man pages, and it only mentions /var/spool/lp in general. I was just wondering if anyone knew of some other place it might possibly use. thanks in advance for any help! (2 Replies)
Discussion started by: doeboy
2 Replies

2. UNIX for Dummies Questions & Answers

Any way to direct print job to a non-standard port?

Hello. I've been asked to add a few network print queues to our HP-UX box but they're not really destined for a printer. They're going to an Interface Engine queue (also Unix based I believe...) listening on ports in the 7000 range not the standard 9100, 9101, etc... printer ports. Couldn't find a... (0 Replies)
Discussion started by: HVHS_CJR
0 Replies

3. Shell Programming and Scripting

spooling

hi, can anyone help me with spool command.. i want to spool a file.. i am getting the output of an sql query into a file in the unix environment.. i want to spool the contents of this file to create a .lst file.. as of now, i am giving it like - sql.sql : spool on select... (4 Replies)
Discussion started by: kripssmart
4 Replies

4. Shell Programming and Scripting

spooling through shell script

Hi, I want to spool the output from a .sql file to a .txt file through shell script. the contents of .sql are: spool /arboru02/scripts/customer_profile_def.txt select profile_id ||','|| account_no from customer_profile_def; spool off exit and shell scrip is like: #!/bin/sh... (9 Replies)
Discussion started by: ss_ss
9 Replies

5. IP Networking

Creating a printer emulator to capture PDL/PCL data coming in on port 9100.

I have a number of Windows CE operator terminals. They have facility to print alarms/messages to ... aser or Inkjet (so they're using PCL). USB or IP. IP connection takes just the IP address. Question How could I create a service or daemon on a server to capture all this data?... (7 Replies)
Discussion started by: transistor
7 Replies

6. Shell Programming and Scripting

Spooling file to excel

Hi , Im spooling file from oracle to csv using shell script. Below is the code im using.. The o/p is not coming in right format.. Please help me out in this.. O/p is coming as header till batch id ,im not able to see date_stored,type,type1.. Please any one can give me some suggestion ... (1 Reply)
Discussion started by: jkumsi
1 Replies

7. Shell Programming and Scripting

Error during spooling

Hi, I am extracting the records of a table from oracle into a csv file using spool command in unix script. I retrieve the error message as msgcnt 18512 vxfs: mesg 001: vx_nospace - /dev/vg02/lvol12 file system full (1 block extent) How to resolve it ? (4 Replies)
Discussion started by: sabural
4 Replies

8. Solaris

How to find port number wwn of particular port on dual port HBA,?

please find the below o/p for your reference bash-3.00# fcinfo hba-port HBA Port WWN: 21000024ff295a34 OS Device Name: /dev/cfg/c2 Manufacturer: QLogic Corp. Model: 375-3356-02 Firmware Version: 05.03.02 FCode/BIOS Version: BIOS: 2.02; fcode: 2.01;... (3 Replies)
Discussion started by: sb200
3 Replies
XML::Smart::FAQ(3pm)					User Contributed Perl Documentation				      XML::Smart::FAQ(3pm)

NAME
XML::Smart::FAQ - Frequently Asked Questions about XML::Smart. SYNOPSIS
This is the Frequently Asked Questions list for XML::Smart. QUESTIONS
For new questions send an e-mail to the author, but please, read first all the F.A.Q. Do I need to install XML::Parser to can use XML::Smart? No! XML::Smart already comes with 2 independent parsers, XML::Smart::Parser and XML::Smart::HTMLParser. If XML::Parser is found XML::Smart will use it by default, and the 2nd options will be XML::Smart::Parser. Note that for complex parsing XML::Parser is recommended, but XML::Smart::Parser will work fine too. What is the best version of XML::Smart to install? Is always the last! Always take a look for new versions before aks for help on XML::Smart. Note that internally XML::Smart is complex, since the main idea of it is to remove the complexity from the hand of the programmer. Actually the idea is to enable the Perl programmer to use and create XML data without really know the XML format. Where can I learn about XML? http://www.xml.com How to apply a DTD to a XML::Smart object tree? Take a look in the method apply_dtd(). Example of use: $xml->apply_dtd(q` <!DOCTYPE cds [ <!ELEMENT cds (album+)> <!ATTLIST cds creator CDATA date CDATA #REQUIRED > <!ELEMENT album (artist , tracks+)> <!ELEMENT artist (#PCDATA)> <!ELEMENT tracks (#PCDATA)> ]> `); This will format automatically elements, attributes, etc... How XML::Smart works? To create XML::Smart, first I have created the module Object::MultiType. With it you can have an object that works at the same time as a HASH, ARRAY, SCALAR, CODE & GLOB. So you can do things like this with the same object: $obj = Object::MultiType->new() ; $obj->{key} ; $obj->[0] ; $obj->method ; @l = @{$obj} ; %h = %{$obj} ; &$obj(args) ; print $obj "send data " ; Seems to be crazy, and can be more if you use tie() inside it, and this is what XML::Smart does. For XML::Smart, the access in the Hash and Array way paste through tie(). In other words, you have a tied HASH and tied ARRAY inside it. This tied Hash and Array work together, soo you can access a Hash key as the index 0 of an Array, or access an index 0 as the Hash key: %hash = ( key => ['a','b','c'] ) ; $hash->{key} ## return $hash{key}[0] $hash->{key}[0] ## return $hash{key}[0] $hash->{key}[1] ## return $hash{key}[1] ## Inverse: %hash = ( key => 'a' ) ; $hash->{key} ## return $hash{key} $hash->{key}[0] ## return $hash{key} $hash->{key}[1] ## return undef The best thing of this new resource is to avoid wrong access to the data and warnings when you try to access a Hash having an Array (and the inverse). Thing that generally make the script die(). Once having an easy access to the data, you can use the same resource to create data! For example: ## Previous data: <hosts> <server address="192.168.2.100" os="linux" type="conectiva" version="9.0"/> </hosts> ## Now you have {address} as a normal key with a string inside: $XML->{hosts}{server}{address} ## And to add a new address, the key {address} need to be an ARRAY ref! ## So, XML::Smart make the convertion: ;-P $XML->{hosts}{server}{address}[1] = '192.168.2.101' ; ## Adding to a list that you don't know the size: push(@{$XML->{hosts}{server}{address}} , '192.168.2.102') ; ## The data now: <hosts> <server os="linux" type="conectiva" version="9.0"/> <address>192.168.2.100</address> <address>192.168.2.101</address> <address>192.168.2.102</address> </server> </hosts> Than after changing your XML tree using the Hash and Array resources you just get the data remade (through the Hash tree inside the object): my $xmldata = $XML->data ; But note that XML::Smart always return an object! Even when you get a final key. So this actually returns another object, pointhing (inside it) to the key: $addr = $XML->{hosts}{server}{address}[0] ; ## Since $addr is an object you can TRY to access more data: $addr->{foo}{bar} ; ## This doens't make warnings! just return UNDEF. ## But you can use it like a normal SCALAR too: print "$addr " ; $addr .= ':80' ; ## After this $addr isn't an object any more, just a SCALAR! When I generate the XML data new lines ( ) are added to the content! You should use the options for the method data() and save() to not add identation to the generated data: $XML->data( noident => 1 ) ; ## or better: $XML->data( nospace => 1 ) ; Your question is not here? Just send me an e-mail. ;-P AUTHOR
Graciliano M. P. <gm@virtuasites.com.br> I will appreciate any type of feedback (include your opinions and/or suggestions). ;-P Enjoy and thanks for who are enjoying this tool and have sent e-mails! ;-P ePod This document was written in ePod (easy-POD), than converted to POD, and from here you know the way. perl v5.10.1 2004-12-08 XML::Smart::FAQ(3pm)
All times are GMT -4. The time now is 07:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy